28 October 2011

Instalasi snort dan beberapa penerapan rule standard di debian lenny dan squeeze


Fiuhh.. Akhirnya bisa bernafas lega juga. Materi Snort yang akan muncul di LKS provinsi Jawa Barat nanti, sudah saya kuasai :) Sekarang saya akan membagikannya step-stepnya disini. Cekidot!


A. Tahap Instalasi
1. Ketik perintah ini :

# nano /etc/apt/sources.list

2. Kopikan source berikut di baris yang paling bawah

deb http://kambing.ui.ac.id/debian/ squeeze main contrib non-free
deb-src http://kambing.ui.ac.id/debian/ squeeze main contrib non-free


Click to Reveal!:



tekan ctrl +x > y > enter untuk mengesave.

2. Terus install dotdeb GnuPG key nya:

# cd /usr/src
# wget http://www.dotdeb.org/dotdeb.gpg
# cat dotdeb.gpg | apt-key add -


Click to Reveal!:



gatau gunanya apaan, mungkin untuk mendaftarkan keynya atau apa. yang penting bisa. hehe :D

Setelah itu update dengan perintah ini :

# apt-get update

3. Lanjut, sekarang saatnya untuk menginstall aplikasi-aplikasi yang dibutuhkan :

# apt-get install apache2 libapache2-mod-php5 libwww-perl mysql-server mysql-common mysql-client php5-mysql libnet1 libnet1-dev libpcre3 libpcre3-dev autoconf libcrypt-ssleay-perl php5-gd php-pear libphp-adodb php5-cli libtool libssl-dev gcc-4.4 g++ automake gcc make flex bison apache2-doc ca-certificates

nb: Ntar kalo diminta masukin password buat mysql nya, isi aja terserah anda. Tapi jangan sampe lupa ya :p

Terus kalo muncul gambar seperti ini, tekan OK aja.

Click to Reveal!:




4. Kalo udah, sekarang install libpcapnya (kita masih berada di dalam direktori /usr/src):

# wget http://www.tcpdump.org/release/libpcap-1.1.1.tar.gz
# tar -zxf libpcap-1.1.1.tar.gz && cd libpcap-1.1.1
# ./configure --prefix=/usr --enable-shared
# make && make install


Click to Reveal!:



Click to Reveal!:



5. lanjutt. sekarang install libdnet nya.

# cd -
# wget http://libdnet.googlecode.com/files/libdnet-1.12.tgz
# tar -zxf libdnet-1.12.tgz && cd libdnet-1.12
# ./configure --prefix=/usr --enable-shared
# make && make install


Click to Reveal!:



6. Buat install daq nya ini agak ribet. ini stepnya :

Download daq :

# cd -
# wget http://www.snort.org/dl/snort-current/daq-0.5.tar.gz
# tar -zxf daq-0.5.tar.gz && cd daq-0.5


Click to Reveal!:



Edit daq :

# nano os-daq-modules/daq_pcap.c

tekan ctrl+w, lalu cari kata kunci buffer_size = strtol

Click to Reveal!:



kalo udah ketemu, ganti context->buffer_size = strtol(entry->key, NULL, 10); menjadi context->buffer_size = strtol(entry->value, NULL, 10);

Lebih jelasnya lihat gambar ini :

Click to Reveal!:



Save dan exit.

Install daq :

# ./configure
# make && make install


Click to Reveal!:



7. Update library pathnya :

# echo >> /etc/ld.so.conf /usr/lib && ldconfig

8. Sekarang baru deh install snortnya :

# cd -
# wget http://www.snort.org/dl/snort-current/snort-2.9.0.5.tar.gz -O snort-2.9.0.5.tar.gz
# tar -zxf snort-2.9.0.5.tar.gz && cd snort-2.9.0.5
# ./configure --enable-dynamicplugin --enable-perfprofiling --enable-ipv6 --enable-zlib --enable-reload
# make && make install


Click to Reveal!:




9. Kalo ga ada pesan error dan udah diinstall semua, sekarang saatnya untuk ngebuat direktori-direktori kerja si snort ini. caranya :

# mkdir /etc/snort /etc/snort/rules /var/log/snort /usr/local/lib/snort_dynamicrules
# groupadd snort && useradd -g snort snort
# chown snort:snort /var/log/snort
# cp /usr/src/snort-2.9.0.5/etc/*.conf* /etc/snort
# cp /usr/src/snort-2.9.0.5/etc/*.map /etc/snort


Click to Reveal!:




B. Tahap Konfigurasi


1. Edit file snort.conf :

# nano /etc/snort/snort.conf

- Search kata kunci ipvar HOME_NET, lalu edit bagian ini :

ipvar HOME_NET any menjadi ipvar HOME_NET 192.168.7.0/24 --> ini ip network yang ingin anda protect.

Click to Reveal!:




- Tidak jauh dari ipvar HOME_NET, kebawah sedikit edit baris ipvar EXTERNAL_NET any menjadi ipvar EXTERNAL_NET !$HOME_NET

Click to Reveal!:



- Search kata kunci var RULE_PATH lalu hilangkan kedua tanda titik dan tanda garis miring di depan kata ./rules sehingga dari yang semula var RULE_PATH ../rules menjadi var RULE_PATH rules :

Click to Reveal!:




- Ketik kata kunci preprocessor normalize, dan beri tanda pagar di depan semua kata-kata yang bertuliskan prepocessor normalize dari baris 186 sampai 190. Lebih jelasnya lihat gambar dibawah ini :

Click to Reveal!:




- Search kata kunci output unified2. lalu tambahkan satu baris dibawahnya dengan tulisan berikut :

output unified2: filename snort.log, limit 128

Click to Reveal!:




- Search kata kunci RULE_PATH lalu beri tanda pagar di depan semua kata-kata yang mengandung kata include $RULE_PATH selain include $RULE_PATH local.rules

Lihat gambar berikut agar lebih jelas :

Click to Reveal!:





Save dan tutup filenya.


C. Tahap Pengetesan


Sebenernya ada banyak banget rule yang ada di snort ini. Kalian bisa mendonlodnya di situs resminya. nah tapi kayaknya kurang asik kalo cuma make file orang, xixixi :D nah mendingan kita nyoba-nyoba aja buat rule sederhana dulu. meskipun sederhana, tapi yang penting ngerti konsepnya. :)

1. Buat sebuat file baru di /etc/snort/rules/local.rules

# nano /etc/snort/rules/local.rules

isi dengan kode kayak gini :

alert icmp any any -> any any (msg:"ada orang yang lagi nyoba ngeping";sid:10000001;rev:0;)
alert tcp any any -> any 21 (msg:"FTP server lagi di akses";sid:10000002;rev:1;)


Save kemudian tutup.

Tau enggak itu artinya apa? rumusnya itu sebenernya kayak gini:

jenis_perintah protokol network_sumber port_sumber -> network_tujuan port_tujuan

Nah sid itu penulisannya harus lebih dari 1000000 (1 juta), kalo rev itu penulisannya dimulai dari 0. maksudnya apa? hmm. saya juga ga tau. hehe :D

2. Lanjut, sekarang misalnya topologi jaringannya seperti ini :

internet--(eth2)router(eth1)--server
(eth0)
|
|
AP
|
|
client



Nah snortnya itu kita install di router dan mengawasi keluar masuknya traffic jaringan di eth0. untuk mengetestnya kita menggunakan perintah seperti ini:

snort -d -c /etc/snort/rules/local.rules

Nanti disitu akan muncul banyak tulisan, tapi belum keliatan alertnya karena snortnya bekerja sebagai daemon (di belakang layar). tau kenapa dia bekerja sebagai daemon? itu dari perintah -d tadi..

Pertanyaannya sekarang, gimana cara ngeliatnya?

Coba dari clientnya ngeping ke ip router, kemudian dari routernya anda tekan alt+ctrl+f2. akan muncul jendela login baru. masukkin aja username : root password: passwordanda.

Setelah itu ketik ini :

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

Kalo muncul peringatan seperti gambar dibawah ini maka berarti snortnya udah berjalan dengan baik :

Click to Reveal!:



Lalu kalo saya coba mengakses FTP server, maka akan muncul peringatan seperti ini :

Click to Reveal!:



Untuk konfigurasi yang lebih rumit lagi mungkin anda bisa mencari sendiri tutorialnya yang bertebaran di rumahnya paman google. Oh iya nanti untuk snort menggunakan database akan menyusul artikelnya. :)

Semoga bermanfaat :)
Share:

0 komentar:

Post a Comment

Blog Archive