(2009) Pemaparan desain rancang bangun sebuah Intrusion Detection System berbasis Snort, yang dilengkapi modul Linux iptables untuk redirect packet suspicious ke sistem Honeypot independen. Dilengkapi dengan GUI untuk dashboard dan statistik nya.
1. Pengembangan Smart IPS Untuk Mereduksi False
Positive
Ade Ismail Isnan
adeismail [A] tibandung [dot] com
Mereduksi pemblokiran yang
dilakukan oleh Intrusion Prevention
System dengan memanfaatkan
analisis pada Honeypot. Analisis
mencakup log aktifitas yang
dilakukan client, log perilaku
Honeypot terhadap client, serta log
request yang abnormal dari client.
Sehingga dapat diketahui apakah
yang dilakukan client terhadap server
yang dilindungi bisa membahayakan
atau tidak.
2. Latar Belakang
Peran host/server yang cukup vital bagi kelangsungan
layanan/bisnis (asset, vulnerabilities, threats). Keamanan
dan perlindungan server terhadap aktifitas intrusi dari
dunia luar (LAN, WAN, & The Internet)
IDS (Intrusion Detection System): sistem untuk
mendeteksi intrusi yang terjadi pada server. IPS (Intrusion
Prevention System): sistem IDS yang bisa melakukan
tindakan pencegahan (reaktif)
False positive IPS: suatu host bisa menjadi korban blokir.
Akibat: host tidak bisa mengakses layanan server
Bagaimana availability layanan server? Semakin banyak
bisa diakses oleh siapa saja --> semakin baik
3. Latar Belakang (lanjut)
• Kondisi 1 (tanpa IPS):
– Ancaman terhadap gangguan dari luar
– Potensi server compromised semakin tinggi,
Akibat terburuk: layanan bisa mati/rusak/hilang
• Kondisi 2 (dengan IPS):
– Keamanan server terjamin serta layanan dapat
berlangsung tanpa ancaman dari luar
– Tetapi, korban false positive tidak dapat
mengakses layanan
4. Analisis Solusi
IPS yang memiliki toleransi
Toleransi: kesempatan bagi client untuk lepas dari
pemblokiran ataupun false positive sehingga bisa
mengakses layanan server kembali. Serta sebagai
kesempatan bagi Network Administrator untuk
menganalisis kejadian intrusi dan potensinya
Honeypot: aplikasi yang akan mendeteksi dan menjebak
penyerang dengan cara mengemulasi layanan dan
berinteraksi dengan mereka sebagai bahan analisis lanjut
Honeyweb: honeypot yang mengemulasi webserver dan
melaporkan potensi HTTP request dari penyerang
sebagai bahan analisis lanjut
5. Batasan
Server menggunakan sistem operasi Linux
Server yang diproteksi melayani HTTP dan SSH
Tindakan intrusi dari pihak trusted network/host
tidak akan diproses oleh IPS
6. Desain Topologi
Firewall server yang telah dikonfigurasi
dengan baik
Server yang dilindungi akan diinstall IPS
Node dibelakang server sebagai sebuah
Honeypot Server
Firewall Honeypot Server yang telah
dikonfigurasi dengan baik
8. IPS
Sistem yang selain mendeteksi intrusi juga
melakukan pencegahan
Dibutuhkan:
IDS (modul Pendeteksi)
Firewall (modul Pemblokir/Pencegah)
Dengan kata lain, IPS: IDS yang bisa
berkolaborasi dan mengkonfigurasi firewall
9. IPS (lanjut)
Modul Pendeteksi
Memanfaatkan Snort (Open Source IDS)
Menggunakan rules signature Snort untuk
mendeteksi intrusi
Mencatat ke log jika terdapat paket yang
match dengan rules signature
12. IPS (lanjut)
Modul Pencegah
Memanfaatkan IPTables (packet filtering
pada kernel Linux)
Parameter konfigurasi IPTables: alamat IP
yang sebelumnya dideteksi pada modul
pendeteksi (diambil dari log)
Fungsi IPTables: accept/drop/redirect
14. Snort & IPTables...
• Snort & IPTables: sistem independen/bisa
berdiri sendiri tanpa dependency antara
sistem yang satu dan yang lain
• Integrasi:
a) Memanfaatkan 'libnet' (--enable-flex-resp)
b) Memanfaatkan BlockIt sebagai jembatan
antara Snort & IPTables
15. BlockIt
• BlockIt: parser pada log Snort
• Contoh baris log/alert Snort:
– [**] [122:25:0] (portscan) ICMP Sweep [**] [Priority: 3]
04/20-05:06:34.381135 192.168.70.12 ->
192.168.70.70 PROTO:255 TTL:0 TOS:0x0 ID:23002
IpLen:20 DgmLen:158
di parsing dan diambil value:
– (portscan) ICMP Sweep (kejahatan yang terdeteksi)
– 192.168.70.12 (IP address host penyerang)
19. Ruang Lingkup Implementasi
• Inisialisasi kebutuhan alat dan bahan penelitian pada
server Linux (library & dependencies)
• Instalasi dan konfigurasi Snort
• Instalasi, konfigurasi, dan pengembangan BlockIt untuk
tujuan yang ingin dicapai
• Instalasi dan konfigurasi Honeyweb
• Integrasi sistem
• Perancangan dan pembuatan antarmuka sistem (web
based). Information retrieval bagi Network Administrator
20. Implementasi Snort...
• Instalasi:
– Persiapan dan instalasi dependencies: libdnet, libnids, libpcap
– Compile
– Install Snort
– Install rule signature Snort
• Konfigurasi:
– Interface yang akan di monitor
– Alamat IP/Network yang akan di monitor ($HOME_NET)
– Mengaktifkan path rule signature
21. Implementasi BlockIt...
• Instalasi:
– Persiapan dan instalasi dependencies: Perl, AWK, IPTables
– Install BlockIt
• Konfigurasi:
– Menentukan path menuju IPTables
– Menentukan path menuju berkas log Snort
• Pengembangan:
– Subroutine untuk penyisipan data ke DB MySQL
– Parsing alertline, selain parsing alamat IP
– Memberi/menghitung/mencabut toleransi
– Skip proses parsing yang berasal dari alamat GW/DNS server
– Anti bruteforce SSH
23. Desain Sistem IPS + Honeypot
Blacklist? –> IPTables
Malicious? –> Snort
Intrusi? –> Analisis Net Admin
Untuk intrusi > batas toleransi akan diblokir
otomatis oleh sistem
24. Pengujian: Skenario 1
Paket request normal dari host yang tidak termasuk
dalam blacklist
1. Melewati chain INPUT IPTables. Blacklist? –> tidak
2. Melewati sensor Snort. Malicious? –> tidak
3. Sampai ke webserver asli dan diproses
4. HTTP response dari webserver
25. Pengujian: Skenario 2
Paket request abnormal/malicious/potensi eksploitasi dari host yang tidak
termasuk blacklist
1. Melewati chain INPUT IPTables. Blacklist? –> tidak
2. Melewati sensor Snort. Malicious? –> ya! Catat ke log...
3. BlockIt parsing log. Mendapatkan alamat IP dan mengkonfigurasi IPTables
4. Sampai ke webserver Honeyweb dan diproses
5. Setiap HTTP request dan status response dicatat
6. BlockIt release alamat IP dari Honeyweb (+1 toleransi untuk host)
7. Network Administrator bisa langsung memblokir host jika kelakuannya
pada Honeyweb Server dinilai berbahaya. (Dilihat dari catatan log
Honeyweb)
26. Pengujian: Skenario 3
Paket request abnormal/malicious/potensi eksploitasi dari host
yang tidak termasuk blacklist secara kontinyu
1. Selama lebih dari batas toleransi melakukan:
(1) Melewati chain INPUT IPTables. Blacklist –> tidak
(2) Melewati sensor Snort. Malicious? –> ya! Catat ke log...
(3) BlockIt parsing log. Mendapatkan alamat IP dan
mengkonfigurasi IPTables
(4) Sampai ke webserver Honeyweb dan diproses
(5) Setiap HTTP request dan status response dicatat
(6) BlockIt release alamat IP dari Honeyweb (+1 toleransi untuk
host)
2. BlockIt mem-blacklist alamat IP
27. Pengujian: Skenario 4
Paket request normal dari host yang termasuk blacklist
1. Melewati chain INPUT IPTables. Blacklist? –> ya! Drop paket!
2. Koneksi untuk host tersebut terputus
NB:
a) Network Administrator dapat kembali mengizinkan host terkait
untuk bisa terkoneksi dengan server yang dilindungi
b) Sebagai bahan pertimbangan melakukan unblacklist: log aktifitas-
aktifitas host terkait pada Honeypot
28. Pengujian: Skenario 5
Paket request abnormal/malicious/potensi eksploitasi dari host
yang termasuk blacklist
1. Melewati chain INPUT IPTables. Blacklist? –> ya! Drop paket!
2. Koneksi untuk host tersebut terputus
NB:
a) Paket request tidak sempat masuk ke sensor Snort –>
meminimalisir banyaknya alert yang mungkin terjadi
31. But in Open Source…
“If I have seen farther than other men, it
is because I have stood on the
shoulders of giants.”
-Sir Isaac Newton wrote this in a letter to the English scientist Robert
Hooke (whom he hated and despised) in the 1670s-
33. Kesimpulan
• Perlindungan pada server dengan memasang perangkat
keamanan meminimalisir resiko dampak serangan
• Pencegahan dari aktifitas serangan yang dideteksi lebih baik
langsung dilakukan (“mencegah lebih baik daripada mengobati”)
• Tetap dibutuhkan Network Administrator sebagai pihak yang
bertanggung jawab pada keamanan jaringan & server
• Dengan Open Source Software, riset menjadi lebih baik.
Plus lebih mudah?
• “Security isn't a product. It is a process” –most net. admin-
• “More security doesn't make you more secure. Better management
does” -lirva32-