• Tidak ada hasil yang ditemukan

Kelas : 1 D4 LJ TI

N/A
N/A
Protected

Academic year: 2018

Membagikan "Kelas : 1 D4 LJ TI"

Copied!
31
0
0

Teks penuh

(1)

LAPORAN PRAKTIKUM MK. PRAKTIKUM KEAMANAN JARINGAN

PRAKTIKUM : SNORT

Kelas : 1 D4 LJ TI

Kelompok :

1 Faishal Izzan Nahidha (2110165006) 2 Mutik Hidayati (2110165012)

(2)

TOPOLOGI JARINGAN

Berikut ini topologi jaringan yang digunakan pada praktikum ini:

(3)

 Konfigurasi Host 1:

1. Konfigurasi Kartu Jaringan

Beberapa kartu jaringan memiliki fitur “Large Receive Offload” (Iro) dan “Generic Receive Offload” (gro). Dengan fitur tersebut, kartu jaringan melakukan paket reassembly sebelum diproses oleh kernel. Secara default, Snort akan memotong paket yang lebih besar dari snaplen default 1518 byte. Selain itu, LRO dan GRO dapat menyebabkan masalah dengan reassembly berbasis target Stream5. Sebaiknya matikan LRO dan GRO.

Untuk mematikan LRO dan GRO untuk setiap interface yang didengarkan oleh Snort, gunakan

commadn ethtool di dalam file konfigurasi network interface : /etc/network/interfaces.

Langkah 1.1 : Install ethtool

Install etht ool dengan perintah :

:~# apt-get install -y ethtool

(4)

Pengerjaan:

Langkah 1.2 : Merubah eth0

Tambahkan dua baris berikut untuk setiap network interface:

post-up ethtool -K eth0 gro off post-up ethtool -K eth0 lro off

Pengerjaan:

Langkah 1.3 : Konfigurasi Network Interface

(5)

Langkah 1.4 : Restart Jaringan

Lakukan restart jaringan dan pastikan bahwa LRO dan GRO telah dimatikan:

:~# ifconfig eth0 down && sudo ifconfig eth0 up

Langkah 1.5 : Install Package Debian

Install file package yang diperlukan dengan perintah berikut:

:~# apt-get install build-essential automake autoconf libtool pkg-config libcurl4-openssl-dev intltool libxml2-dev libgtk2.0-dev libnotify-dev libglib2.0-dev libevent-dev checkinstall

2. Instalasi Pra-syarat Snort

Snort memiliki empat pra-syarat berikut:

pcap (libpcap-dev) tersedia di repositori Debian PCRE (libpcre3-dev) tersedia di repositori Debian Libdnet (libdumbnet-dev) tersedia di repositori Debian DAQ (http://www.snort.org/downloads/) kompilasi dari sumber

Langkah 2.1 : Package Build Essential

Pertama install semua tools yang dibutuhkan untuk membangun software melalui package build-essentials dengan perintah :

:~# apt-get install -y build-essential

(6)

Jika sudah terinstall lalu install semua pra-syarat Snort yang tersedia dari repository Debian : :~# apt-get install -y libpcap-dev libpcre3-dev libdumbnet-dev

Langkah 2.2 : Membuat Folder

Setelah ini, kita akan mendownload sejumlah file tar untuk berbagai package software. Buatlah sebuah folder snort_src untuk menyimpan dalam satu tempat:

:~# mkdir snort_src

Pengerjaan:

Langkah 2.3 : Library Data AcQuisition

Snort DAQ (Data AcQuisition Library) memiliki beberapa pra-syarat yang harus diinstall. Lakukan instalasi dengan perintah :

:~# apt-get install -y bison flex

Pengerjaan:

Langkah 2.4 : Download dan Install DAQ

Download dan install versi terbaru DAQ dari website Snort. Langkah di bawah menggunakan wget untuk mendownload versi …. DAQ, yang mana adalah versi terbaru ketika dilakukan praktikum ini. Perintah sebagai berikut:

:~# cd snort_src/

:~/snort_src# wget https://www.snort.org/downloads/snort/daq-2.0.6.tar.gz :~/snort_src# tar -xvzf daq-2.0.6.tar.gz

:~/snort_src# cd daq-2.0.6

:~/snort_src/daq-2.0.6# ./configure

(7)

Pengerjaan:

3. Instalasi Snort

Untuk menginstal Snort, terdapat satu pra-syarat tambahan yang diperlukan untuk diinstal: zlibd

yang merupakan library compression.

Langkah 3.1 : Library

Terdapat tiga library opsional yang menambah fungsionalitas: liblzma-dev yang melakukan dekompresi file swf (adobe flash), openssl, dan libssl-dev yang keduanya menyediakan signature file SHA dan MD5. Instalasi dilakukan dengan perintah:

(8)

Pengerjaan:

Langkah 3.2 : Download Snort

Opsi perintah –enable-sourcefire menyediakan Packet Performance Monitoring (PPM), di mana dapat melakukan pemantauan kinerja untuk peraturan dan pra-prosesor, dan membangun Snort dengan cara yang sama seperti tim Snort:

:~# ldconfig :~# cd snort_src/

:~/snort_src# wget https://snort.org/downloads/snort/snort-2.9.8.3.tar.gz :~/snort_src# tar -xvzf snort-2.9.8.3.tar.gz

:~/snort_src# cd snort-2.9.8.3/

:~/snort_src/snort-2.9.8.3# ./configure --enable-sourcefire && make && make install

:~/snort_src/snort-2.9.8.3# cd

Pengerjaan:

Langkah 3.3 : Update Shared Libraries

Jalankan perintah berikut untuk memperbarui shared library. Tempatkan sebuah symlink ke binary Snort di dalam /usr/sbin:

(9)

Langkah 3.4 : Versi Snort

Tes Snort dengan menjalankan binary sebagai user regular, lewatkan dengan flas –V (yang mana memberitahu Snort untuk verifikasi dirinya dan berbagai file konfigurasi untuk dilewatkan dengan itu). Perintahnya :

:~# snort -V

Pengerjaan:

4. Konfigurasi Snort Untuk Menjalankan Mode NIDS

Karena kita tidak ingin Snort dijalankan sebagai root, buat akun unprivileged dan grup untuk daemon untuk dijalankan dibawah (snort:snort).

Langkah 4.1 : Membuat User Snort dan Grup

Buat sejumlah file dan direktori yang diperlukan Snort, dan kelola izin dari file tersebut. Snort akan memiliki direktori berikut : File konfigurasi dan Aturan di dalam /etc/snort, Alert di dalam

(10)

!!! # Create the snort user and group: :~# groupadd snort

:~# useradd snort -r -s /sbin/nologin -c SNORT_IDS -g snort

!!! # Create the Snort directories: :~# mkdir /etc/snort

!!! # Create some files that stores rules and ip lists : :~# touch /etc/snort/rules/black_list.rules

:~# touch /etc/snort/rules/white_list.rules :~# touch /etc/snort/rules/local.rules :~# touch /etc/snort/sid-msg.map

!!! # Create our logging directories: :~# mkdir /var/log/snort

:~# mkdir /var/log/snort/archived_logs

!!! # Adjust permissions: :~# chmod -R 5775 /etc/snort :~# chmod -R 5775 /var/log/snort

:~# chmod -R 5775 /var/log/snort/archived_logs :~# chmod -R 5775 /etc/snort/so_rules

:~# chmod -R 5775 /usr/local/lib/snort_dynamicrules

(11)

Langkah 4.2 : Merubah Kepemilikan Folder

Ubah kepemilikan dari folder yang telah dibuat untuk memastikan Snort dapat mengakses file tersebut dengan perintah :

!!! # Change Ownership on folders: :~# chown -R snort:snort /etc/snort :~# chown -R snort:snort /var/log/snort

:~# chown -R snort:snort /usr/local/lib/snort_dynamicrules

Snort membutuhkan beberapa file konfigurasi dan preprosesor dinamis yang di salin dari sumber tarball Snort ke dalam folder /etc/snort. File konfigurasi tersebut yaitu:

 classification.config  file magic.conf  reference.config  snort.conf  threshold.conf  attribute table.dtd  gen-msg.map  unicode.map

Pengerjaan:

Langkah 4.3 : Konfigurasi File dan Preprosesor Dinamis

Untuk menyalin file konfigurasi dan preprosesor dinamis, jalankan perintah berikut: :~# cd

:~# cd snort_src/snort-2.9.8.3/etc/

:~/snort_src/snort-2.9.8.3/etc/# cp *.conf* /etc/snort :~/snort_src/snort-2.9.8.3/etc/# cp *.map /etc/snort :~/snort_src/snort-2.9.8.3/etc/# cp *.dtd /etc/snort :~/snort_src/snort-2.9.8.3/etc/# cd

:~# cd

(12)

Pengerjaan:

Sekarang kita mempunyai layout direktori berikut dan lokasi file: Snort binary file: /usr/local/bin/snort Snort configuration file: /etc/snort/snort.conf Snort log data directory: /var/log/snort

Snort dynamic preprocessors: /usr/local/lib/snort dynamicpreprocessor/

Langkah 4.4 : Merubah Konfigurasi Utama Snort

Ubah file konfigurasi utama Snort /etc/snort/snort.conf. Ketika menjalankan Snort dengan file ini sebagai argument, hal ini memberitahu Snort untuk berjalan dalam mode NIDS.

Beri komentar semua file aturan individual yang dirujuk dalam file konfigurasi Snort untuk menggunakan PulledPork dalam mengelola rulesets. Hal ini menggabungkan semua rule ke dalam satu file. Baris berikut akan memberi komentar semua rulesets di file snort.conf :

:~# sed -i "s/include \$RULE\_PATH/#include \$RULE\_PATH/" /etc/snort/snort.conf

Pengerjaan:

Langkah 4.5 : Merubah Beberapa Setting di dalam Snort

Kemudian ubah beberapa setting di dalam file snort.conf secara manual dengan perintah: :~# nano -c /etc/snort/snort.conf

Ubah pada baris berikut:

(13)

Pengerjaan:

Langkah 4.6 : Path File Pada Snort

Atur path file berikut di dalam snort.conf, dimulai pada baris 104: :~# nano -c /etc/snort/snort.conf

var RULE_PATH /etc/snort/rules var SO_RULE_PATH /etc/snort/so_rules

var PREPROC_RULE_PATH /etc/snort/preproc_rules var WHITE_LIST_PATH /etc/snort/rules/iplists var BLACK_LIST_PATH /etc/snort/rules/iplists

(14)

Langkah 4.7 : Uji Coba Snort

Agar ujicoba Snort mudah, aktifkan file local.rules, di mana tambahkan aturan yang dapat diwaspadai Snort. Un-comment (hapus symbol hash) dari baris 546:

:~# nano -c /etc/snort/snort.conf

include $RULE_PATH/local.rules

Pengerjaan:

Langkah 4.8 : Menjalankan Snort

Jalankan perintah di bawah dan lihat output yang terjadi :

:~# snort -T -i eth0 -c /etc/snort/snort.conf

(...)

Snort successfully validated the configuration! Snort exiting

:~#

(15)

Nama interface berubah dan sistem spesifik (tidak lagi sebagai ethN).

5. Menulis Aturan Sederhana untuk Tes Deteksi Snort

Pada bagian ini, Snort tidak memiliki peraturan yang dijalankan (referensi file aturan di dalam

snort.conf kosong). Untuk mengetes kemampuan deteksi Snort, buat aturan sederhana yang akan membuat Snort men-generate tanda dimanapun Snort melihat sebuah pesan “Echo request” atau

“Echo reply” ICMP dengan perintah PING.

Langkah 5.1 : Alert icmp

Tempel baris tunggal berikut ke dalam file aturan lokal kosong /etc/snort/rules/local.rules:

:~# cd /etc/snort/rules/

:~/etc/snort/rules# nano -c local.rules

alert icmp any any -> $HOME_NET any (msg:"ICMP test detected"; GID:1; sid:10000001; rev:001; classtype:icmp-event;)

Pengerjaan :

(16)

Langkah 5.2 : Alert ICMP

Untuk memastikan bahwa barnyard2 tahu bahwa aturan yang kami buat dengan pengenal unik 10000001 memiliki pesan "ICMP Test Detected", serta beberapa informasi lainnya. Kami menambahkan baris berikut ke file /etc/snort/sid-msg.map:

:~/etc/snort/rules# cd ..

:~/etc/snort# nano -c sid-msg.map

1 || 10000001 || 001 || icmp-event || 0 || ICMP Test detected || url,tools.ietf.org/html/rfc792

Pengerjaan:

Bila Anda tidak mengomentari baris 545 di atas (sertakan $ RULE_PATH / local.rules) Anda memberi tahu Snort bahwa file local.rules harus dimuat oleh Snort. Ketika Snort memuat file itu saat start-up, ia akan melihat aturan yang Anda buat, dan menggunakan aturan itu pada semua lalu lintas yang dilihat oleh antarmuka. Dalam kasus ini, ketika kami membuat peraturan, kami memberi tahu Snort bahwa seharusnya menghasilkan peringatan saat melihat ping ICMP.

Langkah 5.3 : Merubah ke Konfigurasi Snort

Karena kami membuat perubahan pada konfigurasi Snort, kami harus menguji file konfigurasi lagi:

:~/etc/snort# cd

:~# snort -T -c /etc/snort/snort.conf -i eth0

(17)

Langkah 5.4 : Mode NIDS

(18)

-A console Opsi ‘console’ mencetak tanda mode fast ke stdout

:~# /usr/local/bin/snort -A console -q -u snort -g snort -c /etc/snort/snort.conf -i eth0 dihasilkan saat sebuah paket sesuai dengan peraturan kami ke konsol.

Langkah 5.5 : PING

Dari komputer lain, ping alamat IP eth0 di komputer Snort (atau ganti ping dari host Snort ke komputer lain, atau eth0 sendiri, tapi bukan antarmuka loopback).

Gunakan ctrl-c untuk menghentikan Snort agar tidak berjalan.

Perhatikan bahwa Snort telah menyimpan salinan informasi ini di / var / log / snort, dengan nama snort.log.nnnnnnnnn (jumlahnya mungkin berbeda). Pada titik ini Snort berjalan dengan benar dalam mode NIDS dan menghasilkan peringatan.

6. Instalasi Barnyard2

Ini adalah sumber yang intensif bagi Snort untuk menulis acara dalam mode yang dapat dibaca manusia, baik ke konsol maupun file teks, seperti yang dilakukan di atas. Idealnya, kami ingin acara Snort disimpan dalam database MySQL sehingga kami dapat melihat, mencari, dan profil event. Untuk mendapatkan kejadian Snort secara efisien ke dalam database MySQL, kami menggunakan Barnyard2.

Langkah 6.1 : Instalasi MySQL

(19)

kemudian membuat Barnyard2 membaca kejadian tersebut secara asinkron dan memasukkannya ke basis data MySQL kami.

Instalasi MySQL, menggunakan apt dengan repositori mysql. Pertama, tambahkan sumber repositori mysql untuk mendapatkan versi MySQL terbaru.

:~# wget http://dev.mysql.com/get/mysql-apt-config_0.7.3-1_all.deb

:~# dpkg -i mysql-apt-config_0.7.3-1_all.deb

(20)

Kemudian lakukan perintah berikut : :~# apt-get update

:~# apt-get install --force-yes mysql-server libmysqlclient-dev mysql-client autoconf libtool

(21)

Lalu, atur password untuk user root database mysql.

Langkah 6.2 : Output Unified2

Beritahu Snort bahwa hal itu harus mengeluarkan peringatan dalam format biner (ke file) yang dapat diproses oleh Barnyard2. Untuk melakukannya, edit file /etc/snort/snort.conf, dan setelah baris 521 (baris komentar dimulai dengan tanda hash) tambahkan baris berikut:

:~# cd /etc/snort/

:~/etc/snort# nano -c snort.conf

Pengerjaan:

Langkah 6.3: Download dan Instal Barnyard2

(22)

:~/snort_src# wget

https://github.com/firnsy/barnyard2/archive/7254c24702392288fe6be948f88afb7404 0f6dc9.tar.gz \-O barnyard2-2-1.14-336.tar.gz

:~/snort_src# tar -zxvf barnyard2-2-1.14-336.tar.gz

:~/snort_src# mv 7254c24702392288fe6be948f88afb74040f6dc9 barnyard2-2-1.14-336

:~/snort_src# cd barnyard2-2-1.14-336

:~/snort_src/barnyard2-2-1.14-336# autoreconf -fvi -I ./m4

(23)
(24)

Langkah 6.4 : Library

Barnyard2 membutuhkan akses ke library dnet.h. Namun, Barnyard2 mengharapkan nama file yang berbeda untuk perpustakaan ini. Buat soft link dari dnet.h ke dubmnet.h jadi tidak ada masalah:

:~/snort_src/barnyard2-2-1.14-336# ln -s /usr/include/dumbnet.h /usr/include/dnet.h

:~/snort_src/barnyard2-2-1.14-336# ldconfig

Pengerjaan:

Langkah 6.5 : Konfigurasi MySQL

Jalankan dua baris perintah di bawah untuk mengkonfigurasi:

:~/snort_src/barnyard2-2-1.14-336# arch !!! # Choose ONE of these two commands to run

:~/snort_src/barnyard2-2-1.14-336# ./configure --with-mysql --with-mysql-libraries=/usr/lib/x86_64-linux-gnu

(25)

Pengerjaan:

Langkah 6.6 : Install Banyard2

Selesaikan instalasi Barnyard2 ke file /usr/local/bin/barnyard2:

:~/snort_src/barnyard2-2-1.14-336# make

:~/snort_src/barnyard2-2-1.14-336# make install

(26)

Langkah 6.7 : Salin dan Buat Beberapa File

Untuk menyalin dan membuat beberapa file yang dibutuhkan Barnyard2 jalankan perintah berikut:

:~/snort_src/barnyard2-2-1.14-336# cp etc/barnyard2.conf /etc/snort

!!# the /var/log/barnyard2 folder is never used or referenced

!!# but barnyard2 will error without it existing

:~/snort_src/barnyard2-2-1.14-336# mkdir /var/log/barnyard2

:~/snort_src/barnyard2-2-1.14-336# chown snort.snort /var/log/barnyard2 :~/snort_src/barnyard2-2-1.14-336# touch /var/log/snort/barnyard2.waldo :~/snort_src/barnyard2-2-1.14-336# chown snort.snort

/var/log/snort/barnyard2.waldo

:~/snort_src/barnyard2-2-1.14-336# cd Pengerjaan:

Langkah 6.8 : Buat Database

(27)

membuat database dan pengguna MySQL. Lalu atur password user MySQL Snort:

:~# mysql -u root –p

mysql> create database snort; mysql> use snort;

mysql> source ~/snort_src/barnyard2-2-1.14-336/schemas/create_mysql; mysql> CREATE USER 'snort' IDENTIFIED BY 'jarkom123';

mysql> grant create, insert, select, delete, update on snort.* to snort; mysql> exit

(28)

Langkah 6.9 : Hubungkan ke Database MySQL

Kita perlu memberi tahu Barnyard2 bagaimana cara menyambung ke database MySQL.

Edit /etc/snort/barnyard2.conf, dan di akhir file tambahkan baris ini (ubah kata sandi dengan yang Anda buat di atas): Baris 71, 75 dan 348

:~# cd /etc/snort

:~/etc/snort# nano -c barnyard2.conf

config interface: eth0

config alert_with_interface_name

(29)

Pengerjaan:

Langkah 6.10 : Ubah Izin

Karena kata sandi disimpan dalam teks mentah di file barnyard2.conf, kita harus mencegah pengguna lain membacanya dengan perintah:

:~/etc/snort# cd

:~# chmod o-r /etc/snort/barnyard2.conf

Pengerjaan:

Langkah 6.11 : Jalankan Snort di Mode Alert

(30)

Pengerjaan:

Praktikum PING tidak dapat dijalankan karena terjadi error.

Langkah 6.12 : PING Interface eth1

Ping antarmuka eth0 dari komputer lain, Anda tidak akan melihat output di layar karena Snort tidak dimulai dengan -A bendera konsol seperti sebelumnya. Setelah ping berhenti, ketik ctrl-c untuk menghentikan Snort. Anda harus melihat file baru di direktori / var / log / snort dengan nama berikut: snort.u2.nnnnnnnnnn (jumlahnya akan berbeda karena mereka didasarkan pada waktu sekarang. Snort.log.nnnnnnnnnn adalah file output yang kita Dibuat saat kami pertama kali menguji Snort. Anda dapat menghapus file itu jika Anda mau:

:~# cd

:~# cd /var/log/snort

:~/var/log/snort# ls -l /var/log/snort/

Pengerjaan:

Langkah 6.13 : Jalankan Barnyard2

Jalankan Barnyard2 dengan perintah di bawah:

:~/var/log/snort# cd

:~# barnyard2 -c /etc/snort/barnyard2.conf -d /var/log/snort -f snort.u2 -w /var/log/snort/barnyard2.waldo -g snort -u snort

Pengerjaan:

Langkah 6.14 : Cek Database MySQL

Jalankan perintah berikut untuk query database MySQL, Anda akan diminta untuk MySQL Snort user password: MySqlSNORT password (bukan password root MySQL):

(31)

Referensi

Dokumen terkait

Definisi operasional bertujuan agar tidak terjadi kesalahpahaman penafsiran terhadap istilah-istilah yang ada dalam sebuah penelitian. Adapun definisi operasional yang

Basis data dapat didefinisikan sebagai kumpualan data logis yang berhubungan dan dirancang untuk memenuhi kebutuhan informasi yang dapat digunakan pada saat yang

Dapat disimpulkan bahwa nilai rho 0,676 berarti hubungan frekuensi kunjungan Solus Per Aqua dengan kenaikan berat badan bayi di Puskesmas Gantiwarno Klaten adalah

Atas dasar penjelasan dari latar belakang diatas, maka penelitian ini bertujuan untuk meng- analisis pengaruh faktor budaya, sosial dan pribadi terhadap perilaku nasabah

Model numeris yang dikembangkan dengan persamaan momentum tersebut dapat mensimulasikan wave set down pada perairan dalam, wave setup pada perairan dangkal, dispersi dan

Folikel ovarium dan korpus luteum dengan ukuran diameter lebih dari 2 mm dapat dilihat dengan diagnosa ultrasonografi transrektum, sehingga cara ini dapat digunakan untuk

Stabilitas kimia sediaan mikrokapsul ketoprofen dilakukan dengan mengukur kadar senyawa aktif yang masih tersisa pada 9 formula secara spektrofotometri. Secara umum

Menurut Manuaba (2008; h.389) disebutkan perdarahan terjadi karena gangguan hormon, gangguan kehamilan, gangguan KB, penyakit kandungan dan keganasan genetalia. 55)