45
Bab 4
Hasil dan Pembahasan
4.1
Hasil Sistem Jaringan
Pada tahap implementasi sistem, dilakukan konfigurasi sistem pada laptop yang digunakan sebagai IDS Snort. Selain itu, dilakukan pula konfigurasi dasar dan port mirroring pada router Mikrotik. Sistem IDS Snort ini nantinya akan dikenai serangan sesuai dengan skenario yang ada dalam penelitian. Dari hasil penyerangan tersebut nantinya akan dihasilkan alerts yang disimpan di file log Snort. Selanjutnya file log Snort yang dihasilkan akan diambil dan diteliti untuk kemudian dilakukan proses investigasi agar sumber serangan dapat diketahui. Dalam melakukan investigasi juga akan meneliti data yang dihasilkan Squid access log. File access log digunakan untuk menguatkan bukti adanya penyusupan dan menangani bilamana ada kasus false negative pada IDS Snort.
46
Gambar 4.1 merupakan topologi jaringan IDS Snort lengkap dengan IP address yang digunakan oleh masing-masing perangkat.
Router Mikrotik berfungsi sebagai penghubung diantara segmen jaringan yang berbeda. Pada Mikrotik, eth1 dengan IP 192.168.1.100 terhubung dengan modem ADSL Speedy, eth2 dengan IP 192.168.2.1 terhubung dengan IDS Snort dan eth3 dengan IP 192.168.0.1 terhubung dengan jaringan lokal. Sesuai dengan skenario pengujian yang ada pada Bab 3, akan dilakukan serangan dari jaringan lokal.
4.2
Pengujian Sistem Jaringan
Dalam mendeteksi serangan, IDS Snort bekerja sesuai dengan
signature yang ada pada rules Snort. Artinya IDS Snort hanya akan bekerja jika pola serangan yang masuk sesuai dengan pola atau
47
Gambar 4.2 Rules Default SQL Injection
Gambar 4.2 merupakan rules default dari SQL Injection. Rule default tersebut belum bisa mendeteksi serangan sesuai dengan skenario yang dilakukan, maka akan ditambahkan beberapa rules
sehingga serangan yang masuk dapat dideteksi oleh IDS Snort.
Rule 1
alert tcp $EXTERNAL_NET any -> $HOME_NET
$HTTP_PORTS (msg:"SQL union select - possible sql injection"; content:"union"; fast_pattern; nocase; http_uri; content:"select"; nocase; http_uri; pcre:"/union\s+(all\s+)?select\s+/Ui";
metadata:policy security-ips drop; classtype:misc-attack; sid:1399000; rev:11;)
Rule tersebut digunakan untuk mendeteksi serangan SQL
48
tujuan HTTP_PORTS, dan dengan payload content mengandung kata union select, maka Snort akan menganggap trafik data ini sebagai serangan. Selanjutnya Snort akan menampilkan alert sesuai
message yang ada pada rule, yaitu “SQL union select - possible sql
injection”.
Rule 2
alert tcp $EXTERNAL_NET any -> $HOME_NET $HTTP_PORTS (msg:"Cross Site Scripting Attempt";
flow:to_server, established; content:"<script>"; fast_pattern:only; nocase; http_uri;
pcre:"/((\%3C)|<)((\%2F)|\/)*[a-z0-9\%]+((\%3E)|>)/i"; reference:url,ha.ckers.org/xss.html; classtype:web-application-attack; sid:2009714; rev:6)
Rule tersebut digunakan untuk mendeteksi serangan Cross Site Scripting (XSS), bilamana ada trafik data dari jaringan EXTERNAL_NET dari port berapa pun menuju ke jaringan HOME_NET dengan port tujuan HTTP_PORTS, dan dengan
49
Gambar 4.3 Rules Pada Local.rules
Gambar 4.3 merupakan rules baru yang telah ditambahkan ke dalam rules Snort. Penambahan rules baru dilakukan pada
local.rules supaya lebih mudah dalam mengelolanya. Selanjutnya IDS Snort perlu dilakukan proses restart supaya Snort me-load
ulang konfigurasinya sehingga rules yang baru saja ditambahkan dapat bekerja jika ada serangan yang polanya sesuai dengan rules
tersebut.
4.2.1Serangan SQL Injection
SQL Injection merupakan sebuah teknik serangan yang memanfaatkan celah keamanan pada sisi website yang mengizinkan
50
kode-kode SQL untuk mendapatkan informasi dan akses ke
database server. Dampak yang ditimbulkan jika serangan ini tidak segera terdeteksi adalah memungkinkan seorang attacker dapat login
ke dalam sistem tanpa harus memiliki account. Selain itu, attacker
juga dapat mengubah, menghapus, maupun menambahkan data yang berada dalam database. Lebih parah lagi jika sampai mematikan
database itu sendiri, sehingga database tidak bisa memberikan layanan kepada web server.
Gambar 4.4 Serangan SQL Injection dengan Havij
Gambar 4.4 merupakan skenario serangan SQL Injection yang dilakukan dari jaringan lokal melalui sebuah laptop menggunakan
51
terhadap serangan SQL Injection. Setelah URL website dimasukkan, kemudian attacker tinggal meng-click tombol analyze untuk melakukan serangan. Dampak dari serangan ini, attacker bisa mendapatkan data-data penting dari website yang diserang. Adapun pada IDS Snort, (Gambar 4.5) akan muncul alerts yang kemudian akan disimpan pada file log. File log yang dihasilkan ini akan dikumpulkan untuk diteliti dan diperiksa lebih lanjut sebagai bukti adanya penyusupan.
Gambar 4.5 Alert pada IDS Snort
4.2.2Serangan Cross Site Scripting (XSS)
Cross Site Scripting (XSS) merupakan salah satu jenis serangan injeksi code (code injection attack). XSS dilakukan oleh
attacker dengan cara memasukkan kode HTML atau client script code lainnya ke suatu situs. Serangan ini akan seolah-olah datang dari situs tersebut. Dampak dari serangan ini jika tidak segera dideteksi antara lain: attacker dapat mem-bypass keamanan di sisi
client, mendapatkan informasi sensitif, mendapatkan cookie dari
52
Gambar 4.6 Cross Site Scripting (XSS)
Gambar 4.6 merupakan skenario serangan Cross Site Scripting
(XSS) menggunakan web Damn Vulnerability Web Aplication
(DVWA) yang sebelumnya telah dipersiapkan. Website tersebut ditanam di IP public dengan alamat 103.26.128.84/Web. Dalam skenario attacker mengakses alamat 103.26.128.84/Web, kemudian
attacker akan memasukan script “<script>alert(„This is a XSS Attack‟) </script>” ke dalam text area. Efek yang dihasilkan dari
script yang dimasukan tersebut dapat dilihat pada gambar 4.7 berikut.
53
Gambar 4.7 merupakan tampilan website setelah script
dieksekusi. Script yang dimasukkan oleh attacker akan disimpan oleh server dan secara permanen ditampilkan saat website tersebut diakses kembali sehingga terlihat seolah-olah serangan tejadi karena kesalahan pada website itu sendiri. Untuk memanfaatkan celah ini lebih lanjut, umumnya celah ini akan di kombinasikan dengan jenis serangan lain seperti phishing atau social engineering terhadap user
yang sah.
Gambar 4.8 Alert Cross Site Scripting (XSS)
Gambar 4.8 menunjukan alerts yang muncul pada IDS Snort saat attacker melakukan serangan Cross Site Scripting (XSS) menuju ke alamat 103.26.128.84/Web.
4.3
Pembahasan
Pembahasan penulisan ini mengacu pada hasil skenario serangan yang telah dilakukan. Dari serangan tersebut dihasilkan
54
melakukan investigasi serangan. Dari bukti yang didapat nantinya akan diambil informasi-informasi penting yang berhubungan dengan penyusupan, sehingga sumber serangan dapat diketahui.
4.3.1
Investigasi Serangan SQL Injection dan XSSMenurut The U.S Department of Justice, dalam melakukan investigasi forensik ada 4 tahap yang harus dilakukan:
1. Tahap Collection
Pada tahapan ini yang dilakukan yaitu mencari dan mengumpulkan semua bukti-bukti yang berhubungan dengan penyusupan. Bukti-bukti ini diambil dari file log Snort dan access log pada Squid.
Gambar 4.9 Alert Pada IDS Snort
55
Gambar 4.10 Access Log
Gambar 4.10 merupakan file access log yang dihasilkan saat terjadi serangan. Semua aktifitas dari user pada jaringan lokal akan ter-capture pada Squid access log ini. Selanjutnya bukti-bukti yang telah dikumpulkan tersebut akan diperiksa dan diteliti lebih lanjut pada tahap examination.
2. Tahap Examination
Pada tahap ini dilakukan pemeriksaan dan penelitian terhadap bukti-bukti yang telah dikumpulkan. Bukti-bukti yang didapat dipilah-pilah sesuai dengan karateristik dari serangan. File log Snort akan dipilah-pilah berdasarkan source address, source port, destination address dan destination port. Selain itu, file log Snort juga akan dipilah-pilah berdasarkan karakteristik dari serangan, yaitu penggunaan keyword union select sesuai dengan signature pada
56
Gambar 4.11 Analisa File Log berdasar IP dan Port
Gambar 4.11 menunjukkan bukti file log Snort yang dipilah-pilah berdasarkan source address, source port, destination address
dan destination port.
57
Gambar 4.12 menunjukkan file log Snort yang dibuka dengan Wireshark agar mudah dalam pembacaanya. Pemeriksaan dimulai dengan melakukan filter protokol HTTP. Angka 1 menunjukkan tentang HTTP GET Query, angka 2 menunjukkan tentang source address dan destination address, angka 3 menunjukkan source port
dan destination port dan angka 4 menjelaskan tentang HTTP GET
Header serangan SQLInjection dengan parameter union select. Sedangkan untuk serangan Cross Site Scripting (XSS) juga dilakukan hal yang sama, yaitu dengan melakukan pemeriksaan pada file log dengan cara memilah-milah file log berdasarkan source address, source port, destination address dan destination port. Selain itu, file log Snort juga akan dipilah-pilah berdasarkan karakteristik dari serangan XSS, yaitu penggunaan keyword < script> sesuai dengan signature yang ada pada rules Snort.
58
Gambar 4.13 menunjukkan file log Snort dari serangan Cross Site Scripting (XSS). File log ini dipilah-pilah berdasarkan source IP,
destination IP, source port dan destination port.
Gambar 4.14 File Log Snort Serangan XSS
Gambar 4.14 menunjukkan file log Snort yang dibuka dengan Wireshark agar mudah dalam pembacaanya. Pemeriksaan dimulai dengan melakukan filter protokol HTTP. Angka 1 menunjukkan HTTP POST Query, angka 2 menunjukkan source address dan
destination address, angka 3 menunjukkan source port dan
destination port, dan angka 4 menunjukkan tentang HTTP POST
Header. Hasil pada tahap examination ini, akan dianalisis lebih lanjut pada tahapan berikutnya.
59
Gambar 4.15 Elemen Access Log
Pada Gambar 4.15 menunjukkan file acces log yang dipilah-pilah sesuai dengan elemen dan fungsi masing-masing. Angka 1 menjelaskan informasi tentang waktu (timestmap), angka 2 menjelaskan tentang durasi waktu milidetik dalam transaksi, angka 3 menjelaskan tentang informasi IP address yang melakukan request,
angka 4 menjelaskan tentang result code, angka 5 menjelaskan tentang informasi ukuran byte data yang dihantarkan ke client, angka 6 menjelaskan tentang metode request untuk mendapat objek dan angka 7 menjelaskan informasi website yang diakses.
3. Tahap Analysis
60
Gambar 4.16 Analisa File Log Serangan SQL Injection dengan Wireshark
Pada Gambar 4.16 menunjukkan analisa file log Snort serangan SQL Injection yang dibuka dengan Wireshark. Angka 1 menunjukan source address dan destination address. Source addrees berasal dari IP 192.168.0.49 dan destination address
menuju ke IP 110.4.46.62 yang merupakan IP dari host
www.telesensory.com. Angka 2 menjelaskan tentang source port
dan destination port. Adapun angka 3 menjelaskan tentang data HTTP GET Header serangan SQL Injection dengan parameter union select. Payload yang ter-capture tersebut sesuai dengan signature
61
Gambar 4.17 Analisa File Log Snort Serangan XSS dengan Wireshark
Pada Gambar 4.17 menunjukkan analisa bukti serangan XSS yang dibuka dengan Wireshark. Angka 1 menunjukkan source address dan destination address. Source addrees berasal dari IP 192.168.0.49 dan destination address menuju ke IP 103.26.128.84. Selanjutnya angka 2 menunjukan source port berasal dari 59157 dan
destination port menuju ke port 80 atau HTTP. Adapun angka 3 menjelaskan tentang data HTTP POST Header dan angka 4 menunjukkan payload dari serangan XSS dengan parameter sebagai berikut:
%3Cscript%3E%28%27This+XSS+Attack%27%29%3C%2Fscript%3E
62
Gambar 4.18 Hasil Konvert ke Dalam Chart
Pada Gambar 4.18 menunjukkan hasil payload yang telah dikonvert ke dalam chart, yaitu <script>alert(‘This XSS Attack’)</script>. Tentunya hasil tersebut sesuai dengan
signature yang ada pada rules Snort sehingga Snort menganggap paket data tersebut sebagai serangan. Hasil yang didapat dari tahap
analysis dapat dilihat pada Tabel 4.1 berikut.
Tabel 4.1 Hasil Analisa File Log Snort
No Source Destination Ket
Pada Tabel 4.1 menunjukkan hasil analisa yang didapat file log Snort yang dibuka dengan Wireshark. Hasil yang didapat ini nantinya akan dicocokkan dengan hasil analisa file access log.
Pada tahap analysis, file access log akan dipilah-pilah berdasarkan waktu akses, IP address yang melakukan request dan
63
Gambar 4.19 Analisa Access Log serangan SQL Injection
Gambar 4.19 menunjukkan analisa access log serangan SQL Injection yang telah dipilah-pilah berdasarkan waktu akses, IP
address yang melakukan request dan website yang di-request. Terlihat IP address 192.168.0.49 sedang sedang mengkases situs www.telesensory.com.
Gambar 4.20 Analisa Access Log Serangan XSS
64
melakukan request dan website yang diakses. Terlihat IP address 192.168.0.49 sedang mengkases ke alamat 103.26.128.84. Hasil akhir dari analisa file access log dapat dilihat pada Tabel 4.2 berikut.
Tabel 4.2 Hasil Analisa Access Log diambil pada Squid. Setelah dilakukan pencocokan, hasil yang didapat dari analisa file access log cocok dengan hasil analisa file log IDS Snort yang telah dianalisa sebelumnya sehingga file access log dapat digunakan sebagai penguat bukti adanya serangan atau penyusupan pada jaringan.
4. Tahap Reporting
Dari hasil investigasi forensik pada tahap collection sampai tahap analysis didapat informasi-informasi penting tentang attacker. Informasi dari jejak attacker ini didapat dari file log Snort dan file
access log yang ada pada Squid. File log Snort diteliti dan dianalisa lebih lanjut untuk mendapatkan informasi tentang attacker
berdasarkan source address, destination address, source port dan
65
tentang sumber serangan dapat ditemukan. Hasil akhir dari investigasi forensik ini dapat dilihat pada Tabel 4.3.
Tabel 4.3 Hasil Investigasi Forensik
Tabel 4.3 menunjukkan hasil investigasi forensik yang dilakukan berdasarkan bukti-bukti yang diambil pada file log pada IDS Snort dan file access log pada Squid. Serangan SQL Injection
terjadi pada Thursday 27 Maret 2014 pada jam 00:46 dengan profile