SlideShare a Scribd company logo
1 of 6
Download to read offline
Penetration Tool Berbasis Sistem Terdistribusi untuk
Analisa Vulnerability Pada Web Application
Aryya Dwisatya Widigdha 135120431
Program Studi Teknik Informatika
Sekolah Teknik Elektro dan Informatika
Institut Teknologi Bandung, Jl. Ganesha 10 Bandung 40132, Indonesia
1
13512043@std.stei.itb.ac.id
Abstrak— Dalam melakukan aksi taking-over website,
attacker diharuskan untuk mengetahui vulnerability yang
ada. Di sisi lain, seorang administrator pun harus
mengetahui vulnerability yang ada agar tidak ada attacker
yang dapat masuk ke dalam website tersebut. Salah satu
cara untuk mengetahui vulnerability tersebut adalah dengan
melakukan penetration testing. Sayangnya, penetration tool
yang ada sekarang bertumpu pada resource tester sehingga
untuk beban kerja yang berat, penetration testing menjadi
terkendala. Oleh karenanya diperlukan pendekatan sistem
terdistribusi.
Tulisan ini membahas konsep penetration
testing dan sistem terdistribusi secara umum sebagai
pendekatan pembangunan penetration tool serta
rancangan solusi berupa gambaran konseptual
terhadap perangkat lunak yang akan dikembangkan.
Kata kunci— Distributed System, Penetration testing,
Penetration tool.
I. PENDAHULUAN
Saat ini, website bukan lagi menjadi sebuah barang
mewah yang hanya dimiliki oleh kalangan dengan strata
sosial tertentu melainkan sudah dapat dimiliki oleh
berbagai kalangan baik perorangan, komunitas,
organisasi, maupun institusi. Kemurahan dan kemudahan
dalam memiliki dan membuat website ini menjadikan
jumlah website menjadi semakin banyak dan tidak dapat
terkendali.
Namun sayangnya, tidak semua pemilik website sadar
akan security dari website tersebut. Pada umumnya,
pemilik website tidak memedulikan urusan security karena
ketidaktahuan terhadap dampak dari lemahnya security
dan kurangnya kemampuan teknis untuk meningkatkan
kualitas security dari website yang dimilikinya.
Akibatnya, banyak dijumpai website yang dapat diakses,
tapi memiliki celah keamanan yang dapat digunakan oleh
attacker untuk melakukan take over.
Walaupun ketidaktahuan terhadap teknis cukup teratasi
dengan adanya beberapa tools untuk melakukan
penetration testing seperti Nikto, Acunetix, dan lain
sebagainya, tapi tetap saja dibutuhkan langkah-langkah
yang cukup panjang dan membingungkan bagi kalangan
non-IT untuk melakukan penetration testing. Selain itu,
keterbatasan resource dari pengguna dalam melakukan
penetration testing seperti koneksi internet dan waktu
menjadi kendala tersendiri. Hal inilah yang seringkali
membuat security tidak menjadi fokus utama hingga
sebuah insiden terjadi. Oleh karena hal tersebut maka
penulis merasa perlu adanya sebuah sistem yang mampu
memberikan laporan hasil penetration testing terhadap
website yang sederhana untuk pengguna non-IT.
Selain itu, penetration tools yang ada sekarang masih
bergantung pada resource yang dimiliki oleh pengguna
seperti koneksi internet dan hardware yang terpasang
sehingga tidak langsung membatasi pengguna dengan
resource yang tidak mencukupi. Oleh karena itu pula
diperlukan pendekatan lain dalam pembuatan penetration
tool yakni dengan pendekatan sistem terdistribusi.
II. KONSEP DASAR SISTEM TERDISTRIBUSI
Definisi Sistem Terdistribusi
Sistem terdistribusi atau distributed system merupakan
sebuah sistem yang terdiri atas komponen independen
namun menyediakan kesatuan layanan kepada
penggunanya. Seperti yang diungkapkan oleh Leslie
Lamport, “A distributed system is one in which the failure
of a computer you did not even know existed can render
your own computer unusable.” (IF3230-07-IntroSister-
2015 hal.2).
Karakteristik Sistem Terdistribusi
Suatu sistem disebut sistem terdistribusi ketika
memiliki beberapa karakteristik berikut:
1.Scalability
Scalability dapat diartikan sebagai kemampuan
sistem untuk tumbuh. Dalam hal ini, tumbuh
dimaksud sebagai kemampuan sistem untuk
menangani masalah yang terus bertambah.
2.Availability
Availability diartikan sebagai prosentase sistem
berada dalam kondisi yang berfungsi sebagai mana
mestinya. Dalam availability, terdapat beberapa
variasi prosentase availability terkait downtime per
tahun yakni:
 90% : downtime lebih dari satu bulan
 99% : downtime kurang dari 4 hari
 99.9% : downtime kurang dari 9 jam
 99.99% : downtime kurang dari 1 jam
 99.999% : downtime sekitar 5 menit
 99.9999% : downtime sekitar 31 detik
3.Transparency
Sistem terlihat tunggal oleh pengguna walaupun di
dalamnya terdapat banyak komponen yang saling
berhubungan.
4.Openness
Sistem dapat berfungsi sebagaimana mestinya dan
mudah untuk dilakukan penambahan perangkat
ketika dibutuhkan.
Hybrid Network Model
Dalam menyusun sebuah terdistribusi harus
dipertimbangkan model jaringan yang akan digunakan.
Salah satu model jaringan yang diperuntukkan untuk
sistem terdistribusi adalah Hybrid Model yang mana
setiap peer terhubung ke peer lain serta satu server pusat
yang berperan sebagai seorang koordinator. Adapun
semua beban pekerjaan dibebankan kepada peer
sedangkan pembagian resource diberikan oleh server
pusat. Arsitektur jaringan dapat dilihat pada Gambar 0-I
Hybrid Network Model.
Gambar I Hybird Network Model
Pada Hybrid Network Model, setiap server berperan
sebagai endpoint yang menyediakan service yang dapat
digunakan oleh pengguna. Setiap server dapat berdiri
sendiri dan membuat sistem berfungsi walaupun hanya
terdapat satu server. Perubahan jumlah server atau
endpoint dilakukan dalam langka meningkatkan
scalability dari sistem.
III. KONSEP DASAR PENETRATION TESTING
Definisi Penetration testing
Dalam bidang keamanan, dikenal istilah penetration
testing dengan penetration tester sebagai sebutan untuk
orang yang melakukannya. Penetration testing dapat
diartikan sebagai sebuah upaya untuk mendapatkan akses
ke resource tanpa memiliki pengetahuan terhadap
username, password, atau akses legal pada umumnya.
Biasanya, hasil akhir dari penetration testing adalah data-
data rahasia atau informasi yang tidak diperuntukkan
publik.
Berbeda dengan vulnerability assessment, penetration
testing mengedepankan tujuan untuk mendapatkan akses
sedangkan vulnerability assessment hanya berfokus
kepada pencarian vulnerability dari sebuah sistem.
Dengan kata lain dapat dikatakan bahwa penetration
testing adalah langkah lanjut dari vulnerability
assessment.
Mengapa Harus Melakukan Penetration testing
Ada banyak alasan mengapa penetration testing perlu
dilakukan. Namun, pada dasarnya penetration testing
dilakukan untuk menemukan celah keamanan sebelum
attacker menggunakan celah keamanan tersebut untuk
melakukan take over. Selain itu, alasan lain yang sering
ditemui terkait pelaksanaan penetration testing antara
lain:
1.Memverifikasi konfigurasi dari suatu sistem
2.Melakukan training
3.Melakukan uji coba terhadap teknologi baru
yang diterapkan pada suatu sistem.
Web Application Penetration testing
Dalam melakukan web application penetration testing
ada beberapa tahapan yang biasanya dilakukan. Tidak
hanya melakukan testing melainkan juga information
gathering. Berikut adalah tahapan yang biasa dilakukan
berdasarkan OWASP.
1. Information Gathering
2. Configuration Management Testing
3. Authentication Testing
4. Session Management Testing
5. Authorization Testing
6. Business Logic Testing
7. Data Validation Testing
8. Denial of Service Testing
9. Web Service Testing
10. Ajax Testing
IV. PEMBAHASAN
Rancangan Solusi
Adapun rancangan perangkat lunak yang diajukan
adalah sebagai berikut:
System Requirements
1. Sistem mampu melakukan pengecekan port yang
terbuka pada host target
2. Sistem mampu melakukan pengecekan
vulnerability terkait versi web application yang
digunakan
3. Sistem mampu melakukan pengecekan celah
keamanan RFI pada host target
4. Sistem mampu melakukan pengecekan celah
keamanan SQLi pada host target
5. Sistem mampu melakukan pengecekan celah
keamanan LFI pada host target
6. Sistem mampu membuat laporan hasil
pengecekan
7. Sistem mampu membuat rekomendasi terkait
celah keamanan yang ditemukan
8. Sistem mampu membuat laporan tren
vulnerability yang ada
9. Sistem menyediakan mekanisme penambahan
server
Arsitektur Jaringan
Gambar II Rancangan Arsitektur Jaringan
Jaringan yang diajukan sebagai solusi dari
permasalahan yang ada terdiri dari empat komponen
utama yakni tracker, server, end user, dan database.
Dalam hal ini, tracker akan menjadi koordinator dari
semua server dan menerima permintaan penetrasi dari
user dan mengalokasikan server tertentu untuk
melaksanakannya. Dengan demikian, akan terjadi load
balancing pada server yang ada. Selain itu, setiap server
memiliki fungsionalitas yang sama dan independen.
Perubahan jumlah server dilakukan guna meningkatkan
scalability dan availability dari sistem.
Dalam rancangan jaringan ini, digunakan dua buah
database yakni database lokal yang ada di setiap server
dan database global yang menyimpan semua data
kombinasi dari database local. Database dibagi menjadi
dua tipe dengan maksud agar terdapat database global
yang mencakup semua database yang ada sehingga dapat
dilihat tren vulnerable yang ada dengan lebih mudah
dengan cara memotong cost fetch data dari database lokal
tiap server serta sebagai antisipasi server mengalami
failure.
Fungsionalitas Komponen Jaringan
Tracker
1. Tracker mampu mendata semua server yang aktif
2. Tracker mampu melakukan logging terkait semua
request ke server
3. Tracker mampu berkomunikasi dengan semua
server yang terdaftar
4. Tracker mampu membuat laporan tren
vulnerability
Server
1. Server mampu berkomunikasi dengan
tracker
2. Server mampu berkomunikasi dengan server
lain
3. Server mampu mendaftarkan diri pada
tracker
4. Server mampu menghasilkan laporan
5.
6. Server mampu melakukan port scanning
7. Server mampu melakukan pengecekan
vulnerability terkait versi web application
yang digunakan
8. Server mampu melakukan pengecekan celah
keamanan SQLi pada host target
9. Server mampu melakukan pengecekan celah
keamanan LFI pada host target
10. Server mampu membuat rekomendasi terkait
celah keamanan yang ditemukan
Arsitektur Database
Table Server.Orders
Primary key: nomor
Keterangan: tabel Orders berisikan daftar pekerjaan yang
diberikan oleh tracker kepada server. Berupa antrian yang
harus dikerjakan oleh server.
No Nama Type Keterangan
1 Nomor Integer Autoincrement
2 Requester Varchar(15) Berisikan IP address
dari client
3 Type Int(2) Merepresentasikan
service yang diminta
oleh pengguna seperti
port scanning, lfi
scanning, sqli
scanning, dan lain nya
4 Email Varchar(64) Email address
pengguna sebagai
tujuan pengiriman
laporan.
5 Status Int(1) Merepresentasikan
status dari pekerjaan
yang masuk dalam
antrian yakni:
0 berarti belum
dikerjakan
1 berarti sedang
dikerjakan
9 sudah dikerjakan
dan dikirim
laporannya
6 Arrive_time Timestamp Tanda waktu order
diterima
7 Done_time Timestamp Tanda waktu order
selesai dikerjakan
Table Server.tracker_info
Primary key: ip
Keterangan : informasi tracker
No Nama Type Keterangan
1 No Integer Autoincrement
2 Ip Varchar(15) Berisikan IP address dari
client
3 Port Int Merepresentasikan service
yang diminta oleh pengguna
seperti port scanning, lfi
scanning, sqli scanning, dan
lain nya
Table Tracker.Orders
Primary key: nomor
Keterangan: tabel Order berisikan daftar pekerjaan yang
diterima oleh tracker dan alokasinya pada server
No Nama Type Keterangan
1 Nomor Int Autoincrement
2 Requester Varchar(15) Berisikan IP address
dari client
3 Type Int(2) Merepresentasikan
service yang diminta
oleh pengguna seperti
port scanning, lfi
scanning, sqli
scanning, dan lain nya
4 Email Varchar(64) Email address
pengguna sebagai
tujuan pengiriman
laporan.
5 Status Int(1) Merepresentasikan
status dari pekerjaan
yang masuk dalam
antrian yakni:
0 berarti belum
dikerjakan
1 berarti sedang
dikerjakan
9 sudah dikerjakan
dan dikirim
laporannya
6 Arrive_time Timestamp Tanda waktu order
diterima
7 Done_time Timestamp Tanda waktu order
selesai dikerjakan
8 Handler Int Berisikan id (prime
key) dari server yang
mengerjakan order
Table Tracker.Server
Primary key: nomor
Keterangan: tabel server berisikan informasi server yang
terdaftar pada tracker
No Nama Type Keterangan
1 Nomor Int Autoincrement
2 ip Varchar(15) Berisikan IP
address dari client
3 port Int(2) Berisikan port
yang digunakan
oleh server
4 status Int(1) Merepresentasikan
status dari server:
0 berarti tidak
aktif
1 berarti aktif
5 Registered_timestamp timestamp Berisikan waktu
awal server
terdaftar pada
tracker
Table Tracker.Logs
Primary key: id
Keterangan: tabel logs berisikan aksi-aksi yang dilakukan
oleh tracker seperti menerima request, meneruskan
request, CRUD database, dan lain-lain.
No Nama Type Keterangan
1 id Int Autoincrement
2 action Varchar(64) Berisikan aksi yang
dilakukan oleh tracker
3 Description Text Berisikan deskripsi
aksi yang dilakukan
seperti source dan
tujuan
4 timestamp Timestamp Merepresentasikan
waktu awal aksi
dilakukan
Protokol Komunikasi
Agar setiap komponen dapat berkomunikasi antara satu
dengan yang lain maka diperlukan sebuah aturan atau
yang biasa dikenal dengan protokol komunikasi. Dalam
hal ini, format JSON digunakan dalam protokol
komunikasi antara server dan tracker serta antar server.
Table 0-1 Spread Server List
Caller -
Format
pesan
{
“method”: “serverList”,
“list” :
[
{“ip” :
“192.168.0.32”,”port”:1337},
{“ip” :
“192.168.0.33”,”port”:1337}
]
}
Table 0-2 Format Join
Caller Server
Format
request
{
“method” : “join”,
“ip” : “192.168.0.32”,
“port” : 1337,
“key” : “123456789”
}
Format
respon sukses
{
“status” : “ok”,
“value” :
[
{“ip” :
“192.168.0.32”,”port”:1337},
{“ip” :
“192.168.0.33”,”port”:1337}
]
}
Format
respon gagal
{
“status” : “error”,
“description” : “error
description”
}
Table 0-3 Port Scanning
Caller Tracker
Format request {
“method” : “portscan”,
“target” : “www.bangsatya.com”,
}
Format respon
sukses
{
“status” : “ok”,
“method” : “portscan”,
“target” : “www.bangsatya.com”,
“value” :
[
{“port” :
80,”status”:”on”},
{“port” :
3306,”status”:”off”},
{“port” : 8080,
“status”: “off}
]
}
Format respon
gagal
{
“status” : “error”,
“description” : “error
description”
}
Table 0-4 CMS Scan
Caller Tracker
Format
request
{
“method” : “cmsscan”,
“target” : “www.bangsatya.com”,
}
Format
respon
sukses
{
“status” : “ok”,
“method” : “cmsscan”,
“target” : “www.bangsatya.com”,
“cms” : “wordpress”,
“vuln” :
[
{“plugin” : “Complete
Gallery Manager
3.3.3”,”status”:”safe”,”desc”:”-”},
{“plugin” : “Traffic
Analyzer”,”status”:”vuln”,”desc”:”
https://www.exploit-
db.com/exploits/36677/”},
]
}
Format
respon
gagal
{
“status” : “error”,
“description” : “error description”
}
Table 0-5 Web Server Scan
Caller Tracker
Format
request
{
“method” : “webserverscan”,
“target” : “www.bangsatya.com”,
}
Format
respon
sukses
{
“status” : “ok”,
“method” : “webserverscan”,
“target” : “www.bangsatya.com”,
“webserver” : “Apache 0.8.x”,
“vuln” :
[
{“name” : “test-cgi
Directory Listing Vulnerability”,”desc”:”
https://www.exploit-
db.com/exploits/36562/”}
]
}
Format
respon
gagal
{
“status” : “error”,
“description” : “error description”
}
Table 0-6 RFI Scan
Caller Tracker
Format
request
{
“method” : “rfiscan”,
“target” : “www.bangsatya.com”,
}
Format
respon
{
“status” : “ok”,
sukses “method” : “rfiscan”,
“target” : “www.bangsatya.com”,
“url” :
[
“www.bangsatya.com/page.php?open=”,
”www.bangsatya.com/file.php?open=”
]
}
Format
respon
gagal
{
“status” : “error”,
“description” : “error description”
}
Table 0-7 LFI Scan
Caller Tracker
Format
request
{
“method” : “lfiscan”,
“target” : “www.bangsatya.com”,
}
Format
respon
sukses
{
“status” : “ok”,
“method” : “lfiscan”,
“target” : “www.bangsatya.com”,
“url” :
[
“www.bangsatya.com/page.php?open=”,
”www.bangsatya.com/file.php?open=”
]
}
Format
respon
gagal
{
“status” : “error”,
“description” : “error description”
}
Table 0-8 SQL Injection Scan
Caller Tracker
Format
request
{
“method” : “sqliscan”,
“target” : “www.bangsatya.com”,
}
Format
respon
sukses
{
“status” : “ok”,
“method” : “sqliscan”,
“target” : “www.bangsatya.com”,
“url” :
[
“www.bangsatya.com/news.php?id=”,
”www.bangsatya.com/member.php?mid=”
]
}
Format
respon
gagal
{
“status” : “error”,
“description” : “error description”
}
V. KESIMPULAN
Dengan adanya penetration tool berbasis sistem
terdistribusi diharapkan keterbatasan penetration testing
menggunakan single komputer dapat diatasi terlebih
dengan adanya kemudahan penambahan host sehingga
scalability dari sistem terjamin. Dengan kata lain, jumlah
beban yang dapat ditangani berbanding lurus dengan
jumlah mesin yang dialokasikan. Selain itu, penetration
testing dapat semakin mudah dengan dapat dilakukan
secara remote dan konkuren.
REFERENSI
[1] OWASP Foundation.“OWASP TESTING GUIDE”.2008.
[2] Stephen Northcutt, Jerry Shenk, Dace Shackleford, Tim
Rosenberg, Raul Siles,, Steve Mancini.“Penetration Testing:
Assessing Your Overall Security Before Attackers Do”. 2006.
[3] Achmad Imam Kistijantoro, Afwarman Manaf. “IF3230 Sistem
Paralel dan Terdistribusi Intro Sistem Terdistribusi”. 2014.
PERNYATAAN
Dengan ini saya menyatakan bahwa makalah yang saya
tulis ini adalah tulisan saya sendiri, bukan saduran, atau
terjemahan dari makalah orang lain, dan bukan plagiasi.
Bandung, 7 Juli 2015
Aryya Dwisatya W

More Related Content

What's hot

Materi 4-keamanan-komputer-keamanan-sistem-operasi
Materi 4-keamanan-komputer-keamanan-sistem-operasiMateri 4-keamanan-komputer-keamanan-sistem-operasi
Materi 4-keamanan-komputer-keamanan-sistem-operasi
sulaiman yunus
 
ANALISIS DAN IMPLEMENTASI NETWORK SECURITY SYSTEM MENGGUNAKAN TEKNIK HOST-BAS...
ANALISIS DAN IMPLEMENTASI NETWORK SECURITY SYSTEM MENGGUNAKAN TEKNIK HOST-BAS...ANALISIS DAN IMPLEMENTASI NETWORK SECURITY SYSTEM MENGGUNAKAN TEKNIK HOST-BAS...
ANALISIS DAN IMPLEMENTASI NETWORK SECURITY SYSTEM MENGGUNAKAN TEKNIK HOST-BAS...
Mamay Syani
 
Mata Kuliah Keamanan Komputer
Mata Kuliah Keamanan KomputerMata Kuliah Keamanan Komputer
Mata Kuliah Keamanan Komputer
Dony Riyanto
 
Pengenalan keamanan sistem operasi
Pengenalan keamanan sistem operasiPengenalan keamanan sistem operasi
Pengenalan keamanan sistem operasi
rizqiariy
 
Budirahardjo (keamananJaringan)
Budirahardjo (keamananJaringan)Budirahardjo (keamananJaringan)
Budirahardjo (keamananJaringan)
Nurdin Al-Azies
 

What's hot (19)

Implementasi Sistem Pengamanan E-Commerce - Samsul Huda, Amang Sudarsono, Mik...
Implementasi Sistem Pengamanan E-Commerce - Samsul Huda, Amang Sudarsono, Mik...Implementasi Sistem Pengamanan E-Commerce - Samsul Huda, Amang Sudarsono, Mik...
Implementasi Sistem Pengamanan E-Commerce - Samsul Huda, Amang Sudarsono, Mik...
 
Rancang bangun sistem repository dokumen elektronik dengan menerapkan digita...
 Rancang bangun sistem repository dokumen elektronik dengan menerapkan digita... Rancang bangun sistem repository dokumen elektronik dengan menerapkan digita...
Rancang bangun sistem repository dokumen elektronik dengan menerapkan digita...
 
Materi 4-keamanan-komputer-keamanan-sistem-operasi
Materi 4-keamanan-komputer-keamanan-sistem-operasiMateri 4-keamanan-komputer-keamanan-sistem-operasi
Materi 4-keamanan-komputer-keamanan-sistem-operasi
 
ANALISIS DAN IMPLEMENTASI NETWORK SECURITY SYSTEM MENGGUNAKAN TEKNIK HOST-BAS...
ANALISIS DAN IMPLEMENTASI NETWORK SECURITY SYSTEM MENGGUNAKAN TEKNIK HOST-BAS...ANALISIS DAN IMPLEMENTASI NETWORK SECURITY SYSTEM MENGGUNAKAN TEKNIK HOST-BAS...
ANALISIS DAN IMPLEMENTASI NETWORK SECURITY SYSTEM MENGGUNAKAN TEKNIK HOST-BAS...
 
Keamanan Jaringan - Pertemuan 4
Keamanan Jaringan - Pertemuan 4Keamanan Jaringan - Pertemuan 4
Keamanan Jaringan - Pertemuan 4
 
Makalah Keamanan Jaringan Fandhi Gunawan
Makalah Keamanan Jaringan Fandhi GunawanMakalah Keamanan Jaringan Fandhi Gunawan
Makalah Keamanan Jaringan Fandhi Gunawan
 
Mata Kuliah Keamanan Komputer
Mata Kuliah Keamanan KomputerMata Kuliah Keamanan Komputer
Mata Kuliah Keamanan Komputer
 
Pendekatan secure by design pada cluster resource allocation untuk pusat data
Pendekatan secure by design pada cluster resource allocation untuk pusat dataPendekatan secure by design pada cluster resource allocation untuk pusat data
Pendekatan secure by design pada cluster resource allocation untuk pusat data
 
Keamanan jaringan
Keamanan jaringanKeamanan jaringan
Keamanan jaringan
 
Jeni slides j2 me-07-security
Jeni slides j2 me-07-securityJeni slides j2 me-07-security
Jeni slides j2 me-07-security
 
Achmad puariesthaufani nugroho. hapzi ali. KEAMANAN SISTEM INFORMASI. ut.2018
Achmad puariesthaufani nugroho. hapzi ali. KEAMANAN SISTEM INFORMASI. ut.2018Achmad puariesthaufani nugroho. hapzi ali. KEAMANAN SISTEM INFORMASI. ut.2018
Achmad puariesthaufani nugroho. hapzi ali. KEAMANAN SISTEM INFORMASI. ut.2018
 
Pengenalan keamanan sistem operasi
Pengenalan keamanan sistem operasiPengenalan keamanan sistem operasi
Pengenalan keamanan sistem operasi
 
(paper) Cryptographic and Software Based E-Money Security Holes
(paper) Cryptographic and Software Based E-Money Security Holes(paper) Cryptographic and Software Based E-Money Security Holes
(paper) Cryptographic and Software Based E-Money Security Holes
 
Anti forensic pada perangkat USB flashdisk
Anti forensic pada perangkat USB flashdiskAnti forensic pada perangkat USB flashdisk
Anti forensic pada perangkat USB flashdisk
 
Presentasi bab 12
Presentasi bab 12Presentasi bab 12
Presentasi bab 12
 
(paper) Implementasi Digital Signature pada E-Government
(paper) Implementasi Digital Signature pada E-Government(paper) Implementasi Digital Signature pada E-Government
(paper) Implementasi Digital Signature pada E-Government
 
CyberOps Associate Modul 21 Cryptography
CyberOps Associate Modul 21 CryptographyCyberOps Associate Modul 21 Cryptography
CyberOps Associate Modul 21 Cryptography
 
Budirahardjo (keamananJaringan)
Budirahardjo (keamananJaringan)Budirahardjo (keamananJaringan)
Budirahardjo (keamananJaringan)
 
CyberOps Associate Modul 24 Technologies and Protocols
CyberOps Associate Modul 24 Technologies and ProtocolsCyberOps Associate Modul 24 Technologies and Protocols
CyberOps Associate Modul 24 Technologies and Protocols
 

Viewers also liked

Viewers also liked (11)

Firmware hacking, slash the pineapple for fun
Firmware hacking, slash the pineapple for funFirmware hacking, slash the pineapple for fun
Firmware hacking, slash the pineapple for fun
 
Stolen e-money in 60sec - Tri Sumarno
Stolen e-money in 60sec - Tri SumarnoStolen e-money in 60sec - Tri Sumarno
Stolen e-money in 60sec - Tri Sumarno
 
Information Theft: Wireless Router Shareport for Phun and profit - Hero Suhar...
Information Theft: Wireless Router Shareport for Phun and profit - Hero Suhar...Information Theft: Wireless Router Shareport for Phun and profit - Hero Suhar...
Information Theft: Wireless Router Shareport for Phun and profit - Hero Suhar...
 
How to hack #IDSECCONF2014 ctf online challenge - nganggur
How to hack #IDSECCONF2014 ctf online challenge - nganggurHow to hack #IDSECCONF2014 ctf online challenge - nganggur
How to hack #IDSECCONF2014 ctf online challenge - nganggur
 
Write up idsecconf2015 online ctf
Write up idsecconf2015 online ctfWrite up idsecconf2015 online ctf
Write up idsecconf2015 online ctf
 
Various way of protecting your cloud server port - Abdullah
Various way of protecting your cloud server port - AbdullahVarious way of protecting your cloud server port - Abdullah
Various way of protecting your cloud server port - Abdullah
 
Rat malware android with raspberry pi server
Rat malware android with raspberry pi serverRat malware android with raspberry pi server
Rat malware android with raspberry pi server
 
Danang Jaya, Query Adika Rezylana - “Steganografi DCT dengan Memanfaatkan Apl...
Danang Jaya, Query Adika Rezylana - “Steganografi DCT dengan Memanfaatkan Apl...Danang Jaya, Query Adika Rezylana - “Steganografi DCT dengan Memanfaatkan Apl...
Danang Jaya, Query Adika Rezylana - “Steganografi DCT dengan Memanfaatkan Apl...
 
Agung Nugraha - “Layanan Certification Authority (CA), Document Signing and V...
Agung Nugraha - “Layanan Certification Authority (CA), Document Signing and V...Agung Nugraha - “Layanan Certification Authority (CA), Document Signing and V...
Agung Nugraha - “Layanan Certification Authority (CA), Document Signing and V...
 
B.Noviansyah - “National Public Key Infrastructure: Friend or Foe?"
B.Noviansyah - “National Public Key Infrastructure: Friend or Foe?"B.Noviansyah - “National Public Key Infrastructure: Friend or Foe?"
B.Noviansyah - “National Public Key Infrastructure: Friend or Foe?"
 
Muhammad Abrar Istiadi - “How to hack #IDSECCONF2016 ctf online challenge"
Muhammad Abrar Istiadi - “How to hack #IDSECCONF2016 ctf online challenge"Muhammad Abrar Istiadi - “How to hack #IDSECCONF2016 ctf online challenge"
Muhammad Abrar Istiadi - “How to hack #IDSECCONF2016 ctf online challenge"
 

Similar to Penetration tool berbasis sistem terdistribusi untuk analisa vulnerability pada web application

Tugas distribusi 1
Tugas distribusi 1Tugas distribusi 1
Tugas distribusi 1
Alam Skanzaz
 
Sistem terdistribusi (dhaa3)
Sistem terdistribusi (dhaa3)Sistem terdistribusi (dhaa3)
Sistem terdistribusi (dhaa3)
Mawaddah Warahmah
 
Sistem terdistribusasi
Sistem terdistribusasiSistem terdistribusasi
Sistem terdistribusasi
Irmha Surya
 

Similar to Penetration tool berbasis sistem terdistribusi untuk analisa vulnerability pada web application (20)

PUBLISH JURNAL MARZUKI HASIBUAN.pdf
PUBLISH JURNAL MARZUKI HASIBUAN.pdfPUBLISH JURNAL MARZUKI HASIBUAN.pdf
PUBLISH JURNAL MARZUKI HASIBUAN.pdf
 
Pengenalan Sistem Terdistribusi.pdf
Pengenalan Sistem Terdistribusi.pdfPengenalan Sistem Terdistribusi.pdf
Pengenalan Sistem Terdistribusi.pdf
 
Testing dan implementasi
Testing dan implementasiTesting dan implementasi
Testing dan implementasi
 
Sistem terdistribusi
Sistem terdistribusiSistem terdistribusi
Sistem terdistribusi
 
kualitas source code dan pengujian program
kualitas source code dan pengujian programkualitas source code dan pengujian program
kualitas source code dan pengujian program
 
Uts mppl (1)
Uts mppl (1)Uts mppl (1)
Uts mppl (1)
 
Sistem penyelesaian masalah IT
Sistem penyelesaian masalah ITSistem penyelesaian masalah IT
Sistem penyelesaian masalah IT
 
Sistem Terdistribusi.pptx
Sistem Terdistribusi.pptxSistem Terdistribusi.pptx
Sistem Terdistribusi.pptx
 
ETS - KAK
ETS - KAKETS - KAK
ETS - KAK
 
01. Membuat_Desain_Keamanan_Jaringan.pdf
01. Membuat_Desain_Keamanan_Jaringan.pdf01. Membuat_Desain_Keamanan_Jaringan.pdf
01. Membuat_Desain_Keamanan_Jaringan.pdf
 
RPL
RPLRPL
RPL
 
Tugas distribusi 1
Tugas distribusi 1Tugas distribusi 1
Tugas distribusi 1
 
Tugas 5 matkul rekayasa web 0317
Tugas 5 matkul rekayasa web 0317Tugas 5 matkul rekayasa web 0317
Tugas 5 matkul rekayasa web 0317
 
Sistem terdistribusi (dhaa3)
Sistem terdistribusi (dhaa3)Sistem terdistribusi (dhaa3)
Sistem terdistribusi (dhaa3)
 
Uts mppl
Uts mpplUts mppl
Uts mppl
 
Workshop 101 - Penetration testing & Vulnerability assessment system
Workshop 101 - Penetration testing & Vulnerability assessment systemWorkshop 101 - Penetration testing & Vulnerability assessment system
Workshop 101 - Penetration testing & Vulnerability assessment system
 
Tugas keamanan komputer 3
Tugas keamanan komputer 3Tugas keamanan komputer 3
Tugas keamanan komputer 3
 
Kerangka acuan kerja (kak) aplikasi pengajuan keluhan inspektorat
Kerangka acuan kerja (kak) aplikasi pengajuan keluhan inspektoratKerangka acuan kerja (kak) aplikasi pengajuan keluhan inspektorat
Kerangka acuan kerja (kak) aplikasi pengajuan keluhan inspektorat
 
Jurnal uts
Jurnal utsJurnal uts
Jurnal uts
 
Sistem terdistribusasi
Sistem terdistribusasiSistem terdistribusasi
Sistem terdistribusasi
 

More from idsecconf

More from idsecconf (20)

idsecconf2023 - Mochammad Riyan Firmansyah - Takeover Cloud Managed Router vi...
idsecconf2023 - Mochammad Riyan Firmansyah - Takeover Cloud Managed Router vi...idsecconf2023 - Mochammad Riyan Firmansyah - Takeover Cloud Managed Router vi...
idsecconf2023 - Mochammad Riyan Firmansyah - Takeover Cloud Managed Router vi...
 
idsecconf2023 - Neil Armstrong - Leveraging IaC for Stealthy Infrastructure A...
idsecconf2023 - Neil Armstrong - Leveraging IaC for Stealthy Infrastructure A...idsecconf2023 - Neil Armstrong - Leveraging IaC for Stealthy Infrastructure A...
idsecconf2023 - Neil Armstrong - Leveraging IaC for Stealthy Infrastructure A...
 
idsecconf2023 - Mangatas Tondang, Wahyu Nuryanto - Penerapan Model Detection ...
idsecconf2023 - Mangatas Tondang, Wahyu Nuryanto - Penerapan Model Detection ...idsecconf2023 - Mangatas Tondang, Wahyu Nuryanto - Penerapan Model Detection ...
idsecconf2023 - Mangatas Tondang, Wahyu Nuryanto - Penerapan Model Detection ...
 
idsecconf2023 - Rama Tri Nanda - Hacking Smart Doorbell.pdf
idsecconf2023 - Rama Tri Nanda - Hacking Smart Doorbell.pdfidsecconf2023 - Rama Tri Nanda - Hacking Smart Doorbell.pdf
idsecconf2023 - Rama Tri Nanda - Hacking Smart Doorbell.pdf
 
idsecconf2023 - Akshantula Neha, Mohammad Febri Ramadlan - Cyber Harmony Auto...
idsecconf2023 - Akshantula Neha, Mohammad Febri Ramadlan - Cyber Harmony Auto...idsecconf2023 - Akshantula Neha, Mohammad Febri Ramadlan - Cyber Harmony Auto...
idsecconf2023 - Akshantula Neha, Mohammad Febri Ramadlan - Cyber Harmony Auto...
 
idsecconf2023 - Aan Wahyu - Hide n seek with android app protections and beat...
idsecconf2023 - Aan Wahyu - Hide n seek with android app protections and beat...idsecconf2023 - Aan Wahyu - Hide n seek with android app protections and beat...
idsecconf2023 - Aan Wahyu - Hide n seek with android app protections and beat...
 
idsecconf2023 - Satria Ady Pradana - Launch into the Stratus-phere Adversary ...
idsecconf2023 - Satria Ady Pradana - Launch into the Stratus-phere Adversary ...idsecconf2023 - Satria Ady Pradana - Launch into the Stratus-phere Adversary ...
idsecconf2023 - Satria Ady Pradana - Launch into the Stratus-phere Adversary ...
 
Ali - The Journey-Hack Electron App Desktop (MacOS).pdf
Ali - The Journey-Hack Electron App Desktop (MacOS).pdfAli - The Journey-Hack Electron App Desktop (MacOS).pdf
Ali - The Journey-Hack Electron App Desktop (MacOS).pdf
 
Muh. Fani Akbar - Infiltrate Into Your AWS Cloud Environment Through Public E...
Muh. Fani Akbar - Infiltrate Into Your AWS Cloud Environment Through Public E...Muh. Fani Akbar - Infiltrate Into Your AWS Cloud Environment Through Public E...
Muh. Fani Akbar - Infiltrate Into Your AWS Cloud Environment Through Public E...
 
Rama Tri Nanda - NFC Hacking Hacking NFC Reverse Power Supply Padlock.pdf
Rama Tri Nanda - NFC Hacking Hacking NFC Reverse Power Supply Padlock.pdfRama Tri Nanda - NFC Hacking Hacking NFC Reverse Power Supply Padlock.pdf
Rama Tri Nanda - NFC Hacking Hacking NFC Reverse Power Supply Padlock.pdf
 
Arief Karfianto - Proposed Security Model for Protecting Patients Data in Ele...
Arief Karfianto - Proposed Security Model for Protecting Patients Data in Ele...Arief Karfianto - Proposed Security Model for Protecting Patients Data in Ele...
Arief Karfianto - Proposed Security Model for Protecting Patients Data in Ele...
 
Nosa Shandy - Clickjacking That Worthy-Google Bug Hunting Story.pdf
Nosa Shandy - Clickjacking That Worthy-Google Bug Hunting Story.pdfNosa Shandy - Clickjacking That Worthy-Google Bug Hunting Story.pdf
Nosa Shandy - Clickjacking That Worthy-Google Bug Hunting Story.pdf
 
Baskoro Adi Pratomo - Evaluasi Perlindungan Privasi Pengguna pada Aplikasi-Ap...
Baskoro Adi Pratomo - Evaluasi Perlindungan Privasi Pengguna pada Aplikasi-Ap...Baskoro Adi Pratomo - Evaluasi Perlindungan Privasi Pengguna pada Aplikasi-Ap...
Baskoro Adi Pratomo - Evaluasi Perlindungan Privasi Pengguna pada Aplikasi-Ap...
 
Utian Ayuba - Profiling The Cloud Crime.pdf
Utian Ayuba - Profiling The Cloud Crime.pdfUtian Ayuba - Profiling The Cloud Crime.pdf
Utian Ayuba - Profiling The Cloud Crime.pdf
 
Proactive cyber defence through adversary emulation for improving your securi...
Proactive cyber defence through adversary emulation for improving your securi...Proactive cyber defence through adversary emulation for improving your securi...
Proactive cyber defence through adversary emulation for improving your securi...
 
Perkembangan infrastruktur kunci publik di indonesia - Andika Triwidada
Perkembangan infrastruktur kunci publik di indonesia - Andika TriwidadaPerkembangan infrastruktur kunci publik di indonesia - Andika Triwidada
Perkembangan infrastruktur kunci publik di indonesia - Andika Triwidada
 
Pentesting react native application for fun and profit - Abdullah
Pentesting react native application for fun and profit - AbdullahPentesting react native application for fun and profit - Abdullah
Pentesting react native application for fun and profit - Abdullah
 
Hacking oximeter untuk membantu pasien covid19 di indonesia - Ryan fabella
Hacking oximeter untuk membantu pasien covid19 di indonesia - Ryan fabellaHacking oximeter untuk membantu pasien covid19 di indonesia - Ryan fabella
Hacking oximeter untuk membantu pasien covid19 di indonesia - Ryan fabella
 
Vm escape: case study virtualbox bug hunting and exploitation - Muhammad Alif...
Vm escape: case study virtualbox bug hunting and exploitation - Muhammad Alif...Vm escape: case study virtualbox bug hunting and exploitation - Muhammad Alif...
Vm escape: case study virtualbox bug hunting and exploitation - Muhammad Alif...
 
Devsecops: membangun kemampuan soc di dalam devsecops pipeline - Dedi Dwianto
Devsecops: membangun kemampuan soc di dalam devsecops pipeline - Dedi DwiantoDevsecops: membangun kemampuan soc di dalam devsecops pipeline - Dedi Dwianto
Devsecops: membangun kemampuan soc di dalam devsecops pipeline - Dedi Dwianto
 

Penetration tool berbasis sistem terdistribusi untuk analisa vulnerability pada web application

  • 1. Penetration Tool Berbasis Sistem Terdistribusi untuk Analisa Vulnerability Pada Web Application Aryya Dwisatya Widigdha 135120431 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung 40132, Indonesia 1 13512043@std.stei.itb.ac.id Abstrak— Dalam melakukan aksi taking-over website, attacker diharuskan untuk mengetahui vulnerability yang ada. Di sisi lain, seorang administrator pun harus mengetahui vulnerability yang ada agar tidak ada attacker yang dapat masuk ke dalam website tersebut. Salah satu cara untuk mengetahui vulnerability tersebut adalah dengan melakukan penetration testing. Sayangnya, penetration tool yang ada sekarang bertumpu pada resource tester sehingga untuk beban kerja yang berat, penetration testing menjadi terkendala. Oleh karenanya diperlukan pendekatan sistem terdistribusi. Tulisan ini membahas konsep penetration testing dan sistem terdistribusi secara umum sebagai pendekatan pembangunan penetration tool serta rancangan solusi berupa gambaran konseptual terhadap perangkat lunak yang akan dikembangkan. Kata kunci— Distributed System, Penetration testing, Penetration tool. I. PENDAHULUAN Saat ini, website bukan lagi menjadi sebuah barang mewah yang hanya dimiliki oleh kalangan dengan strata sosial tertentu melainkan sudah dapat dimiliki oleh berbagai kalangan baik perorangan, komunitas, organisasi, maupun institusi. Kemurahan dan kemudahan dalam memiliki dan membuat website ini menjadikan jumlah website menjadi semakin banyak dan tidak dapat terkendali. Namun sayangnya, tidak semua pemilik website sadar akan security dari website tersebut. Pada umumnya, pemilik website tidak memedulikan urusan security karena ketidaktahuan terhadap dampak dari lemahnya security dan kurangnya kemampuan teknis untuk meningkatkan kualitas security dari website yang dimilikinya. Akibatnya, banyak dijumpai website yang dapat diakses, tapi memiliki celah keamanan yang dapat digunakan oleh attacker untuk melakukan take over. Walaupun ketidaktahuan terhadap teknis cukup teratasi dengan adanya beberapa tools untuk melakukan penetration testing seperti Nikto, Acunetix, dan lain sebagainya, tapi tetap saja dibutuhkan langkah-langkah yang cukup panjang dan membingungkan bagi kalangan non-IT untuk melakukan penetration testing. Selain itu, keterbatasan resource dari pengguna dalam melakukan penetration testing seperti koneksi internet dan waktu menjadi kendala tersendiri. Hal inilah yang seringkali membuat security tidak menjadi fokus utama hingga sebuah insiden terjadi. Oleh karena hal tersebut maka penulis merasa perlu adanya sebuah sistem yang mampu memberikan laporan hasil penetration testing terhadap website yang sederhana untuk pengguna non-IT. Selain itu, penetration tools yang ada sekarang masih bergantung pada resource yang dimiliki oleh pengguna seperti koneksi internet dan hardware yang terpasang sehingga tidak langsung membatasi pengguna dengan resource yang tidak mencukupi. Oleh karena itu pula diperlukan pendekatan lain dalam pembuatan penetration tool yakni dengan pendekatan sistem terdistribusi. II. KONSEP DASAR SISTEM TERDISTRIBUSI Definisi Sistem Terdistribusi Sistem terdistribusi atau distributed system merupakan sebuah sistem yang terdiri atas komponen independen namun menyediakan kesatuan layanan kepada penggunanya. Seperti yang diungkapkan oleh Leslie Lamport, “A distributed system is one in which the failure of a computer you did not even know existed can render your own computer unusable.” (IF3230-07-IntroSister- 2015 hal.2). Karakteristik Sistem Terdistribusi Suatu sistem disebut sistem terdistribusi ketika memiliki beberapa karakteristik berikut: 1.Scalability Scalability dapat diartikan sebagai kemampuan sistem untuk tumbuh. Dalam hal ini, tumbuh dimaksud sebagai kemampuan sistem untuk menangani masalah yang terus bertambah. 2.Availability Availability diartikan sebagai prosentase sistem berada dalam kondisi yang berfungsi sebagai mana mestinya. Dalam availability, terdapat beberapa variasi prosentase availability terkait downtime per tahun yakni:  90% : downtime lebih dari satu bulan  99% : downtime kurang dari 4 hari
  • 2.  99.9% : downtime kurang dari 9 jam  99.99% : downtime kurang dari 1 jam  99.999% : downtime sekitar 5 menit  99.9999% : downtime sekitar 31 detik 3.Transparency Sistem terlihat tunggal oleh pengguna walaupun di dalamnya terdapat banyak komponen yang saling berhubungan. 4.Openness Sistem dapat berfungsi sebagaimana mestinya dan mudah untuk dilakukan penambahan perangkat ketika dibutuhkan. Hybrid Network Model Dalam menyusun sebuah terdistribusi harus dipertimbangkan model jaringan yang akan digunakan. Salah satu model jaringan yang diperuntukkan untuk sistem terdistribusi adalah Hybrid Model yang mana setiap peer terhubung ke peer lain serta satu server pusat yang berperan sebagai seorang koordinator. Adapun semua beban pekerjaan dibebankan kepada peer sedangkan pembagian resource diberikan oleh server pusat. Arsitektur jaringan dapat dilihat pada Gambar 0-I Hybrid Network Model. Gambar I Hybird Network Model Pada Hybrid Network Model, setiap server berperan sebagai endpoint yang menyediakan service yang dapat digunakan oleh pengguna. Setiap server dapat berdiri sendiri dan membuat sistem berfungsi walaupun hanya terdapat satu server. Perubahan jumlah server atau endpoint dilakukan dalam langka meningkatkan scalability dari sistem. III. KONSEP DASAR PENETRATION TESTING Definisi Penetration testing Dalam bidang keamanan, dikenal istilah penetration testing dengan penetration tester sebagai sebutan untuk orang yang melakukannya. Penetration testing dapat diartikan sebagai sebuah upaya untuk mendapatkan akses ke resource tanpa memiliki pengetahuan terhadap username, password, atau akses legal pada umumnya. Biasanya, hasil akhir dari penetration testing adalah data- data rahasia atau informasi yang tidak diperuntukkan publik. Berbeda dengan vulnerability assessment, penetration testing mengedepankan tujuan untuk mendapatkan akses sedangkan vulnerability assessment hanya berfokus kepada pencarian vulnerability dari sebuah sistem. Dengan kata lain dapat dikatakan bahwa penetration testing adalah langkah lanjut dari vulnerability assessment. Mengapa Harus Melakukan Penetration testing Ada banyak alasan mengapa penetration testing perlu dilakukan. Namun, pada dasarnya penetration testing dilakukan untuk menemukan celah keamanan sebelum attacker menggunakan celah keamanan tersebut untuk melakukan take over. Selain itu, alasan lain yang sering ditemui terkait pelaksanaan penetration testing antara lain: 1.Memverifikasi konfigurasi dari suatu sistem 2.Melakukan training 3.Melakukan uji coba terhadap teknologi baru yang diterapkan pada suatu sistem. Web Application Penetration testing Dalam melakukan web application penetration testing ada beberapa tahapan yang biasanya dilakukan. Tidak hanya melakukan testing melainkan juga information gathering. Berikut adalah tahapan yang biasa dilakukan berdasarkan OWASP. 1. Information Gathering 2. Configuration Management Testing 3. Authentication Testing 4. Session Management Testing 5. Authorization Testing 6. Business Logic Testing 7. Data Validation Testing 8. Denial of Service Testing 9. Web Service Testing 10. Ajax Testing IV. PEMBAHASAN Rancangan Solusi Adapun rancangan perangkat lunak yang diajukan adalah sebagai berikut: System Requirements 1. Sistem mampu melakukan pengecekan port yang terbuka pada host target 2. Sistem mampu melakukan pengecekan vulnerability terkait versi web application yang digunakan 3. Sistem mampu melakukan pengecekan celah keamanan RFI pada host target 4. Sistem mampu melakukan pengecekan celah keamanan SQLi pada host target 5. Sistem mampu melakukan pengecekan celah keamanan LFI pada host target
  • 3. 6. Sistem mampu membuat laporan hasil pengecekan 7. Sistem mampu membuat rekomendasi terkait celah keamanan yang ditemukan 8. Sistem mampu membuat laporan tren vulnerability yang ada 9. Sistem menyediakan mekanisme penambahan server Arsitektur Jaringan Gambar II Rancangan Arsitektur Jaringan Jaringan yang diajukan sebagai solusi dari permasalahan yang ada terdiri dari empat komponen utama yakni tracker, server, end user, dan database. Dalam hal ini, tracker akan menjadi koordinator dari semua server dan menerima permintaan penetrasi dari user dan mengalokasikan server tertentu untuk melaksanakannya. Dengan demikian, akan terjadi load balancing pada server yang ada. Selain itu, setiap server memiliki fungsionalitas yang sama dan independen. Perubahan jumlah server dilakukan guna meningkatkan scalability dan availability dari sistem. Dalam rancangan jaringan ini, digunakan dua buah database yakni database lokal yang ada di setiap server dan database global yang menyimpan semua data kombinasi dari database local. Database dibagi menjadi dua tipe dengan maksud agar terdapat database global yang mencakup semua database yang ada sehingga dapat dilihat tren vulnerable yang ada dengan lebih mudah dengan cara memotong cost fetch data dari database lokal tiap server serta sebagai antisipasi server mengalami failure. Fungsionalitas Komponen Jaringan Tracker 1. Tracker mampu mendata semua server yang aktif 2. Tracker mampu melakukan logging terkait semua request ke server 3. Tracker mampu berkomunikasi dengan semua server yang terdaftar 4. Tracker mampu membuat laporan tren vulnerability Server 1. Server mampu berkomunikasi dengan tracker 2. Server mampu berkomunikasi dengan server lain 3. Server mampu mendaftarkan diri pada tracker 4. Server mampu menghasilkan laporan 5. 6. Server mampu melakukan port scanning 7. Server mampu melakukan pengecekan vulnerability terkait versi web application yang digunakan 8. Server mampu melakukan pengecekan celah keamanan SQLi pada host target 9. Server mampu melakukan pengecekan celah keamanan LFI pada host target 10. Server mampu membuat rekomendasi terkait celah keamanan yang ditemukan Arsitektur Database Table Server.Orders Primary key: nomor Keterangan: tabel Orders berisikan daftar pekerjaan yang diberikan oleh tracker kepada server. Berupa antrian yang harus dikerjakan oleh server. No Nama Type Keterangan 1 Nomor Integer Autoincrement 2 Requester Varchar(15) Berisikan IP address dari client 3 Type Int(2) Merepresentasikan service yang diminta oleh pengguna seperti port scanning, lfi scanning, sqli scanning, dan lain nya 4 Email Varchar(64) Email address pengguna sebagai tujuan pengiriman laporan. 5 Status Int(1) Merepresentasikan status dari pekerjaan yang masuk dalam antrian yakni: 0 berarti belum dikerjakan 1 berarti sedang dikerjakan 9 sudah dikerjakan dan dikirim laporannya 6 Arrive_time Timestamp Tanda waktu order diterima
  • 4. 7 Done_time Timestamp Tanda waktu order selesai dikerjakan Table Server.tracker_info Primary key: ip Keterangan : informasi tracker No Nama Type Keterangan 1 No Integer Autoincrement 2 Ip Varchar(15) Berisikan IP address dari client 3 Port Int Merepresentasikan service yang diminta oleh pengguna seperti port scanning, lfi scanning, sqli scanning, dan lain nya Table Tracker.Orders Primary key: nomor Keterangan: tabel Order berisikan daftar pekerjaan yang diterima oleh tracker dan alokasinya pada server No Nama Type Keterangan 1 Nomor Int Autoincrement 2 Requester Varchar(15) Berisikan IP address dari client 3 Type Int(2) Merepresentasikan service yang diminta oleh pengguna seperti port scanning, lfi scanning, sqli scanning, dan lain nya 4 Email Varchar(64) Email address pengguna sebagai tujuan pengiriman laporan. 5 Status Int(1) Merepresentasikan status dari pekerjaan yang masuk dalam antrian yakni: 0 berarti belum dikerjakan 1 berarti sedang dikerjakan 9 sudah dikerjakan dan dikirim laporannya 6 Arrive_time Timestamp Tanda waktu order diterima 7 Done_time Timestamp Tanda waktu order selesai dikerjakan 8 Handler Int Berisikan id (prime key) dari server yang mengerjakan order Table Tracker.Server Primary key: nomor Keterangan: tabel server berisikan informasi server yang terdaftar pada tracker No Nama Type Keterangan 1 Nomor Int Autoincrement 2 ip Varchar(15) Berisikan IP address dari client 3 port Int(2) Berisikan port yang digunakan oleh server 4 status Int(1) Merepresentasikan status dari server: 0 berarti tidak aktif 1 berarti aktif 5 Registered_timestamp timestamp Berisikan waktu awal server terdaftar pada tracker Table Tracker.Logs Primary key: id Keterangan: tabel logs berisikan aksi-aksi yang dilakukan oleh tracker seperti menerima request, meneruskan request, CRUD database, dan lain-lain. No Nama Type Keterangan 1 id Int Autoincrement 2 action Varchar(64) Berisikan aksi yang dilakukan oleh tracker 3 Description Text Berisikan deskripsi aksi yang dilakukan seperti source dan tujuan 4 timestamp Timestamp Merepresentasikan waktu awal aksi dilakukan Protokol Komunikasi Agar setiap komponen dapat berkomunikasi antara satu dengan yang lain maka diperlukan sebuah aturan atau yang biasa dikenal dengan protokol komunikasi. Dalam hal ini, format JSON digunakan dalam protokol komunikasi antara server dan tracker serta antar server. Table 0-1 Spread Server List Caller - Format pesan { “method”: “serverList”, “list” : [ {“ip” : “192.168.0.32”,”port”:1337}, {“ip” :
  • 5. “192.168.0.33”,”port”:1337} ] } Table 0-2 Format Join Caller Server Format request { “method” : “join”, “ip” : “192.168.0.32”, “port” : 1337, “key” : “123456789” } Format respon sukses { “status” : “ok”, “value” : [ {“ip” : “192.168.0.32”,”port”:1337}, {“ip” : “192.168.0.33”,”port”:1337} ] } Format respon gagal { “status” : “error”, “description” : “error description” } Table 0-3 Port Scanning Caller Tracker Format request { “method” : “portscan”, “target” : “www.bangsatya.com”, } Format respon sukses { “status” : “ok”, “method” : “portscan”, “target” : “www.bangsatya.com”, “value” : [ {“port” : 80,”status”:”on”}, {“port” : 3306,”status”:”off”}, {“port” : 8080, “status”: “off} ] } Format respon gagal { “status” : “error”, “description” : “error description” } Table 0-4 CMS Scan Caller Tracker Format request { “method” : “cmsscan”, “target” : “www.bangsatya.com”, } Format respon sukses { “status” : “ok”, “method” : “cmsscan”, “target” : “www.bangsatya.com”, “cms” : “wordpress”, “vuln” : [ {“plugin” : “Complete Gallery Manager 3.3.3”,”status”:”safe”,”desc”:”-”}, {“plugin” : “Traffic Analyzer”,”status”:”vuln”,”desc”:” https://www.exploit- db.com/exploits/36677/”}, ] } Format respon gagal { “status” : “error”, “description” : “error description” } Table 0-5 Web Server Scan Caller Tracker Format request { “method” : “webserverscan”, “target” : “www.bangsatya.com”, } Format respon sukses { “status” : “ok”, “method” : “webserverscan”, “target” : “www.bangsatya.com”, “webserver” : “Apache 0.8.x”, “vuln” : [ {“name” : “test-cgi Directory Listing Vulnerability”,”desc”:” https://www.exploit- db.com/exploits/36562/”} ] } Format respon gagal { “status” : “error”, “description” : “error description” } Table 0-6 RFI Scan Caller Tracker Format request { “method” : “rfiscan”, “target” : “www.bangsatya.com”, } Format respon { “status” : “ok”,
  • 6. sukses “method” : “rfiscan”, “target” : “www.bangsatya.com”, “url” : [ “www.bangsatya.com/page.php?open=”, ”www.bangsatya.com/file.php?open=” ] } Format respon gagal { “status” : “error”, “description” : “error description” } Table 0-7 LFI Scan Caller Tracker Format request { “method” : “lfiscan”, “target” : “www.bangsatya.com”, } Format respon sukses { “status” : “ok”, “method” : “lfiscan”, “target” : “www.bangsatya.com”, “url” : [ “www.bangsatya.com/page.php?open=”, ”www.bangsatya.com/file.php?open=” ] } Format respon gagal { “status” : “error”, “description” : “error description” } Table 0-8 SQL Injection Scan Caller Tracker Format request { “method” : “sqliscan”, “target” : “www.bangsatya.com”, } Format respon sukses { “status” : “ok”, “method” : “sqliscan”, “target” : “www.bangsatya.com”, “url” : [ “www.bangsatya.com/news.php?id=”, ”www.bangsatya.com/member.php?mid=” ] } Format respon gagal { “status” : “error”, “description” : “error description” } V. KESIMPULAN Dengan adanya penetration tool berbasis sistem terdistribusi diharapkan keterbatasan penetration testing menggunakan single komputer dapat diatasi terlebih dengan adanya kemudahan penambahan host sehingga scalability dari sistem terjamin. Dengan kata lain, jumlah beban yang dapat ditangani berbanding lurus dengan jumlah mesin yang dialokasikan. Selain itu, penetration testing dapat semakin mudah dengan dapat dilakukan secara remote dan konkuren. REFERENSI [1] OWASP Foundation.“OWASP TESTING GUIDE”.2008. [2] Stephen Northcutt, Jerry Shenk, Dace Shackleford, Tim Rosenberg, Raul Siles,, Steve Mancini.“Penetration Testing: Assessing Your Overall Security Before Attackers Do”. 2006. [3] Achmad Imam Kistijantoro, Afwarman Manaf. “IF3230 Sistem Paralel dan Terdistribusi Intro Sistem Terdistribusi”. 2014. PERNYATAAN Dengan ini saya menyatakan bahwa makalah yang saya tulis ini adalah tulisan saya sendiri, bukan saduran, atau terjemahan dari makalah orang lain, dan bukan plagiasi. Bandung, 7 Juli 2015 Aryya Dwisatya W