Anda di halaman 1dari 6

SNORT : Tools deteksi intrusi pada system

(tutorial pada system Unix)

1.0 Pengantar dari www.pemula.com

Firewall saja terkadang tidak cukup untuk mendeteksi serbuan dari hacker
jahat atau intruder di luar system kita. Dapat di analogikan, kalau
firewall itu membatasi gerak para intruder, misalnya dengan hanya
membolehkan port 80 http saja dan memblokir port lainnya.

Sudah amankah ? belum, karena serangan tetap dapat dilakukan melalui port
80, misalnya dengan memanfaatkan unicode directory traversal
vulnerability atau serbuan virus code red yang dapat menjatuhkan server
IIS Anda. Untuk mendeteksi isi paket yang lewat, maka diperlukan
intrusion detection system atau sering disebut IDS. IDS yang gratis
adalah SNORT.

Tutorial di bawah ini menjelaskan step-by-step instalasi dan


penggunaannya pada system UNIX. Sebenarnya versi windowsnya juga sudah
tersedia dan tidak kalah mudahnya dalam instalasi.. Mungkin akan kami
sajikan pada tulisan lainnya.

1.1 Pengenalan

'SNORT' merupakan salah satu software untuk mendeteksi intrusi pada


system, mampu menganalisa 'real-time traffic' dan logging ip, mampu
menganalisa port dan mendeteksi segala macam 'serangan' dari luar seperti
buffer overflows, stealth port scans, CGI attacks, SMB probes, OS
fingerprinting. secara default nya snort mempunyai 3 hal yang terpenting
yaitu :

(1) paket sniffer, seperti tcpdump, iptraf dll


(2) paket logger, yang berguna untuk paket traffic dll
(3) NIDS, deteksi intrusi pada network.

Snort bukanlah software yang sulit, tapi perlu banyak latihan karena
banyaknya 'command-command' yang harus digunakan, tujuan dari pembuatan
artikel ini untuk membuat user lebih mudah untuk mengenali 'snort'.

1.2 Instalasi
download paket yang terbaru dari snort.org, saya disini menggunakan snort
2.0.0

# wget -c http://www.snort.org/dl/snort-2.0.0.tar.gz

jangan lupa juga mendownload rules terbaru.

# wget -c http://www.snort.org/dl/rules/snortrules-stable.tar.gz

extract dan install paket snort

# tar -zxvf snort-2.0.0.tar.gz ; cd snort-x.x.x ; ./configure ; make ;


make install

untuk lebih lengkap nya silahkan baca ./configure --help secara default
snort akan terinstall di /usr/local/bin/snort

1.3 Paket Sniffer

fyuh, mari coba pelajaran dasar dulu ;) jika anda ingin menampilkan
TCP/IP header ke layar ( mis. sniffer mode ), coba perintah ini:

# snort -v

command di atas akan menjalan snort dan hanya akan menampilkan IP dan
TCP/UDP/ICMP header, tapi jika anda mau melihat transit data coba dengan
command ini

# snort -vd

instruksi tersebut akan menampilkan transit data, tapi jika anda mau
lebih spesifik coba dengan

# snort -vde

1.3 Paket logger


ok, command-command di atas mungkin hanya sebagai pengenalan, pada
instruksi diatas ada kasus dimana kita tidak mungkin melihat ke layar
setiap menit nya ;) oleh karena itu dibutuhkan log, sebelum nya buat
direktori 'log' di direktori kerja anda sekarang

# mkdir -p log

# snort -dve -l ./log

Jika instruksi diatas dijalankan, tetapi anda belum membuad direktory


log, maka snort akan segera berhenti dengan keterangan 'ERROR: log
directory './log' does not exist', jika berhasil, snort akan menyimpan
setiap paket ke dalam direktori-direktory IP address, jika sistem anda
memiliki beberapa network tetapi anda hanya ingin memonitor network
tertentu saja.

# snort -dev -l ./log -h 192.168.1.0/24

Rules ini akan menyimpan setiap data link dan TCP/IP header ke dalam
direktory 'log' dan menyimpan setiap paket dari 192.168.1.0 kelas C
network.

1.4 Mendeteksi 'Pengacau' Jaringan

Sebelum ini di bahas, sebaik nya anda membaca manual dari snort.org,
http://www.snort.org/docs/writing_rules/chap2.html , disini diminta untuk
membuat rules sendiri atau anda bisa memakai rules yang di sedikan oleh
snort.org sendiri.

# tar -zxvf snortrules-stable.tar.gz

tapi, saya coba membuat rules sendiri, karena saya kurang suka dengan
paket dari orang lain, setelah di gunain tapi tidak tahu gunanya buat apa
;) contoh rules sederhana

# cd rules; touch avudz.conf

# vi avudz.conf
alert tcp any any -> ipsaya/29 21 (content: "root"; \

msg: "FTP root login";)

alert tcp any any -> ipprivate/24 22 (msg:"sshd access";)

alert tcp any any -> ipsaya/29 21 (content: "anonymous"; \

msg: "Ada yg Coba FTP server!";)

alert tcp any any -> ipsaya/29 22 (msg:"ada yang login";)

# http://www.linuxsecurity.com/feature_stories/feature_story-144.html

Content digunakan untuk mendefinisikan inputan dari $user, sedangkan msg


untuk membuat pernyataan tentang $user yang menggunakan 'content'
tersebut.

sebelum rules baru ini di jalankan, pastikan anda membuat direktory


logging di /var/log/snort

# mkdir -p /var/log/snort

tetapi jika anda merasa partisi /var anda sudah minim, silahkan buat
symbolic link untuk logging, misal

# ln -s /home/avudz/snort/log /var/log/snort

ok, selesai sudah ;) sekarang coba kita jalankan software nya.

# snort -d -c rules/avudz.conf

Running in IDS mode

Log directory = /var/log/snort

Initializing Network Interface eth0


setelah itu silahkan anda coba ftp / ssh ke server anda dari network yang
berbeda ( diconfig saya menggunakan ip public), dan pantau traffic nya.

# tail -f /var/log/snort/alert

contoh :

[**] [1:0:0] ada yang login [**]

[Priority: 0]

06/12-05:47:23.911639 202.xxx.xxx.xx:3962 -> 202.xxx.xxx.xxx:22

TCP TTL:64 TOS:0x10 ID:57036 IpLen:20 DgmLen:52 DF

***A**** Seq: 0xAC015F2A Ack: 0xAD5438B5 Win: 0x3EBC TcpLen: 32

TCP Options (3) => NOP NOP TS: 16723031 55655688

[**] [1:0:0] Ada yg Coba FTP server! [**]

[Priority: 0]

06/12-05:48:24.419800 202.xxx.xxx.xx:3971 -> 202.xxx.xxx.xxx:21

TCP TTL:64 TOS:0x10 ID:57642 IpLen:20 DgmLen:68 DF

***AP*** Seq: 0xAE133FB1 Ack: 0xAFCB3637 Win: 0x3EBC TcpLen: 32

TCP Options (3) => NOP NOP TS: 16729081 55661127

Ah.. selesai sudah, tinggal tambahin beberapa rules yang dibutuhkan untuk
memantau aktivitas 'machine' anda ;) misalnya iseng mo monitor irc
server, tinggal tambahin di avudz.conf

# vi rules/avudz.conf

alert tcp ipsaya any -> any 6666:7000 (msg:"CHAT IRC ";
flow:to_server,established; content: "NICK "; offset:0; classtype:misc-
activity; sid:542; rev:8;)
alert tcp ipsaya any -> any 6666:7000 (msg:"permintaan DCC Chat ";
flow:to_server,established; content:"PRIVMSG "; nocase; offset:0;
content:" \:.DCC SEND"; nocase; classtype:misc-activity; sid:1639;
rev:3;)

# === done === #

Semua config dan rules nya bisa anda pelajari dari file snortrules-
stable.tar.gz yang sudah di extract, seperti msyql rules, backdoor rules,
ICMP rules, bad traffic rules dll. yang penting adalah mencoba, jangan
pernah menyerah! MERDEKA!! =)

Dikutip dari tulisan Avudz Syah Putra di Jasakom oleh www.pemula.com

Anda mungkin juga menyukai