integritas suricata intrusion detection system...

21
INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM (IDS) DENGAN MIKROTIK FIREWALL UNTUK KEAMANAN JARINGAN FAKULTAS TEKNOLOGI INFORMASI UNIVERSITAS KRISTEN SATYA WACANA Artikel Ilmiah Peneliti : Oktriany Susanti Sundun (672014172) Teguh Indra Bayu, S.Kom., M.Cs. Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga 2017

Upload: phungdan

Post on 07-Mar-2019

266 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM …repository.uksw.edu/bitstream/123456789/16391/2/T1_672014172_Full... · mendeteksi dan mencengah anomaly pada sistem komputer server

INTEGRITAS SURICATA INTRUSION DETECTIONSYSTEM (IDS) DENGAN MIKROTIK FIREWALL UNTUK

KEAMANAN JARINGAN FAKULTAS TEKNOLOGIINFORMASI UNIVERSITAS KRISTEN SATYA WACANA

Artikel Ilmiah

Peneliti :Oktriany Susanti Sundun (672014172)

Teguh Indra Bayu, S.Kom., M.Cs.

Program Studi Teknik InformatikaFakultas Teknologi Informasi

Universitas Kristen Satya WacanaSalatiga

2017

Page 2: INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM …repository.uksw.edu/bitstream/123456789/16391/2/T1_672014172_Full... · mendeteksi dan mencengah anomaly pada sistem komputer server

ii

Integritas Suricata Intrusion Detection System (IDS) dengan Mikrotik Firewalluntuk Keamanan Jaringan Fakultas Teknologi Informasi Informasi Universitas

Kristen Satya Wacana

Artikel Ilmiah

Diajukan KepadaFakultas Teknologi Informasi

Untuk Memperoleh Gelar Sarjana Komputer

Peneliti :Oktriany Susanti Sundun (672014172)

Teguh Indra Bayu, S.Kom., M.Cs.

Program Studi Teknik InformatikaFakultas Teknologi Informasi

Universitas Kristen Satya WacanaSalatiga

2017

Page 3: INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM …repository.uksw.edu/bitstream/123456789/16391/2/T1_672014172_Full... · mendeteksi dan mencengah anomaly pada sistem komputer server
Page 4: INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM …repository.uksw.edu/bitstream/123456789/16391/2/T1_672014172_Full... · mendeteksi dan mencengah anomaly pada sistem komputer server
Page 5: INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM …repository.uksw.edu/bitstream/123456789/16391/2/T1_672014172_Full... · mendeteksi dan mencengah anomaly pada sistem komputer server
Page 6: INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM …repository.uksw.edu/bitstream/123456789/16391/2/T1_672014172_Full... · mendeteksi dan mencengah anomaly pada sistem komputer server
Page 7: INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM …repository.uksw.edu/bitstream/123456789/16391/2/T1_672014172_Full... · mendeteksi dan mencengah anomaly pada sistem komputer server

1

1. Pendahuluan

Keamanan jaringan adalah suatu cara atau sistem yang digunakan untukmemberikan proteksi atau perlindungan pada suatu jaringan agar dapat terhindar dariberbagai ancaman baik dari luar jaringan maupun dari dalam jaringan itu sendiri, danjuga mampu mendeteksi serangan atau penyerang secara lebih detail yang tidak hanyaterbatas pada klasifikasi protokol dan port saja. Syarat keamanan jaringan yaitu yangpertama sistem keamanan jaringan harus mampu melindungi dari segala macamserangan dan usaha-usaha penyusupan atau pemindaian oleh pihak yang tidak berhak.Kedua sistem pendeteksi penyusup harus mampu mendeteksi berbagai macamserangan dan harus mampu mengambil tindakan pada saat serangan itu terjadi. Ketigasistem harus memiliki interaktivitas dengan administrator pada saat administrator tidaksedang mengadministrasi sistemnya[1].

Fakultas Teknologi Informasi Univesitas Kristen Satya Wacana telahmenerapkan beberapa mekanisme keamanan jaringan seperti firewall mikrotik danmikrotik hotspot, namun performa dari keamanan jaringan tersebut dianggap belummemenuhi ekspetasi yang dimana ketika terjadi serangan maka administrator jaringanharus turun tangan langsung karena hal tersebut maka akan menambah pekerjaan dariadministrator jaringan dan juga akan berdampak kepada rules keamanan yang telahdibuat oleh administrator selain itu akan mempengaruhi kinerja dari sistem keamanantersebut. Rumusan masalah pada penelitian ini adalah bagaimana mendesain keamanansistem jaringan untuk Fakultas Teknologi Informasi Universitas Kristen Satya Wacanadan bagaimana cara kerja sistem IPS menggunakan suricata dan mikrotik.

Penelitian ini bertujuan melihat integritas antara suricata dengan mikrotik untukmendeteksi serangan yang berbasis port dan protokol. Adapun aplikasi yang dipakaiuntuk mendesain sistem ini adalah suricata. Suricata merupakan salah satu softwareselain snort yang mampu bekerja sebagai IDS, IPS dan monitoring. Suricata akanbekerja sebagai pihak ketiga yang membantu kinerja dari firewall mikrotik selain itudibutuhkan juga barnyard yang akan membaca file output dari suricata yang bersifatbinari dan mengirimkan log file tersebut ke dalam database. Suricata ini dibangun padalingkungan Linux Ubuntu 16.04 LTS dengan metode pendeteksian menggunakansignature-base berbasis suricata yang telah dikonfigurasi sehingga terhubung denganmikrotik.

2. Tinjauan Pustaka

Pada penelitian yang berjudul Implementasi keamanan Instrusion DetectionSystem (IDS) dan Instrusion Prevention System (IPS) menggunakan ClearOS,membahas tentang pembuatan aplikasi IDS dan IPS menggunakan ClearOS dapatmendeteksi dan mencengah anomaly pada sistem komputer server dari penyusup yangdimana banyak program exploit konsentrasi serangannya memanfaatkan firewall.Sebagai contoh, percobaan attacker untuk melakukan penetrasi melalui port 23(Telnet), tetapi policy dari firewall memblokir permintaan untuk port 23, mungkin

Page 8: INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM …repository.uksw.edu/bitstream/123456789/16391/2/T1_672014172_Full... · mendeteksi dan mencengah anomaly pada sistem komputer server

2

attacker tidak bisa melakukan telnet ke komputer target karena rule dari firewall yangketat. Ternyata, firewall mengizinkan request (permintaan) dari luar untuk port 80(http). Attacker dapat memanfaatkan port 80 untuk eksploitasi http. Ketika webservertelah berhasil dikuasai, firewall dapat dikatakan sudah di-bypass dan tidak bergunalagi [2].

Pada penelitian yang berjudul Unjuk Kerja Intrusion Prevention System (IPS)Berbasis Suircata pada Jaringan Lokal Area Network Laboratorium TIA TeknikInformatika Universitas Trunojoya, membahas tentang IPS yang dihubungkan denganInternet Protocol (IP) Tables yang berfungsi sebagai pemonitor dan pemfilter attackeryang dilengkapi dengan tampilan Guide User Interface (GUI). Hasil dari suricata akanmengeluarkan alert ketika terdeteksi adanya indikasi attacker pada traffic jaringan danlog alert disimpan pada file log suricata hal tersebut dilakukan untuk membantu dalampemantauan paket data pada jaringan dan menganalisa paket-paket tersebut dalammencegah dari hal-hal yang bersifat membahayakan jaringan [3].

Pada penelitian yang berjudul Desain dan Implementasi Honeypot denganFWsnort dan PSAD sebagai Intrusion Prevention System, membahas tentang Honeypotyang dipadu dengan IPS PSAD dan Fwsnort dapat mendeteksi adanya suatu serangandalam sistem jaringan yang tidak dapat dideteksi oleh firewall dan agar dapatmenangani suatu serangan berdasarkan alert yang telah ditampung pada file log, lalumemberikan log tentang serangan yang baru dan belum diketahui oleh sistem IPS [4].

Pada penelitian yang berjudul Analisis dan Implementasi Suricata, Snorby, danBarnyard2 pada VPS Ubuntu, membahas tentang suricata IDS yang digunakan sebagaipendeteksi aktifitas jaringan dan mengindentifikasi ancaman serangan dan suricataakan memindai setiap datagram yang dikirim pada sesi TCP dan mengubah menjadiinformasi dan dikirim pada aplikasi snorby untuk diolah lebih lagi [5].

Berdasarkan peneltian-penelitian yang pernah dilakukan terkait keamanan dariIntrusion Detection System (IDS) dan Instrusion Prevention System (IPS) danpenerapan pihak ketiga akan membantu dalam meningkatkan keamanan dalam suatujaringan. Suricata merupakan salah satu software selain snort yang dapat menjadisistem yang bertindak sebagai IDS, IPS maupun memonitoring jaringan. Sebagaimanayang telah dinyatakan dalam penelitian-penelitan tersebut, bahwa suricata mampumenjadi Intrusion Detection System (IDS) dan Instrusion Prevention System (IPS)dapat menjadi salah satu alat yang dapat membantu firewall untuk menjaga keamanandalam suatu jaringan yang berkerja berdasarkan rule. Penggunaan mikrotik jugamampu membantu kinerja dari suricata dalam melakukan tugasnya.

Intrusion Detection System (IDS) merupakan suatu sistem yang dapat memonitorlalu lintas jaringan dari aktivitas paket-paket data yang mencurigakan atau yangmelanggar aturan keamanan jaringan dan kemudian membuat laporan dari aktivitasjaringan tersebut [6]. Terdapat 3 macam konsep IDS, yaitu: Network-based IntrusionDetection System (NIDS): semua lalu lintas yang mengalir ke sebuah jaringan akandianalisis untuk mencari apakah ada percobaan serangan atau penyusup ke dalamsistem jaringan. NIDS umumnya terletak di dalam segmen jaringan penting dimanaserver berada atau terdapat pada “pintu masuk” jaringan. Host-based Intrusion

Page 9: INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM …repository.uksw.edu/bitstream/123456789/16391/2/T1_672014172_Full... · mendeteksi dan mencengah anomaly pada sistem komputer server

3

Detection System (HIDS): aktivitas sebuah host jaringan individual akan dipantauapakah terjadi sebuah percobaan serangan atau penyusup ke dalamnya atau tidak.HIDS seringnya diletakkan pada server-server kritis di jaringan, seperti halnya firewall,web server, atau server yang terkoneksi dengan internet. Distributed IntrusionDetection System (DIDS), tipe ini merupakan kombinasi sensor NIDS dan sensor HIDSdalam jaringan yang lebih besar dan kemudian mengirim log pada sistem terpusat.

Suricata adalah IDS, IPS dan monitoring engine untuk jaringan yang berkinerjatinggi. Suricata adalah open source dan dikelola oleh yayasan non-profit, OpenInformation Security Foundation (OISF). Suricata memeriksa traffic menggunakanpowerful, extensive rules, dan signature language untuk mendeteksi ancaman yangkompleks [7]. Ketika rule yang ada pada suricata diaktifkan maka suricata akanmengecek satu per satu sesuai dengan ada yang ada pada rulenya lalu suricata akanmenyimpan log tersebut pada file fast.log, barnyard merupakan salah satu sistemoutput dari suricata yang memiliki tugas penting. Suricata akan membuat binari yangdisebut unified, lalu barnyard berfungsi untuk menerjemahkan file unified tersebut lalumengirimkan kembali data tersebut ke database.

Mikrotik RouterOS adalah sistem operasi dan perangkat yang dapat digunakanuntuk menjadikan komputer menjadi router network yang handal, mencakup berbagaiyang dibuat untuk IP network dan jaringan wireless. Mikrotik sudah memiliki sistemfirewallnya sendiri. Pada mikrotik terdapat berbagai jenis Firewall diantaranya adalah[8]:1. Packet Filtering Gateway dapat diartikan sebagai firewall yang bertugas

melakukan filterisasi terhadap paket-paket yang datang dari luar jaringan yangdilindunginya. Misalnya hanya membolehkan beberapa paket yang masuk kedalam sebuah jaringan yang dilindunginya dengan memasang packet filetering.

2. Aplication Layer Gateway dapat disebut sebagai Proxy Firewall. Cara kerjanyatidak hanya memfilter berdasarkan sumber, tujuan dan atribut paket, tetapihingga isi (content) paket tersebut dapat terfilter.

3. Circuit Level Gateway model firewall ini bekerja pada bagian Lapisan transportdari model OSI TCP/IP. Firewall ini akan melakukan pengawasan terhadap awalhubungan TCP yang biasa disebut sebagai TCP Handshaking, yaitu proses untukmenentukan apakah sesi hubungan tersebut diperbolehkan atau tidak. Bentuknyahampir sama dengan Application Layer Gateway , hanya saja bagian yang difilterterdapat ada lapisan yang berbeda, yaitu berada pada layer Transport.

4. Statefull Multilayer Inspection Firewall model firewall ini adalah gabungan dariketiga jenis firewall di atas. Firewall jenis ini akan bekerja pada lapisan Aplikasi,Transport dan Internet. Dengan penggabungan ketiga model firewall yaituPacket Filtering Gateway, Application Layer Gateway dan Circuit LevelGateway, mungkin dapat dibilang firewall jenis ini adalah firewall yangmemberikan tingkat keamanan yang paling tinggi.Mikrotik RouterOS juga memiliki fasilitas logging yaitu Calea. Calea digunakan

untuk mempermudah router agar dapat menangkap dan menelusuri semua kegiatanyang terjadi pada suatu jaringan network.

Page 10: INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM …repository.uksw.edu/bitstream/123456789/16391/2/T1_672014172_Full... · mendeteksi dan mencengah anomaly pada sistem komputer server

4

Pada penelitian ini semua traffic yang ingin keluar dan masuk dalam jaringan FTIUKSW akan diarahkan ke mikrotik, sehingga mikrotik akan mengirimkan packettersebut untuk diperiksa oleh suricata. Setelah suricata memeriksa packet tersebutmaka suricata akan mengirimkan kembali ke mikrotik, sehingga ketika ada packet yangdicurigai akan ditindak lanjuti langsung oleh firewall yang ada pada mikrotik.

3. Metode Penelitian

Secara umum metode penelitian dilakukan dalam beberapa tahap yangditunjukan pada Gambar 1. Masing-masing tahapan merupakan alur dari rencanapenelitian yang mengantarkan masalah penelitian kepada tujuan penelitian.

Gambar 1 Skema Tahapan Penelitian

Tahap-tahap dalam tahapan penelitian yang ada pada Gambar 1, dijelaskansebagai berikut: Identifikasi dan perumusan masalah : Syarat keamanan jaringan yaituyang pertama sistem keamanan jaringan harus mampu melindungi dari segala macamserangan dan usaha-usaha penyusupan atau pemindaian oleh pihak yang tidak berhak.Kedua sistem pendeteksi penyusup harus mampu mendeteksi berbagai macamserangan dan harus mampu mengambil tindakan pada saat serangan itu terjadi. Ketigasistem harus memiliki interaktivitas dengan administrator pada saat administrator tidaksedang mengadministrasi sistemnya. FTI UKSW memiliki mekanisme keamananjaringan menggunakan firewall mikrotik dan mikrotik hotspot, namun nyatanya haltersebut belum memenuhi syarat dari keamanan jaringan salah satunya pada saat terjadisuatu serangan administrator jaringan harus turun tangan langsung dengan kata lainsistem tidak memiliki interaktivitas dengan administrator jaringan. Perancangan: padatahap ini dilakukan analisis permasalahan dan kebutuhan dalam perancangan yangberkaitan dengan keefektifan suatu keamanan yang nantinya akan diterapkan.Perancangan ini dimulai dari bagaimana perancang skema sistem jaringan yang akan

Identifikasi dan Perumusan masalah

Perancangan

Pengujian

Pengambilan Kesimpulan

Page 11: INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM …repository.uksw.edu/bitstream/123456789/16391/2/T1_672014172_Full... · mendeteksi dan mencengah anomaly pada sistem komputer server

5

diterapkan dalam jaringan tersebut, skema jaringan perancangan sistem IPS dapatdilihat pada Gambar 2.

Gambar 2 Skema Jaringan Perancangan IPS

Alamat jaringan 192.168.44.0/24 merupakan alamat jaringan dari IPS suricatasedangkan 192.168.45.0/24 merupakan alamat jaringan dari client. Setiap traffic yangingin masuk maupun keluar akan di mirroring ke jaringan IPS suricata untuk diperiksa.Pada saat menggunakan suricata dan mikrotik sebagai IPS ada beberapa hal yangdiperlukan seperti pada saat instalasi suricata, suricata memerlukan package maupunlibrary untuk membangun suricata dengan kemampuan IDS, selain itu dibutuhkan jugapackage untuk rules suricata karena suricata akan bekerja sesuai dengan rules tersebut,barnyard juga dibutuhkan oleh suricata untuk membaca output binari dari suricata lalubarnyard akan mengirimkan kembali ke database dan pada mikrotik dibutuhkan sebuahpaket Calea dan Opet Sniffing Tool yang digunakan untuk mendeteksi jika terjadiinsiden di jaringan (hacking). Pada file suricata.yml, bagian “vars” merupakan bagianyang penting yang digunakan pada suricata. “HOME_NET” harus mengarah kejaringan lokal untuk diperiksa oleh suricata seperti pada Kode program 1.

Kode Program 1 Sricpt suricata untuk menentukan suatu jaringan

Cara kerja suricata berdasarkan signature language untuk itu suricata memerlukanrules hal ini merupakan bagian yang digunakan sebagai acuan untuk mendeteksi suatuserangan dapat dilihat pada Kode program 2.

1. HOME_NET: “[192.168.44.0/24, 192.168.45.0/24]”

Page 12: INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM …repository.uksw.edu/bitstream/123456789/16391/2/T1_672014172_Full... · mendeteksi dan mencengah anomaly pada sistem komputer server

6

Kode Program 2 Sricpt untuk membangun suricata dengan kemampuan ids

Mode default yang digunakan oleh suricata yaitu auto flow pinned load balancing(autofp) yang dimana mode ini merupakan paket dari masing-masing aliran berbedayang ditugaskan ke satu detect thread. Perintah untuk menjalankan runmodesditunjukkan pada Kode program 3.

Kode Program 3 Sricpt suricata untuk List-runmodes

Perintah untuk menjalankan suricata ditunjukkan pada Kode program 4 sricpt untukmenjalankan suricata di pcap live mode.

Kode Program 4 Sricpt untuk menjalankan suricata

1. # /usr/bin/suricata -c /etc/suricata/suricata.yaml -i eth1 --init-errors-fatal

Ketika suricata telah berhasil untuk dijalankan, setiap log yang telah berhasil ditangkapoleh suricata akan disimpan ke dalam file fast.log lalu suricata akan membuat outputbinari yang disebut unified.alert, untuk menerjemahkan output tersebut diperlukanbarnyard sehingga ketika barnyard telah menerjemahkan output suricata, log tersebutakan disimpan ke dalam database MySQL, untuk membuat database dapat dilihat padaKode program 5

Kode Program 5 Sricpt untuk membuat database snort

1. $ mysql -u root –p2. mysql> create database snort;3. mysql> use snort;4. mysql> source ~/snort_src/barnyard2/schemas/create_mysql5. mysql> CREATE USER 'snort'@'localhost' IDENTIFIED BY 'MySqlSNORTpassword;6. mysql> grant create,insert,select,delete,update on snort.* to 'snort'@'localhost';7. mysql> exit;

Didalam file barnyard2.conf pada direktori /var/suricata/barnyard2.conf harustambahkan output database, hal ini merupakan untuk menyambungkan antarabarnyard2 dengan MySQL. Perintah yang ditambahkan dapat dilihat pada Kodeprogram 6 sricpt untuk output database barnyard

Kode Program 6 Sricpt untuk output database barnyard

1. output database:log, mysql, user=snort password=MySqlSNORTpassword dbname=snorthost=localhost

Pada Kode program 7 merupakan script untuk menjalankan barnyard2 untukmemproses setiap kejadian yang ada pada file unified.alert dan memasukkan kedalamdatabase barnyard

1. # make install-rules

1. # /usr/bin/suricata --list-runmodes

Page 13: INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM …repository.uksw.edu/bitstream/123456789/16391/2/T1_672014172_Full... · mendeteksi dan mencengah anomaly pada sistem komputer server

7

Kode Program 7 Sricpt untuk menjalankan barnyard

1. sudo barnyard2 -c /etc/suricata/barnyard2.conf -d /var/log/suricata -funified2.alert -w /var/log/suricata/barnyard2.waldo –g suricata –u suricata

Agar suricata dan mikrotik dapat saling berkomunikasi diperlukan perantara sebagaipenghubung antara suricata dan mikrotik yaitu ips-mikrotik-suricata. Pada Kodeprogram 8 merupakan perintah untuk memasang ips-mikrotik-suricata pada server

Kode Program 8 Sricpt untuk ips-mikrotik-suricata

1. git clone https://github.com/elmaxid/ips-mikrotik-suricata.git

Didalam file config.php yang berada pada direktori /opt/ips-mikrotik-suricatadalam file tersebut ada beberapa bagian yang harus diedit, yaitu :

$user__name = merupakan user name yang digunakan untuk login kedalam database

$password = merupakan password yang digunakan oleh user untuk loginke database

$database = merupakan nama dari database yang akan menyimpan logsuricata

$server = merupakan server dari database yang digunakan $router[‘ip’] = ip dari router yang akan digunakan sebagai IDS dari suricata $router[‘user’] = user dari router $router[‘password’] = password router

Pada Kode program 9 merupakan perintah untuk mengecek apakah database MySQLdan API Mikrotik RouterOS telah terkoneksi dengan baik atau tidak.

Kode Program 9 Sricpt untuk mengecek Database dan API Mikrotik RouterOS

1. php –f mikrotik-ips-install.php

Pada konfigurasi mikrotik, yang dibutuhkan adalah memonitoring kondisi jaringan.Monitoring yang diimplementasikan pada kasus ini adalah menggunakan fitur portmirroring.

Page 14: INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM …repository.uksw.edu/bitstream/123456789/16391/2/T1_672014172_Full... · mendeteksi dan mencengah anomaly pada sistem komputer server

8

Gambar 4 Tools Sniffer

Pada sisi mikrotik untuk mengaktifkan tools packet sniffer pada bagian streamingenable harus dicentang hal tersebut dapat dilihat pada Gambar 4. Semua jaringan yangterhubung ke router mikrotik akan dimirror untuk melakukan pembelokkan lalu lintasyang dari port A ke port IDS eksternal agar semua lalu lintas data dari port A dapatdibaca dan diperiksa oleh IDS eksternal, lalu paket tersebut akan diteruskan ketujuannya. Hal ini juga diperlukan untuk membuat schedule apabila IDS eksternalmenangkap adanya paket data yang dianggap berbahaya bagi jaringan, maka mikrotikdengan otomatis akan memasukkan ke dalam daftar firewall, script tersebut dapatdilihat pada Kode program 10.

Kode Program 9 Sricpt schedule IDS eksternal

1. :local currentTime [/system clock get time]2. foreach i in=[/ip firewall address-list find list=blacklist] do={:local comment[/ipfirewall address-list get $i comment]3. :local ip [/ip firewall address-list get $i address]4. :if ( $comment < $currentTime ) do={/ip firewall address-list remove [findaddress=$ip]5. }6. }

Kode program 10 merupakan script untuk menambahkan beberapa IP, yang ditentukanoleh ip global ke daftar firewall yang dimana /ip firewall filter add src-address-list=blackist action=reject merupakan aturan untuk memberikan aksi dari alamat yangtelah masuk ke dalam daftar blacklist.

Kode Program 10 Sricpt Mikrotik

1. : ip global2. local time ([/system clock get time]+(“00:05:00”))3. if ($time > “23:59:59”) do={: local time “00:05:00” }4. /ip firewall address-list add list=blacklist address=$ip comment=$time5. /ip firewall filter add src-address-list=blacklist action=reject

Pada Kode program 11 dimulai dari baris 30 sampai 49 merupakan script untukmengambil log yang telah ditangkap oleh suricata untuk dimasukkan pada sisi firewallmikrotik.

Page 15: INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM …repository.uksw.edu/bitstream/123456789/16391/2/T1_672014172_Full... · mendeteksi dan mencengah anomaly pada sistem komputer server

9

Kode Program 11 Sricpt untuk suricata_block.php

1. <?php2. ...30. function AddToFirewall($thisrow) {31. global $local_ip_prefix, $API, $mikrotik_addr, $mikrotik_user, $mikrotik_pwd,

$email_to, $email_from, $email_alert;32. if (strpos($thisrow['que_ip_adr'], $local_ip_prefix) !== true) {33. /* Does not match local address... */34. /* See if the address is already in the firewall list, if so delete it so we

can read it with a new timeout */35. try {$API->connect($mikrotik_addr, $mikrotik_user, $mikrotik_pwd);36. } catch (Exception $e) { die('Unable to connect to RouterOS. Error:' . $e);}37. $ARRAY = $API->comm("/ip/firewall/address-list/print", array(38. ".proplist"=> ".id","?address" => $thisrow['que_ip_adr'],));39. foreach ($ARRAY as $a) {40. foreach ($a as $name => $value) { $API->write("/ip/firewall/address-

list/remove",false); $API->write("=.id=$value",true); $API->read(); }}41. if (array_key_exists('que_remaining', $thisrow))42. { $timeremaining = $thisrow['que_remaining']; }43. else{ $timeremaining = $thisrow['que_timeout']; }44. $API->comm("/ip/firewall/address-list/add", array(45. "list" => "blacklist",46. "address" => $thisrow['que_ip_adr'],47. "timeout" => $timeremaining,48. "comment" => "From suricata, " . $thisrow['que_sig_name'] . " => " .

$thisrow['que_sig_gid'] . ":" . $thisrow['que_sig_sid'] ." => event timestamp: ". $thisrow['que_event_timestamp'],));

49. $API->disconnect();98. ...99. ?>

Kode Program 12 merupakan script untuk menjalankan mikrotik, jika mikrotik tersebutakan reboot sebagai keadaan default untuk packet sniffer.

Kode Program 12 Sricpt untuk menjalankan packet sniffer pada mikrotik sebagai keadaan default

1. <?php2. require('routeros_api.class.php');3. header('Content-Type: text/plain');4. $API = new RouterosAPI();5. /* $API->debug = true; */6. try {7. $API->connect('192.168.68.253', 'username', 'password');8. } catch (Exception $e) {9. die('Unable to connect to RouterOS. Error:' . $e);10. }11. $ARRAY = $API->comm("/tool/sniffer/start");12. $API->disconnect();13. ?>

Kode Program 13 Sricpt untuk menjalankan suricata dan sniffer mikrotik

1. trafr -s | suricata -c /etc/suricata/suricata.yaml -r -

Page 16: INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM …repository.uksw.edu/bitstream/123456789/16391/2/T1_672014172_Full... · mendeteksi dan mencengah anomaly pada sistem komputer server

10

Pada Kode program 13 merupakan perintah untuk menjalankan suricata dan sniffermikrotik secara bersamaan. Pengujian: pada tahap ini dilakukan pengujian terhadapsistem keamanan yang telah diimplementasikan dengan cara mencoba untukmelakukan suatu serangan ICMP dan ICMP Flooding terhadap jaringan yang telahditerapkan sistem keamanan suricata, selain itu digunakan juga serangan port scan.Pengambilan Kesimpulan: pada tahap ini dilakukan pengambilan kesimpulan daripenelitian yang telah dilakukan lalu dituangkan dalam bentuk laporan penelitian.

4. Hasil dan Pembahasan

Pada penelitian ini menggunakan suricata dengan versi 4.0.0-dev (rev 2075953)dan menggunakan barnyard2 dengan versi 2.1.14 (Build 337) hal tersebut dibuktikanpada Gambar 5

Gambar 5 Versi Suricata dan Barnyard2

Pada file suricata.yml yang berfungsi untuk menentukan jaringan apa saja yangakan dipantau, rule apa saja yang akan dijalankan oleh suricata dan peletakkan outputyang telah didapatkan oleh suricata. File suricata.yml berada pada direkoti /etc/suricata.Terdapat beberapa bagian utama pada file suricata.yml, yaitu :1. Bagian pertama adalah informasi tentang network, bagian ini menunjukkan

alamat jaringan yang akan dipantau oleh suricata. HOME_NET pada hal inimenggunakan alamat jaringan 192.168.44.0/24 dan juga 192.168.45.0/24 danpada EXTERNAL_NET menggunakan alamat jaringan 192.168.45.0/24 hal inidikarenakan jaringan yang ingin dipantau adalah dalam jaringan IDS192.168.44.0/24 dan juga jaringan client 192.168.45.0/24, dan apabila antaraclient akan melakukan attacker akan terdeteksi oleh suricata.

2. Bagian kedua adalah rules apa yang nantinya akan diterapkan oleh suricataterhadap jaringan yang akan dipantau yang telah dipasang sebelumnya dapatdilihat pada Kode program 2. Ada banyak rules yang dimiliki oleh suricatanamun pada penelitian kali ini rules yang digunakan adalah rules untukmendeteksi serangan icmp.

3. Bagian ketiga adalah peletakkan output ketika telah menjalankan suricata, agarbarnyard dapat membaca file unified.alert dari suricata maka pada bagian inimerupakan output untuk barnyard2 agar barnyard dapat menjalankan tugasnya.

4. Bagian keempat adalah bagian pengaturan tambahan, misalnya saja untuk pcapingin diaktifkan pada interface apa, dan sebagainya.

Page 17: INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM …repository.uksw.edu/bitstream/123456789/16391/2/T1_672014172_Full... · mendeteksi dan mencengah anomaly pada sistem komputer server

11

5. Bagian kelima adalah bagian untuk konfigurasi protokol yang berfungsi untukmemantau protokol apa saja yang akan diaktifkan pada bagian suricata.Didalam file stats.log akan berisi tentang informasi suricata berjalan dengan baik

atau tidak. Apabila suricata berjalan dengan baik, maka informasi yang ada pada filestats.log akan ditampilkan sesuai dengan real-time, dibagian date merupakan tanggaldan waktu ketika suricata dijalankan, hal tersebut dibuktikan pada Gambar 6. Filestats.log berada pada direktori /var/log/suricata.

Gambar 6 Isi file stats.log

Pada Kode program 6 merupakan script untuk membuat database barnyarddengan nama snort karena barnyard2 bekerja dengan cara membaca output binari darisuricata lalu log tersebut akan disimpan ke database MySQL, untuk itu diperlukannyamembuat database MySQL. Selain itu, log yang telah disimpan oleh banyard padadatabase MySQL akan dibaca oleh mikrotik agar mikrotik dapat mengambil tindakanterhadap log alert tersebut. Kode program 7 merupakan perintah untuk menjalankanbarnyard. Berikut merupakan penjelasan tentang Kode program 7, yaitu :

Barnyard2 : Flag -c /etc/suricata/barnyard2.conf : menggunakan konfigurasi yang ada pada

barnyard2.conf -d /var/log/suricata : folder untuk mencari file output suricata -f unified2.alert : nama file yang akan dicari di direktori di atas

(unified2.alert.nnnnnnnnnn) -w /var/log/suricata/barnyard2.waldo : lokasi file waldo (file bookmark) -u suricata : menjalankan Barnyard2 sebagai pengguna berikut setelah

startup -g suricata : menjalankan Barnyard2 sebagai grup berikut setelah startup

Page 18: INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM …repository.uksw.edu/bitstream/123456789/16391/2/T1_672014172_Full... · mendeteksi dan mencengah anomaly pada sistem komputer server

12

Pada konfigurasi ips-mikrotik-suricata ada 5 file utama yang sangat diperlukandalam konfigurasi tersebut, yaitu :

Config.php : berisikan konfigurasi login database dan Router Mikrotik-ips-daemon_db.php : merupakan file yang terhubung dengan

MySQL database dan mendeteksi pola peringatan, lalu disimpan kedatabase untuk memblokirnya

Mikrotik-ips-cron.php : merupakan file yang terhubung dengan mikrotikyang berfungsi untuk mengambil peringatan dan menambahkan alamat IPke dalam daftar (ip firewall address-list) untuk memblokir IP tersebut.

Mikrotik-ips-clean.php : file yang berfungsi untuk maintance dan cleandatabase

Mikrotik-ips-install.php : file untuk instalasi dan konfigurasi

Ketika database MySQL dengan API Mikrotik RouterOS telah terkoneksidengan menjalankan Kode program 9 maka akan keluar keterangan bahwa ConnectOK untuk DB MySQL dan API Mikrotik RouterOS hal tersebut dibuktikan padaGambar 7

Gambar 7 cek DB Connection dengan API Login

Mikrotik juga membutuhkan software Trafr. Software Trafr berfungsi untukmembaca traffic snifer berbasis Linux, selain itu untuk mengecek sniffer mikrotik dapatmenggunakan tcpdump. Tcpdump akan mengambil paket sniffer dari lalu lintasmikrotik. Sehingga, ketika tcpdump tidak berhasil mendapatkan paket maka adakemungkinan bahwa ada yang salah dengan pengaturan mikrotik atau paket yangdisaring/diblokir.

Cara kerja sistem suricata dan mikrotik dalam mengolah serangan yaitu awalnyamikrotik akan bekerja untuk memirror packet yang akan masuk maupun keluarjaringan, packet tersebut dimirrorkan ke alamat jaringan IDS eksternal yaitu192.168.44.130, lalu suricata akan memeriksa packet yang telah dimirror dari mikrotik.Setiap packet akan diperiksa berdasarkan rules yang ada pada suricata. Packet yangmencurigakan maka akan disimpan pada file fast.log dan juga suricata akan membuatoutput binari, output binari tersebut akan diterjemahkan oleh barnyard. Ketikabarnyard telah berhasil menerjemahkan file output tersebut, maka akan disimpankedalam database MySQL dengan bantuan software ips-mikrotik-suricata dan jugascript php yang ada pada Kode program11 mikrotik akan mengambil log dari database

Page 19: INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM …repository.uksw.edu/bitstream/123456789/16391/2/T1_672014172_Full... · mendeteksi dan mencengah anomaly pada sistem komputer server

13

tersebut lalu melakukan tindakan terhadap serangan tersebut. Alur cara kerja sistemdapat dilihat pada Gambar 8.

Gambar 8 Cara Kerja Sistem

Kode Program 14 Sricpt hasil dari suricata

1. 11/08/2017-10:27:18.962766 [**] [1:2010937:2] ET POLICY Suspicious inbound toMySQL port 3300 [**] [Classification: Potentially Bad Traffic] [Priority: 2]{TCP} 192.168.45.1:45976-> 192.168.44.130:3306

2. 11/08/2017-10:27:18.977216 [**] [1:200290:2] ET SCAN Potential VCN Scan 5800-5820 [**] [Classification: Attempted Information Leak] [Priority: 2] {TCP}192.168.45.1:45976-> 192.168.44.130:5811

3. 11/08/2017-10:27:18.977114 [**] [1:2010935:2] ET POLICY Suspicious inbound toMSSQL port 1433 [**] [Classification: Potentially Bad Traffic] [Priority: 2]{TCP} 192.168.45.1:45976-> 192.168.44.130:1433

Page 20: INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM …repository.uksw.edu/bitstream/123456789/16391/2/T1_672014172_Full... · mendeteksi dan mencengah anomaly pada sistem komputer server

14

Pada Kode program 14 merupakan salah satu hasil capture yang ditangkap olehsuricata ketika attacker sedang melakukan port scan. Output yang akan keluar ialahkapan serangan itu terjadi, jam berapa, menampilkan alamat ip yang melakukanserangan dan juga yang diserang, port yang digunakan oleh si penyerang, selain itujuga akan menampilkan serangan apa yang digunakan. Pada Kode program 14menunjukkan bahwa pada tanggal 08 November 2017 jam 10:27:18 adanya seranganyang masuk ke MySQL berpotensi tergolong dalam bad traffic yang dilakukan oleh ip192.168.45.1 menggunakan port 45976 kepada 192.168.44.130 dengan port 3306

Gambar 9 Hasil dari Mikrotik

Ketika suricata telah berhasil menangkap log serangan yang dilakukan olehattacker, log tersebut akan disimpan pada database barnyard lalu mikrotik akanmengambil log tersebut dengan bantuan ips-mikrotik-suricata dan juga dengan adanyaKode program 11, sehingga pada sisi mikrotik bagian firewall - address list akanmuncul dengan ip 192.168.45.1, dan mikrotik akan melakukan tindakan blacklistterhadap log tersebut, hal tersebut dibuktikan pada Gambar 9.

5. Simpulan

Berdasarkan penelitian yang berjudul Integritas Suricata Intrusion DetectionSystem (IDS) dengan Mikrotik Firewall untuk Keamanan Jaringan Fakultas TeknologiInformasi Universitas Kristen Satya Wacana dapat disimpulkan bahwa:1. Penelitian ini menjelaskan bahwa desain untuk sistem keamanan jaringan

membutuhkan konfigurasi dari firewall Demilitarized Zone (DMZ) dalam hal inimikrotik bekerja untuk membuat semua paket yang akan masuk dan keluarjaringan harus melalui suricata, sehingga suricata akan memeriksa paket tersebutdan ketika ada paket yang termasuk dalam paket yang dicurigai oleh suricata,firewall mikrotik akan mengambil alih untuk melakukan tindakan pada pakettersebut.

2. Suricata bekerja berdasarkan signature-base, setiap packet akan diperiksaberdasarkan rules yang ada pada suricata. Suricata akan mengeluarkan sebuahoutput binari yang disebut unified.alert, output tersebut akan diterjemahkan olehbarnyard lalu disimpan ke database, dengan adanya bantuan dari ips-mikrotik-suricata dan juga script php akan membantu mikrotik untuk mengambil log yangada pada database barnyard, agar mikrotik dapat melakukan aksi pada logtersebut.

Page 21: INTEGRITAS SURICATA INTRUSION DETECTION SYSTEM …repository.uksw.edu/bitstream/123456789/16391/2/T1_672014172_Full... · mendeteksi dan mencengah anomaly pada sistem komputer server

15

6. Daftar Pustaka

[1] Candra, S., Bayu, 2010. Analisis Penerapan Jaringan Keamanan MenggunakanIDS dan Honeyport. Semarang: Jurusan Fakultas Ilmu Komputer UniversitasDian Nuswantoro.

[2] Alamsyah, 2011. Implementasi Keamanan Instrusion Detection System (IDS)dan Instrusion Prevention System (IPS) menggunakan ClearOS. Palu : JurusanTeknik Elektro Universitas Tadulako, 9,223-229.

[3] Kuswanto, D., 2014. Unjuk Kerja Intrusion Prevention System (IPS) berbasisSuricata pada Jaringan Local Area Network Laboratorium TIA TeknikInformatika Universitas Trunojoyo.http://nero.trunojoyo.ac.id/index.php/nero/article/download/39/37, Diaksestanggal 13 Agustus 2017

[4] Tambunan, B., Raharjo, W. S., Purwadi, J., 2013. Desain dan ImplementasiHoneypot dengan Fwsnort dan PSAD sebagai Intrusion PreventionSystem.Yogyakarta : Jurusan Fakultas Teknologi Informasi Universitas KristenDuta Wacana.

[5] Nuryanto, A., Kusban, M., 2015. Analisis dan Implementasi Suricata, Snorby,dan Barnyard2 pada VPS Ubuntu.http://eprints.ums.ac.id/36497/1/NASKAH%20PUBLIKASI.pdf, Diaksestanggal 13 Agustus 2017

[6] Alder, R., Babbin, J., Beale, J., Doxtater, A., Foster, J., Kohlenberg, T., Rash, M.2004. Snort2.1 Intrusion Detection Second Edition. Rockland, MA:SysngressPublishing, Inc.

[7] Suricata, 2015. https://suricata-ids.org/. Diakses tanggal 13 Agustus 2017 .[8] Mikrotik, 2017. Miktrotik. http://www.mikrotik.co.id/, Diakses tanggal 13

Agustus 2017[9] Memahami Jenis-jenis Firewall Yang ada dalam Mikrotik. 2015.

https://www.thegeekslearn.com/memahami-jenis-jenis-firewall-yang-ada-dalam-mikrotik/, Diakses tanggal 14 November 2017.

[10] Ubaidilah, Y., 2014. Analisis Performa Memori Server Menggunakan IDSSuricata. http://digilib.uin-suka.ac.id/13295/1/BAB%20I%2C%20IV%2C%20DAFTAR%20PUSTAKA.pdf, Diakses tanggal 13 Agustus 2017

[11] Wikipedia, 2017. Sistem Deteksi Intrusi.https://id.wikipedia.org/wiki/Sistem_deteksi_intrusi, Diakses tanggal 13Agustus 2017

[12] Wardani, K., Tanti, Riyanti, M., Mustika, Mahatma, C., Viddy. 2014. AplikasiIntrusion Detection System: Analisa dan Simulasi Software Suricata. UniversitasParadima Program Studi Teknik Informatika.

[13] How to setup a Mikrotik RouterOS witf Suricata as IDS.https://robert.penz.name/849/howto-setup-a-mikrotik-routeros-with-suricata-as-ids/, Diakses tanggal 14 November 2017