• Tidak ada hasil yang ditemukan

Membandingkan kemampuan deteksi Intrusion Detection System (IDS) snort dan suricata berbasis aturan/rules standar pengembang.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Membandingkan kemampuan deteksi Intrusion Detection System (IDS) snort dan suricata berbasis aturan/rules standar pengembang."

Copied!
112
0
0

Teks penuh

(1)

Keamanan merupakan salah satu hal yang diperlukan ketika sedang melakukan suatu kegiatan. Dengan adanya rasa aman yang terjamin, kegiatan yangsedang dialakukan bisa berjalan dengan lancer tanpa adanya rasa takut. Begitu pula dengan keamanan pada jaringan komputer yang dibutuhkan ketika sedang menggunakan komputer yang terhubung dengankoneksi internet. Ancaman terhadap keamanan jaringan komputer selalu ada, tetapi ancaman tersebut dapat diatasi apabila serangan tersebut bisa diketahui terlebih dahulu dengan menggunakan Intrusion Detection System atauIDS. IDS open source yang popular adalah Snort. Selain Snort ada IDS open source yang juga memiliki kemiripan dengan Snort, yaitu Suricata yang masih tergolong baru.

Untuk membandingkan kemampuan pendeteksian antara Snort dan Suricata, penulis menggunakan perangkat keras yang sama. Pengujian dilakukan dengan melakukan percobaan serangan menggunakan tools pengujian bernama Pytbull. Serangan yang digunakan adalah sama, yaitu dengan serangan dan jumlah serangan yang sama.

Dari hasil pengujian, diperoleh hasil yaitu Snort dapat mendeteksi lebih banyak daripada Suricata meskipun menggunakan sumber daya komputer yang sedikit. Sedangkan Suricata, meskipun masih tergolong baru, juga dapat mendeteksi percobaan serangan yang dilancarkan oleh Pytbull meskipun membutuhkan sumber daya komputer yang lebih banyak daripada Snort.

(2)

Security is one of the things that are required when doing an activity. With their sense of security is assured, activities underway could run smoothly without any fear. Similarly, the security of the computer network is required when using a computer connected to the internet connection. Threats to the security of computer networks have always existed, but the threat can be overcome if the attack can be known in advance by using Intrusion Detection System or IDS. The popular open source IDS is Snort. In addition there Snort open source IDS which also has similarities with Snort, that Suricata is still relatively new.

To compare the detectability between Snort and Suricata, the author uses the same hardware. Testing is done by experimenting attacks using testing tools called Pytbull. The attack used is the same, namely the attack and the number of the same attack.

From the test results, obtained results that Snort can detect more than Suricata despite using little computer resources. While Suricata, although still relatively new, it can also detect attempted attacks launched by Pytbull although it requires more computer resources than Snort.

(3)

i

MEMBANDINGKAN KEMAMPUAN DETEKSI INTRUSION

DETECTION SYSTEM (IDS) SNORT DAN SURICATA

BERBASIS ATURAN/RULES STANDAR PENGEMBANG

SKRIPSI

Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer

Program Studi Teknik Informatika

Oleh :

Benedictus Yoga Pradana 095314040

HALAMAN JUDUL

PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA YOGYAKARTA

(4)

ii

COMPARING DETECTION CAPABILITY OF SNORT AND

SURICATA INTRUSION DETECTION SYSTEM (IDS) BASED

ON DEVELOPER’S STANDARD RULES

A Thesis

Presented as Partial Fulfillment ofThe Requirements to Obtain Sarjana Komputer Degree

in Informatics Engineering

By :

Benedictus Yoga Pradana 095314040

INFORMATICS ENGINEERING STUDY PROGRAM INFORMATICS ENGINEERING DEPARTMENT

FACULTY OF SCIENCE AND TECHNOLOGY SANATA DHARMAUNIVERSITY

(5)

iii

HALAMAN PERSETUJUAN

SKRIPSI

MEMBANDINGKAN KEMAMPUAN DETEKSI INTRUSION DETECTION SYSTEM (IDS) SNORT DAN SURICATA BERBASIS

ATURAN/RULES STANDAR PENGEMBANG

Oleh:

Benedictus Yoga Pradana NIM: 095314040

Telah disetujui Oleh:

Pembimbing

(6)

iv

ALAMAN PENGESAHAN

SKRIPSI

MEMBANDINGKAN KEMAMPUAN DETEKSI INTRUSION DETECTION SYSTEM (IDS) SNORT DAN SURICATA BERBASIS

ATURAN/RULES STANDAR PENGEMBANG Dipersiapkan dan ditulis oleh

Benedictus Yoga Pradana NIM: 095314040

Telah dipertahankan di depan Panitia Penguji pada tanggal 17 Desember 2015 dan dinyatakan memenuhi syarat

Susunan Panitia Penguji

Nama Lengkap Tanda Tangan

Ketua Puspaningtyas Sanjoyo Adi, S.T., M.T. ... Sekretaris Henricus Agung Hernawan, S.T., M.Kom. ... Anggota Iwan Binanto, S.Si., M.Cs. ...

Yogyakarta,

Fakultas Sains dan Teknologi Universitas Sanata Dharma Dekan,

(7)

v

PERNYATAAN KEASLIAN KARYA

Dengan ini, saya menyatakan dengan sesungguhnya bahwa skripsi yang saya tulis ini tidak memuat karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka, sebagaimana layaknya karya ilmiah.

Yogyakarta, 14Januari 2016

Penulis

(8)

vi

PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS

Yang bertanda tangan dibawah ini, saya mahasiswa Universitas Sanata Dharma: Nama : Benedictus Yoga Pradana

NIM : 095314040

Demi pengembangan ilmu pengetahuan, saya memberikan kepada perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul:

“Membandingkan Kemampuan Deteksi Intrusion Detection System (IDS) Snort dan Suricata Berbasis Aturan/Rules Standar Pengembang”

Bersama perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikannya secara terbatas, mempublikasikannya di internet atau media lain untuk kepentingan akademis tanpa perlu memberikan royalti kepada saya selama tetap mencantumkan nama saya sebagai penulis. Demikian pernyataan ini saya buat dengan sebenarnya.

Yogyakarta, 14 Januari 2016

Penulis

(9)

vii

HALAMAN MOTTO

Marilah kepada-Ku, semua yang letih lesu dan berbeban berat, Aku akan memberi kelegaan kepadamu

(Matius 11:28)

“Semakin tua umur seseorang maka yang dianggapnya teman akan semakin

sedikit”

(10)

viii

HALAMAN PERSEMBAHAN

Segala hasil kerja keras ini saya persembahkan kehadirat Tuhan

Yesus Kristus, yang selalu menuntunku ke jalan yang terang

Kedua Orangtua (Ayah Rudatin Biratno dan Ibu LG

Yusinta) yang senantiasa memberikan dukungan, cinta, dan kasih

sayang yang tulus dalam membimbing dan mendidik saya.

Sahabat dan teman

teman di kampus Universitas Santa

Dharma dan sekitar kampus

Kepada pada dosen yang telah banyak memberi ilmu dan

(11)

ix ABSTRAK

Keamanan merupakan salah satu hal yang diperlukan ketika sedang melakukan suatu kegiatan. Dengan adanya rasa aman yang terjamin, kegiatan yangsedang dialakukan bisa berjalan dengan lancer tanpa adanya rasa takut. Begitu pula dengan keamanan pada jaringan komputer yang dibutuhkan ketika sedang menggunakan komputer yang terhubung dengankoneksi internet. Ancaman terhadap keamanan jaringan komputer selalu ada, tetapi ancaman tersebut dapat diatasi apabila serangan tersebut bisa diketahui terlebih dahulu dengan menggunakan Intrusion Detection System atauIDS. IDS open source yang popular adalah Snort. Selain Snort ada IDS open source yang juga memiliki kemiripan dengan Snort, yaitu Suricata yang masih tergolong baru.

Untuk membandingkan kemampuan pendeteksian antara Snort dan Suricata, penulis menggunakan perangkat keras yang sama. Pengujian dilakukan dengan melakukan percobaan serangan menggunakan tools pengujian bernama Pytbull. Serangan yang digunakan adalah sama, yaitu dengan serangan dan jumlah serangan yang sama.

Dari hasil pengujian, diperoleh hasil yaitu Snort dapat mendeteksi lebih banyak daripada Suricata meskipun menggunakan sumber daya komputer yang sedikit. Sedangkan Suricata, meskipun masih tergolong baru, juga dapat mendeteksi percobaan serangan yang dilancarkan oleh Pytbull meskipun membutuhkan sumber daya komputer yang lebih banyak daripada Snort.

(12)

x ABSTRACT

Security is one of the things that are required when doing an activity. With their sense of security is assured, activities underway could run smoothly without any fear. Similarly, the security of the computer network is required when using a computer connected to the internet connection. Threats to the security of computer networks have always existed, but the threat can be overcome if the attack can be known in advance by using Intrusion Detection System or IDS. The popular open source IDS is Snort. In addition there Snort open source IDS which also has similarities with Snort, that Suricata is still relatively new.

To compare the detectability between Snort and Suricata, the author uses the same hardware. Testing is done by experimenting attacks using testing tools called Pytbull. The attack used is the same, namely the attack and the number of the same attack.

From the test results, obtained results that Snort can detect more than Suricata despite using little computer resources. While Suricata, although still relatively new, it can also detect attempted attacks launched by Pytbull although it requires more computer resources than Snort.

(13)

xi

KATA PENGANTAR

Puji syukur kepada Allah Bapa yang Maha Kuasa atas segala karunia, rahmat dan bimbingan yang diberikan sehingga penulis dapat menyelesaikan skripsi “Membandingkan Kemampuan Deteksi Intrusion Detection System (IDS) Snort dan Suricata Berbasis Aturan/Rules Standar Pengembang”.

Dalam menyelesaikan skripsi ini, penulis tidak lepas dari bantuan sejumlah pihak, oleh sebab itu penulis ingin mengucapkan terima kasih kepada:

1. Allah Bapa yang Maha Kuasa, yang telah menjawab doa, menuntunku dan mencurahkan rahmat dengan perantaraan Bunda Maria dan Yesus Kristus sehingga penulis dapat menyelesaikan skripsi ini.

2. Ibu Paulina Heruningsih Prima Rosa, S.Si, M.Sc. selaku Dekan Fakultas Sains dan Teknologi.

3. Ibu Dr. Anastasia Rita Widiarti, M.Kom. selaku Ketua Program Studi Teknik Informatika.

4. Bapak Iwan Binanto, M.Cs. selaku dosen pembimbing skripsi yang telah membantu dalam proses pengerjaan skripsi ini

5. Bapak Puspaningtyas Sanjoyo Adi, S.T., M.T.dan Bapak H.Agung Hernawan,S.T., M.Kom yang telah bersedia menjadi penguji penulis. 6. Kedua orangtua dan kakak yang senantiasa memberikan dukungan dalam

bentuk doa, materi, semangat, inspirasi, cinta, dan kasih sayang yang tulus selama ini

7. Sahabat – sahabat seperjuangan yang telah memberi semangat Bion, Aan, Gunung, Jerry, Endrik, Cahyo

8. Teman – teman dari burjo Mandiri, Mbah Sardi, Memet, Sinto, dan Petor yang telah menyediakan konsumsi dan tempat untuk berkumpul.

9. Teman-teman “Clan COC Jawara Dunia” atas keceriaan dan semangatnya 10.Untuk pihak-pihak yang tidak dapat penulis sebutkan satu per satu. Penulis

(14)

xii menyelesaikan karya ilmiah ini

Akhir kata, penulis berharap karya ilmiah ini dapat bermanfaat bagi kemajuan dan perkembangan ilmu pengetahuan.Penulis juga meminta maaf kepada semua pihak bila ada kesalahan atau hal-hal yang kurang berkenan. Tuhan memberkati. Amin

Yogyakarta, 14 Januari2016

(15)

xiii DAFTAR ISI

HALAMAN JUDUL ... i

HALAMAN PERSETUJUAN ... iii

HALAMAN PENGESAHAN ... iv

PERNYATAAN KEASLIAN KARYA ... v

PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS ... vi

HALAMAN MOTTO ... vii

HALAMAN PERSEMBAHAN ... viii

ABSTRAK ... ix

ABSTRACT ... x

KATA PENGANTAR ... xi

DAFTAR ISI ... xiii

DAFTAR GAMBAR ... xvii

DAFTAR TABEL ... xviii

BAB I ... 1

PENDAHULUAN ... 1

1.1. Latar Belakang Masalah ... 1

1.2. Rumusan Masalah ... 4

1.3. Tujuan dan Manfaat Penelitian ... 4

1.4. Batasan Masalah ... 4

1.5. Metodologi Penelitian ... 5

1.6. Sistematika Penulisan ... 6

BAB II ... 8

LANDASAN TEORI ... 8

2.1. Pengertian Keamanan ... 8

2.2. Jaringan Komputer ... 8

2.2.1. Jenis Jaringan Komputer ... 9

2.2.2. Topologi jaringan ... 11

(16)

xiv

2.4. Firewall ... 12

2.5. IDS ... 14

2.5.1. Jenis – jenis IDS ... 14

2.5.2. Cara kerja IDS ... 16

2.5.3. Fungsi IDS ... 18

2.5.4. Penempatan IDS ... 18

2.6. Snort ... 20

2.6.1. Tentang Snort ... 20

2.6.2. Fungsi Snort ... 21

2.6.3. Mode Snort ... 21

2.6.4. Cara kerja Snort... 22

2.7. Suricata ... 24

2.7.1. Tentang Suricata... 24

2.7.2. Fitur Suricata ... 24

2.8. Oinkmaster ... 26

2.9. Pytbull ... 27

2.9.1. Tentang Pytbull ... 27

2.9.2. Remote Mode ... 30

2.9.3. Local Mode ... 30

2.9.3.1. IDS mode with attacked server in DMZ ... 30

2.9.3.2. IPS mode ... 30

2.9.3.3. IPS mode with attacked server in DMZ... 30

2.10. Contoh Serangan ... 31

2.10.1. Test Rules ... 31

2.10.2. Brute Force ... 31

2.10.3. Evasion Techniques ... 32

2.10.4. Shell Codes Attack ... 33

2.10.5. Bad Traffic: ... 34

2.10.6. Client Side Attacks ... 34

2.10.7. Denial Of Service ... 35

(17)

xv

2.10.9. Normal Usage ... 35

2.10.10. Pcap Replay ... 36

BAB III ... 37

PERANCANGAN ... 37

3.1. Perencanaan Awal ... 37

3.2. Topologi Jaringan ... 38

3.3. Rancangan IDS ... 40

3.4. Client ... 41

3.5. Web-Server ... 42

3.6. Skenario Pengujian ... 42

3.7. Kehandalan ... 45

BAB IV ... 46

IMPLEMENTASI DAN ANALISIS ... 46

4.1. Instalasi Ubuntu ... 46

4.2. Instalasi IDS ... 47

4.2.1. Instalasi Snort ... 47

4.2.2. Konfigurasi Snort ... 50

4.2.3. Instalasi Suricata ... 52

4.2.4. Konfigurasi Suricata... 52

4.3. Pytbull ... 54

4.3.1. Instalasi Pytbull ... 54

4.3.1.1. Instalasi Standar (Client) ... 54

4.3.1.2. Server ... 55

4.3.2. Menjalankan Pytbull ... 56

4.3.3. Konfigurasi Pytbull ... 58

4.4. Pemilihan Modul Pengujian Pytbull ... 59

4.5. Instalasi web server ... 67

4.6. Instalasi Oinkmaster ... 67

4.7. Hasil Pengujian ... 68

4.8. Analisa Pengujian ... 71

(18)

xvi

4.8.2. Skenario 2 ... 77

4.8.3. Skenario 3 ... 83

4.9. Analisa Hasil ... 88

BAB V ... 90

KESIMPULAN DAN SARAN ... 90

5.1. KESIMPULAN ... 90

5.2. SARAN ... 90

(19)

xvii

DAFTAR GAMBAR

Gambar 1.1 Informationweek.com survey……….3

Gambar 2.1 Jaringan client-server dan jaringan Peer-to-Peer ………10

Gambar 2.2 Firewall……….14

Gambar 2.3 NIDS dan HIDS………15

Gambar 2.4 Pytbull output………29

Gambar 2.5 Evasion Attack ……….33

Gambar 3.1 Topologi Jaringan Instalasi Awal……….39

Gambar 3.2 Topologi Jaringan Pengujian………39

Gambar 4.1 Reverse Shell………57

Gambar 4.2 Pytbull details ………..69

Gambar 4.3 Grafik Hasil pengujian ……….70

Gambar 4.4 Grafik waktu pengujian………70

Gambar 4.5 Grafik hasil pengujian Skenario 1………71

Gambar 4.6 Grafik waktu pengujian Skenario 1………..76

Gambar 4.7 Grafik hasil pengujian Skenario 2………77

Gambar 4.8 Grafik waktu pengujian Skenario 2 ……….82

Gambar 4.9 Grafik hasil pengujian Skenario 3………83

(20)

xviii

DAFTAR TABEL

Tabel 3.1 Spesifikasi client, server, dan web-server ……….37

Tabel 3.2 Tabel spesifikasi komputer IDS ………40

Tabel 3.3 Tabel Spesifikasi Client……….41

Tabel 3.4 Tabel Spesifikasi web server ……….42

Tabel 3.5 Tabel jumlah serangan setiap modul ……….44

Tabel 4.1 Tabel daftar serangan yang dilakukan oleh Pytbull ………...63

Tabel 4.2 Tabel hasil pengujian Skenario 1 ………..75

Tabel 4.3 Tabel hasil pengujian skenario 2 ………...81

Tabel 4.4 Tabel hasil pengujian Skenario 3 ………..86

(21)

1 BAB I

PENDAHULUAN

1.1. Latar Belakang Masalah

Rasa aman merupakan harapan yang diinginkan oleh setiap orang. Bahkan dalam kehidupan sehari – hari setiap orang menginginkan adanya rasa aman. Baik itu keamanan kepada diri sendiri, teman, saudara, harta benda, dan lain – lain. Oleh karena itu dibutuhkan sebuah perlindungan untuk melindungi hal – hal tersebut. Perlindungan dapat juga dengan menggunakan pengawal, sebuah system kemanan yang canggih, maupun asuransi.

(22)

2 peringatan kepada administrator mengenai serangan tersebut. IDS sendiri dapat berupa perangkat keras atau perangkat lunak. IDS berupa perngkat keras seperti Cisco Secure IDS, RealSecure dari Internet Security System. Harga dari pernagkat keras itu sendiri dapat mencapai 8000 US$. Selain itu juga terdapat IDS berupa perangkat lunak. Perangkat lunak IDS ada yang berbayar dan ada yang gratis yaitu IDS berbasis open source. Contoh IDS berbasis open source yang populer seperti Snort, Suricata, dan Bro IDS.

(23)

3 Gambar 1.1informationweek.com survey

Menurut survey yang dilakukan oleh Allen Glines dalam artikel IT Pro Ranking : IPS and IDS”, hanya Snort yang termasuk IDS open

source dan satu satunya IDS open source yang termasuk ke dalam survey tersebut. Jadi, Snort termasuk IDS open source yang popular digunakan di seluruh dunia. Sedangkan, Suricata termasuk IDS/IPS open source yang masih baru yang dimaksudkan untuk membawa ide baru dan teknologi seperti multi-threading untuk bidang IDS. Suricata juga menggunakan rules yang mirip dengan Snort. Baik Snort maupun Suricata, keduanya merupakan Network based Intrusion Detection System (NIDS).

(24)

4 sistem yang sudah ada. Untuk membantu memberikan solusi, maka tulisan ini dibuat untuk membandingkan hasil pengujian terhadap kemampuan pendeteksian rules – rules pada dua IDS open source yaitu Snort dan Suricata.

1.2. Rumusan Masalah

Dari latar belakang di atas, didapat rumusan masalah yaitu :

Bagaimana perbedaan kemampuan pendeteksian antara Snort dan Suricata terhadap pola serangan client side attacks, test rules, bad traffic, fragmented packets evasion techniques, brute force, denial of service, pcap replay, normal usage, dan shell codespada Snort dan Suricata.

1.3. Tujuan dan Manfaat Penelitian

Tujuan dan manfaat penelitian ini adalah untuk memberikan suatu masukan bagi administrator jaringan untuk menentukan IDS mana yang akan digunakan untuk melindungi sustem jaringan yang dikelola.

1.4. Batasan Masalah

Adapun batasan-batasan masalah dalam penulisan tugas akhir ini adalah sebagai berikut :

(25)

5 2. IDS berjalan dalam mode IDS.

3. Pengujian yang dilakukan berupa pengujian kemampuan deteksi terhadap serangan client side attacks, test rules, bad traffic, fragmented packets evasion techniques, brute force, denial of service, pcap replay, normal usage, dan shell codes.

4. IDS dan tool pegujian berjalan pada sistem operasi Ubuntu yang berbasis Linux.

5. Instalasi dilakukan pada jaringan lokal dengan switch yang terhubung ke internet.

6. Pengujian dilakukan pada jaringan lokal dengan switch dan tidak terhubung ke internet.

1.5. Metodologi Penelitian 1. Studi Pustaka

Mencari referensi yang berasal dari berbagai sumber yang ada seperti dari buku, jurnal ilmiah dan artikel internet terutama yang berkaitan dengan topik permasalahan yang akan diteliti. Referensi inilah yang akan digunakan sebagai dasar dari pengembangan skripsi yang akan dibuat.

2. Perancangan

(26)

6 1. Perancangan topologi jaringan skala kecil antara IDS, client

dan server.

2. Pemilihan IDS yang akan digunakan.

3. Menentukan spesifikasi hardware yang akan digunakan. 4. Konfigurasi IDS yang digunakan.

5. Instalasi dan konfigurasi aplikasi Pytbull pada sisi client. 3. Implementasi

Melakukan pengujian terhadap IDS khususnya IDS yang digunakan dengan menggunakan rules yang berbeda pada komputer IDS. Percobaan serangan yang samadilancarkan oleh Pytbull terhadap IDS yang diuji.

4. Analisa Hasil

Melakukan analisa terhadap hasil implementasi yang sudah dilakukan. Analisa dengan berlandaskan pada teori-teori yang sudah ada sebelumnya.

1.6. Sistematika Penulisan

Sistematikan penulisan pada tulisan ini terdiri dari 5 bab :

BAB I PENDAHULUAN

(27)

7 BAB II LANDASAN TEORI

Berisi penjelasan mengenai dasar teori terkait teori-teori yang berkaitan dengan masalah yang terjadi.

BAB III PERANCANGAN

Perancangan sistem yang akan dilakukan secara mendetail beserta metode yang akan dilakukan.

BAB IV IMPLEMENTASI DAN ANALISIS SISTEM

Membahas mengenai pemilihan IDS open source untuk melindungi jaringan komputer yang dilindunginya dengan konfigurasi standar.

BAB V KESIMPULAN DAN SARAN

(28)

8 BAB II

LANDASAN TEORI

2.1. Pengertian Keamanan

Keamanan berasal dari kata aman yang menurut KBBI (Kamus Besar Bahasa Indonesia) memiliki arti bebas dari bahaya. Jadi keamanan sendiri berarti suatu keadaan dimana seseorang atau benda tidak berada dalam bahaya.

2.2. Jaringan Komputer

Jaringan komputer adalah sekumpulan komputer, printer, dan perangkat lainnya yang saling terhubung dan saling berkomunikasi sehingga memungkinkan adanya pertukaran data melalui media kabel maupun wireless.

(29)

9 jaringan disebut node. Jaringan dapat terdiri dari puluhan, ratusan, bahkan ribuan node.

2.2.1. Jenis Jaringan Komputer

Berdasarkan luas area cakupan, jaringan komputer dibagi menjadi : 1. Local Area Network (LAN)

LAN adalah suatu jaringan yang terbatas pada daerah yang relative kecil. LAN biasanya terbatas pada daerah geografi tertentu, seperti laboratorium, sekolah, atau gedung.

2. Metropolitan Area Network (MAN)

MAN meliputi area geografi yang lebih luas, seperti sebuah kota. Dengan interkoneksi jaringan yang lebih luas, informasi dapat disebarkan secara mudah melalui jaringan. Dengan MAN, suatu kantor cabang dalam kota yang sama dapat mengakses server di kantor pusat melalui jaringan telepon, kabel, maupun wireless.

3. Wide Area Network (WAN)

(30)

10 Berdasarkan fungsinya, Jaringan komputer terbagi menjadi

1. Jaringan Client-server

Jaringan client-server pada dasarnya ada satu komputer yang disiapkan menjadi pelayan (server) dari komputer lainnya yang sebagai klien (client).

2. Jaringan Peer-to-peer.

Sedangkan jaringan peer-to-peer ditunjukkan dengan komputer – komputer saling terhubung, sehingga setiap komputer dapat meminta pemakaian bersama sumberdaya dari komputer lainnya, demikian pula harus siap melayani permintaan dari komputer lainnya. Model jaringan ini biasanya hanya bisa diterapkan pada jumlah komputer yang tidak terlalu banyak, maksimum 25, karena komunikasi akan menjadi rumit dan macet jika jumlah komputer yang saling terhubung terlalu banyak.

[image:30.595.98.514.193.648.2]

\

(31)

11 2.2.2. Topologi jaringan

Topologi jaringan merupakan gambaran bagaimana komputer dan peralatan jaringan tersusun dalam suatu jaringan. Berdasarkan jumlah komputer yang saling terhubung, dibagi menjadi dua, yaitu :

1. Point to Point, topologi yang hanya melibatkan dua buah komputer yang saling terhubung..

2. Multipoint, topologi yang melibatkan lebih dari dua komputer. Ada beberapa tipe topologi multipoint dalam jaringan yaitu :

a. Topologi Bus

b. Topologi Bintang (Star) c. Topologi Cincin (Ring) d. Topologi Tree

2.3. Kemanan Jaringan Komputer

(32)

12 Keamanan jaringan mencakup berbagai jaringan komputer, baik jaringan komputer yang bersifat umum maupun pribadi yang digunakan dalam pekerjaan sehari – hari melakukan transaksi dan komunikasi di kalangan bisnis, instansi, dan individu.

Keamanan jaringan komputer secara umum adalah komputer yang terhubung jaringan mempunyai ancaman keamanan yang lebih tinggi daripada komputer yang tidak terhubung ke jaringan. Dengan pengendalian yang teliti, resiko tersebut dapat dikurangi. Namun network security biasanya bertentangan dengan network access, dimana bila network access semakin mudah, maka network securityakan semakin rawan, dan bila network access semakin baik, maka network access semakin tidak nyaman.

2.4. Firewall

(33)

13 Pada Firewall, terjadi beberapa proses yang memungkinkan Firewall dapat melindungi jaringan. Ada 3 macam proses yang terjadi pada Firewall :

1. Modifikasi header paket

Modifikasi header paket digunakan memodifikasi kualitas layanan bit paket TCP sebelum terjadi routing.

2. Translasi alamat jaringan (NAT)

Translasi yang terjadi dapat berupa one to one NAT dimana satu alamat IP privat dipetakan ke satu alamat IP publik serta many to one NAT dimana beberapa alamat IP privat dipetakan ke satu alamat IP publik.

3. Filter paket

Filter paket digunakan untuk menentukan nasib paket apa yang dapat diteruskan atau tidak.

(34)
[image:34.595.97.546.113.631.2]

14 Gambar 2.2 Firewall

2.5. IDS

Intrusion Detection System adalah sebuah sistem yang dapat berupa aplikasi perangkat lunak atau perangkat keras yang mendeteksi paket data yang mencurigakan dalam sebuah sistem atau jaringan. IDS dapat melakukan inspeksi terhadap lalu lintas masuk dan keluar pada sebuah sistem atau jaringan, melakukan analisis dan mencari bukti dari percobaan intrusi (penyusupan). IDS hanya memberikan laporan bahwa telah terjadi sebuah usaha penyusupan ke dalam system atau jaringan oleh suatu pihak tetapi tidak menangkal usaha penyusupan tersebut.

2.5.1. Jenis – jenis IDS

(35)

15 1. Network-based IDS (NIDS)

Berdasarkan fakta bahwa NIDS memonitor jaringan berdasarkan perspektif lokasi dimana NIDS terpasang, NIDS akan memonitor seluruh segmen jaringan.

2. Host-based IDS (HIDS)

[image:35.595.99.514.177.597.2]

HIDS berbeda dari NIDS dalam dua hal. HIDS hanya melindungi sistem host dimana HIDS berada dan NIC yang dimilikinya secara default beroperasi dalam mode nonpromiscious. HIDS sering diletakkan pada server – server yang kritis di jaringan seperti firewall, web server, atau server yang terkoneksi ke Internet.

(36)

16 2.5.2. Cara kerja IDS

Sebuah IDS capat menggunakan metode yang berbeda untuk mendeteksi adanya ancaman penyusupan. Dua metode yang sering digunakan adalah :

1. Pattern Matching (Pencocokan Pola)

Pattern matching digunakan untuk mendeteksi serangan yang sudah dikenal berdasarkan signatures, atau tindakan spesifik yang dilakukan. Metode ini dikenal sebagao signature-based IDSatau misuse detection. IDS mencari dan mencocokkan lalu lintas jaringan dan sifat yang cocok dengan pola dari serangan yang dikenal. Efektivitas dari metode ini bergantung pada signature database yang harus selalu diperbarui.

Metode ini secara analog mengidentifikasi pelaku dengan mencocokan fingerprint pada lokasi kejadian. Masalah yang timbul dengan metode ini adalah kegagalan untuk mendeteksi serangan baru yang belum masuk ke dalam database.

2. Statistical Anomaly (Anomali Statistik)

(37)

17 normal. Metode ini pertama kali harus menentukan profil normal itu hal yang bagaimana, kemudian memonitor tindakan diluar kejadian diluar parameter normal tersebut. Hal ini memungkinkan untuk menangkap intrusi baru yang belum memiliki signatures yang dikenal.

Metode ini dapat dianalogikan seperti polisi yang berpatroli dan mengetahui kondisi yang dikatakan normal pada area tersebut. Ketika dia melihat sesuatu yang janggal polisi dapat memutuskan bahwa telah terjadi suatu tindakan criminal yang belum diketahui apa yang terjadi atau tanggung jawab siapa.

Pada pendeteksian anomali ada beberapa metode pendeteksian :

a. Metric model

b. Neural network

c. Machine learning classification

(38)

18 2.5.3. Fungsi IDS

Intrusion Detection System (IDS) berfungsi melakukan monitoring kegiatan – kegiatan yang tidak lazim pada jaringan, sehingga awal dari langkah penyerang bisa diketahui. Dengan demikian administrator dapat melakukan tindakan pencegahan dan bersiap atas kemungkinan yang akan terjadi.

2.5.4. Penempatan IDS

IDS dapat ditempatkan pada bagian luar firewall sebagai baris terdepan dalam pertahanan melawan penyusup, dan akan memiliki kemampuan deteksi intrusi meskipun ada kemungkinan hanya mampu mendeteksi dan mencegah dalam jumlah yang terbatas. Network-based IDS biasanya diletakkan antara firewall dengan back-endfirewall yang melindungi jaringan internal yang melindungi jaringan internal dari akses public yagn dinamakan DMZ (DemilitaryZone) atau network perimeter atau screened subnet. Peletakan IDS pada lokasi ini data menambahkan lapisan pertahanan tambahan pada DMZ yang merupakan bagian paling rawan dimana DMZ terdiri dari server – server.

(39)

19 Pendeteksian ancaman menggunakan IDS hanyalah langkah awal dalam proses pengamanan dan perlindungan pada organisasi. Kunci sesungguhnya adalah apa yang terjadi setelah ancaman terdeteksi, yaitu perencanaan respon insiden. Untuk lebih efektif harus direspon sesegera mungkin. IDS memerlukan fitur dan perlu diset untuk memberikan alert terhadap ancaman ketika serangan terjadi.

Tim respon insiden harus berlatih proedur respon insiden sebelum hal “nyata” terjadi sehingga tiap regu mengetahui tugasnya masing – masing. Goal yang harus didapat oleh tim adalah :

1. Mencegah kerusakan (yang lebih jauh) 2. Pelacakan/identifikasi penyusup

3. Menyimpan bukti kejadian yang mengarah ke penuntutan pidana dan / atau perdata

5.5 Rule

Rule dapat diartikan secara langsung yang berarti peraturan. Pada IDS yang berdasarkan rule, peranan rule ini sangat penting. Kemampuan untuk mendeteksi lalu lintas jaringan. Rule sendiri pada dasarnya dibuat oleh administrator jaringan untuk mengklasifikasikan aktifitas jaringan mana yang normal dan berbahaya pada jaringan yang dikelola.

(40)

20 ancaman atau bukan. Rule pada snort dan suricata menurut AlienVault dalam artikelnya yang berjudul “Suricata IDS. What is it and how to enable it” menyatakan “Suricata is an alternative IDS which is fully compatible with existing Snort rule” yang dapat diartikan bahwa rule pada Snort dapat digunakan juga oleh Suricata. Secara umum rule terdiri dari dua bagian yaitu rule header dan rule options. Rule header merupakan bagian rule dimana aksi aksi rule diidentifikasi sperti Pass, Alert, Log, Activate, Dynamic, dan lain sebagainya. Rule option merupakan bagian rule dimana pesan – pesan peringatan (alert messages) diidentifikasi. Contoh penulisan rule :

alert tcp any -> any 6667 (msg:”IRC port in use”; flow:from_client)

Bagian pertama rule menetapkan sebuah aksi untuk memperhatikan lalu lintas jaringan pada port 6667. Jika ada ada yang cocok, maka akan muncul pesan “IRC port in use”, dan IDS akan

membuat catatan bahwa port IRC telah ada yang mengakses.

2.6. Snort

2.6.1. Tentang Snort

(41)

21 sebagai pendiri sekaligus CTO dari Sourcefire. Pada 2009, Snort ke jajaran Hall of Fame pada majalah InfoWorld sebagai salah satu yang terbaik pada perangkat lunak berbasis open source sepanjang waktu.

Snort sebagai IDS berbasis jaringan open source memiliki kemampuan untuk melakukan analisa lalu lintas jaringan secara real-time dan pendataan paket pada IP jaringan. Snort menjalankan analisa protokol, pencarian isi, dan pencocokan isi. Layanan dasar ini memiliki banyak tujuan termasuk application-aware triggeredquality of service, untuk tidak memprioritaskan lalu lintas massal ketika aplikasi yang sensitive terhadap latency sedang berjalan.

2.6.2. Fungsi Snort

Menurut Rafiudin (2010), secara prinsip, Snort memerankan tiga fungsi utama :

1. Penangkal program – program sniffer paket paket seperti tcpdump. 2. Packet logger (berguna untuk melakukan debug pada lalu lintas

jaringan)

3. Sebagai system pencegah intrusi untuk sistem – sistem jaringan

2.6.3. Mode Snort

(42)

22 1. Sniffer

Pada mode sniffer, program akan membaca paket jaringan dan menampilkannya pada sebuah konsol. Untuk menjalankan snort pada mode sniffer adalah dengan mengetikan baris perintah :

#snort –v

2. Packet logger

Pada mode packet logger program akan mendata paket ke disk. Untuk menjalankan snort pada mode Packet logger adalah dengan mengetikan baris perintah :

#snort –dev –l /var/log/snort/

3. Network intrusion detection

Pada mode intrusion detection, program akan memonitor lalu lintas jaringan dan menganalisanya terhadap satu set rule yang ditetapkan oleh pengguna. Program kemudian akan menjalankan sebuah aksi sesifik sesuai dengan apa yang telah diidentifikasi. Untuk menjalankan snort pada mode NIDS adalah dengan mengetikan baris perintah : # snort –c snort.conf

2.6.4. Cara kerja Snort

(43)

23 1. Buffer overflow

2. Stealth port scan

3. Serangan aplikasi berbasis web 4. SMB probe

5. Dan lain.

Snort memiliki beberapa komponen yang setiap komponennya mempunyai tugas masing – masing. Pada saat ada paket jarignan yang melewati Ethernet dimana Snort dipasang, maka ada beberapa hal yang dilalui :

1. Packet capture library (libpcap)

Libpcapakan memisahkan paket data yang melalui Ethernet card untuk selanjutnya digunakan oleh Snort.

2. Packet decoder

Packet decoder mengambil data di layer 2 yang dikirim dari proses 1 .pertama snort akan memisahkan data link (seperti Ethernet, tokenRing, 802.11) kemudian protocol IP, dan selanjutnya paket TCP dan UDP. Setelah pemisahan data selesai, snort telah mempunyai informasi protocol yang dapat diproses lebih lanjut.

3. Preprocessor

(44)

24 4. Detection engine

Paket dari packet decoder akan ditest dan dibandingkan dengan rules yang telah ditetapkan sebelumnya. Rules berisi tanda – tanda (signature) yang termasuk serangan

5. Output

Output berupa report dan alert yang dapat berupa text, syslog, tcpdump, binary format, atau database.

2.7. Suricata

2.7.1. Tentang Suricata

Suricata merupakan Network IDS, IPS, dan Sebuah mesin monitor keamanan jaringan dengan performa tinggi. Suricata adalah IDS open source dan dimiliki oleh sebuah komunitas non-profit, yaitu Open Information Security Foundation (OISF). Suricata dikembangkan oleh OISF dan vendor pendukungnya.

2.7.2. Fitur Suricata

Menurut website suricata berikut adalah fitur – fitur pada suricata :

1. IDS / IPS

(45)

25 policy violation, dan perilaku berbahaya. Suricata juga mendeteksi banyak anomali pada lalu lintas yang diinspeksi. Suricata mampu menggunakan ruleset dari Emerging Threats Suricata dan VRT ruleset.

2. High Performance

Suricata mampu melakukan inspeksi lalu lintas multi-gigabit. Engine pada suricata dibangun secara multi threading, modern, basis kode yang bersih dan scalable. Ada dukungan asli untuk akselerasi hardware pada beberapa vendor dan melalui PF_RING dan AF_PACKET. Suricata secara experimental mampu menggunakan GPU Acceleration untuk tugas yang intensif.

3. Automatic Protocol Detection

Suricata secara otomatis mendeteksi protocol seperti HTTP pada sembarang port dan mengaplikasikan pendeteksian yang diperlukan dan logging logic. Ini sangat membantu untuk menemukan malware dan CnC channels.

4. NSM : More than an IDS

(46)

26 untuk memudahkan analisa. Ini membuat Suricata sebuah mesin yang powerfull bagi Network Security Monitoring (NSM) ecosystem.

5. Lua Scripting

Analisa dan fungsionalitas yang lebih maju tersedia untuk mendeteksi sesuatu tidak memungkinkan antara ruleset syntax.

6. Industry Standard outputs

Pada suricata versi 2.0 diperkenalkan “Eve”, semua JSON even dan alert output. Ini memperbolehkan integrasi yang mudah dengan Logstash dan tool yang mirip.

2.8. Oinkmaster

Oinkmaster merupakan script yang digunakan untuk membantu memperbaharui maupun memanajemen rules. Oinkmaster dirilis dibawah naungan lisensi BSD dan bekerja pada berbagai platform yang mampu menjalankan script Perl seperti linux, *BSD, Windows, Max OS X, Solaris, dan sebagainya. Oinkmaster dapat digunakan untuk memperbaharui dan memanajemen rules berlisensi VRT, community rules, bleeding-snort rules, dan rules dari pihak ketiga lainnya termasuk rules yang dibuat sendiri.

(47)

27 #sudo apt-get install oinkmaster

File konfigurasi pada oinkmaster berada pada direktori /etc/oinkmaster.conf . Pada file konfigurasi Oinkmaster perlu dilakukan beberapa perubahan terutama pada baris dari mana rule yang akan digunakan untuk memperbaharui diperoleh dengan merubah baris konfigurasi pada bagian berikut :

url = http://emergingthreats.net/open/<lokasi

rules>

Untuk menjalankan Oinkmaster dapat dijalankan dengan menggunakan baris perintah sebagai berikut :

#oinkmaster –C /etc/oinkmaster.conf –o

/etc/snort/rules

Untuk bantuan pada pada oinkmaster dapat dilakukan dengan mengetikkan perintah :

#Oinkmaster -h

2.9. Pytbull

2.9.1. Tentang Pytbull

(48)

28 Pytbull dapat digunakan untuk menguji kemampuan deteksi maupun kemampuan untuk memblokir pada IDS/IPS, untuk membandingkan IDS/IPS, untuk membandingkan modifikasi pada konfigurasi dan untuk mengecek/memvalidasi konfigurasi.

Pada framework Pytbull ini disertakan 300 tes yang dikelompokkan kedalam 11 modul pengujian sebagai berikut :

1. Bad Traffic: Paket yang tidak sesuai dengan RFC dikirimkan ke server untuk menguji bagaimana paket diproses.

2. Brute Force: menguji kemampuan dari server untuk melacak brute force attack (contoh : FTP).

3. Client Side Attacks: Modul ini menggunakan reverse shell untuk memberikan server instruksi secara remot untuk mendwnload file berbahaya. Modul ini untuk menguji kemampuan IDS/IPS utnuk melindungi dari client side attack.

4. Denial Of Service: mengetes kemampuan IDS/IPS untuk melawan serangan DoS.

5. Evasion Techniques: variasi dari evasion techniques digunakan untuk mengecek apaah IDS/IPS mampu mendeteksinya.

6. Fragmented Packets: variasi dari fragmented payloads dikirim ke server untuk menguji kemampuan untuk menyusun ulang dan mendeteksinya.

(49)

29 8. Normal Usage: berupa paket yang bermuatan data yang sesuai dengan

pemakaian normal.

9. Pcap Replay: memungkinkan untuk memutar ulang file pcap.

10.Shell Codes: mengirimkan varian shellcodes ke server di port 21/TCP untuk menguji kemampuan server mendeteksi/menolak shellcodes. 11.Test Rules: pengujian rules dasar. Serangan ini diharapkan untuk

dideteksi oleh set rules yang sepaket dengan IDS/IPS

Pytbull juga menampilkan report hasil pengujian dalam bentuk grafik yang terdiri dari persentase total, jumlah test yang dijalankan dan manampilkan hasil dari setiap modul.

[image:49.595.101.514.260.642.2]
(50)

30 2.9.2. Remote Mode

Pada mode ini, IDS dipasang pada span port( atauport miroring) dari switch inti dan telah dikonfigurasi pada mode promiscuous. IDS menganalisa semua lalu lintas jaringan yang melewati switch ini. File berbahaya dapat diunduh oleh Pytbull atau oleh server. Mode ini disebut “remote”.

2.9.3. Local Mode

2.9.3.1.IDS mode with attacked server in DMZ

Pada konfigurasi ini, firewall dibagi menjadi 3 bagian (lan, wan, dmz). IDS dipasang pada span port ( atauport miroring) dari switch dengan interface-nya dikonfigurasi pada mode promiscuous. IDS akan menganalisa setiap lalu lintas jaringan yang dikirim ke interface LAN pada firewall.

2.9.3.2.IPS mode

Pada konfigurasi ini, firewall dibagi menjadi 3 bagian (lan, wan, dmz). IDS dipasang antara pytbull dan firewall. Untuk memberikan IDS kesempatan untuk mendeteksi file berbahaya. Pytbull harus mengunduh file yang terinfeksi sendiri.

2.9.3.3.IPS mode with attacked server in DMZ

(51)

31 terinfeksi harus diunduh oleh Pytbull secara langsung untuk memberikan kesempatan kepada IDS untuk mendeteksinya.

2.10. Contoh Serangan 2.10.1.Test Rules

Pola serangan test rules merupakan sebuah serangan yang dilancarkan dengan tujuan untuk melakukan pengujian terhadap rules yang digunakan oleh IDS. Pola serangan terst rules ini diharapkan dapat memicu pesan alert pada IDS.

2.10.2.Brute Force

Sebuah serangan bruteforce adalah metode trial-and-error yang digunakan untuk memperoleh informasi seperti password pengguna atau nomor identifikasi pribadi (PIN). Dalam serangan brute force, perangkat lunak otomatis digunakan untuk menghasilkan sejumlah besar tebakan berturut-turut untuk nilai data yang diinginkan. Serangan brute force dapat digunakan oleh penjahat untuk memecahkan data dienkripsi, atau oleh analis keamanan untuk menguji keamanan jaringan organisasi. seranganbrute force dapat juga diartikan bruteforce cracking.

(52)

32 sering digunakan atau kombinasi huruf dan angka. Serangan semacam ini dapat memakan waktu dan memakan sumber daya. Maka diberi nama "brute force attack". Keberhasilan biasanya didasarkan pada kemampuan perhitungan dan jumlah kombinasi yang dicoba daripada algoritma komputasi.

Langkah-langkah berikut dapat digunakan untuk mempertahankan terhadap serangan brute force:

1. Mengharuskan pengguna untuk memiliki password yang kompleks

2. Membatasi jumlah kali pengguna dapat mencoba untuk login

3. Penguncian sementara pengguna yang melebihi jumlah maksimum yang ditentukan usaha login

2.10.3.Evasion Techniques

Sebuah end-system dapat menerima paket yang ditolak oleh IDS. IDS yang keliru menolak peket tersebut akan melewatkan keseluruhan isinya Kondisi ini juga dapat dimanfaatkan, kali ini dengan menyelipkan informasi penting masa lalu IDS dalam paket bahwa IDS terlalu ketat tentang pengolahan. Paket ini “ menghindari” pengawasan dari IDS.

(53)

33 yang lolos dari IDS, dan tampak jelas ditulis dalam sesi tersebut akan terjadi tepat di depan IDS bahkan mesin analisis yang paling canggih sekalipun.

[image:53.595.102.506.211.597.2]

Evasion attack menggunakan pencocokan pola dengan cara sangat mirip dengan dengan insertion attack. sekali lagi, penyerang mengakibatkan IDS untuk melihat stream data yang berbeda dari end-system. Meskipunend-system mengetahui lebih dari IDS, dan informasi yang terlewatkan oleh IDS merupakan pendeteksian serangan yang kritis.

Gambar 2.5Evasion Attack 2.10.4.Shell Codes Attack

(54)

34 saja). Namun, dalam rangka untuk mendapatkan akses remote ke shell, Anda akan memerlukan beberapa jenis jaringan support di shellcode itu juga. Ada lebih untuk shellcoding daripada hanya memiliki program mengeksekusi /bin/sh atau cmd.exe.

Shellcode terutama digunakan untuk mengeksploitasi buffer overflows (termasuk heap overflows) atau format string bug dalam biner, software yang dapat dibaca mesin. Dalam software ini, shellcode telah dapat dibaca oleh mesin juga, dan untuk membuat hal-hal yang lebih rumit (tidak dapat mengandung byte nol (0x00)). Null (0) adalah pembatas string yang menginstruksikan semua fungsi C string (dan implementasi lain), sekali ditemukan, menghentikan pengolahan string (dengan demikian, null-string dihentikan). Ada pembatas lain seperti linefeed (0x0A), carriage return (0x0D), 0xFF, dan lain-lain. Beberapa tergantung pada bagaimana programmer menulis program (atau fungsi rentan yang menangani input) dan implementasi lain tergantung pada fungsi. perpustakaan C yang mendasari atau library pihak ke-3, dll.

2.10.5.Bad Traffic

Paket yang tidak sesuai dengan RFC dikirimkan ke server untuk menguji bagaimana paket diproses.

2.10.6.Client Side Attacks

(55)

35 untuk menguji kemampuan IDS/IPS utnuk melindungi dari client side attack.

2.10.7.Denial Of Service

Denial of Service atau DOS adalah suatu serangan yang bertujuan untuk mematikan pelayanan dari komputer atau suatu jaringan yang diserang. Serangan DOS ini dapat menghambat bahkan mematikan layanan pelayanan pada sebuah sistem sehingga pengguna yang abash tdak dapat menerima atau mendapatkan pelayanan yang seharusnya. Serangan DOS ini, pada dasarnya sulit dideteksi, kecuali jika penyerang telah melakukan beberapa kali percobaan dengan alamat IP yang sama dapat dengan mudah membloknya. Serangan DOS ini dapat lebih mematikan apabila dilakukan dengan lebih banyak komputer atau dikenal dengan Distributed Denial of Service (DDOS).

2.10.8.Fragmented Packets

Fragmented packets merupakan variasi dari fragmented payloadsyang dikirim ke server untuk menguji kemampuan untuk menyusun ulang dan mendeteksinya. Dari paket yang dikirim tadi ada kemungkinan paket tersebut berisi suatu perintah atau file yang berbahaya. 2.10.9.Normal Usage

(56)

36 2.10.10.Pcap Replay

(57)

37 BAB III

PERANCANGAN

3.1. Perencanaan Awal

Sebelum melakukan pengujian, ada beberapa hal yang diperlukan dalam mendukung kegiatan pengujian. Kegiatan pendukung tersebut antara lain adalah pemilihan topologi jaringan, pemilihan IDS yang akan diuji, dan tool yang digunakan untuk melakukan pengujian.

[image:57.595.104.514.249.727.2]

Pengujian menggunakan sebuah komputer sebagai client, sebuah komputer sebagai IDS yang akan diuji, dan sebuah web-server. Komputer client, IDS, dan web-serverakan terhubung oleh sebuah jaringan. Masing – masing memiliki spesifikasi seperti pada tabel berikut :

Tabel 3.1. Spesifikasi client, server, dan web-server

SPESIFIKASI IDS Client WEB-SERVER

Random Access Memory (RAM)

4 GB 2 GB 2 GB

Processors AMD A10-5800K

Intel Core i5-460M

Intel Core 2solo

Harddisk 500 GB 640 GB 320 GB Operating System (OS) Ubuntu 14.04

LTS

Ubuntu 14.04 LTS

(58)

38 Aplikasi penguji akan diinstal pada komputer client, pada komputer IDS akan diinstal IDS yang akan diuji yaitu Snort dan Suricata, dan pada komputer web-server hanya akan menjalankan layanan web dan menyediakan file yang diperlukan dalam proses pengujian.

3.2. Topologi Jaringan

(59)

39 Internet

Web Server SWITCH Client

Pytbull

192.168.0.10/24 192.168.0.100/24

[image:59.595.100.497.109.604.2]

IDS Snort/Suricata 192.168.0.101/24

Gambar 3.1 Topologi Jaringan Instalasi Awal

Web Server SWITCH Client

Pytbull

192.168.0.10/24 192.168.0.100/24

IDS Snort/Suricata 192.168.0.101/24

Gambar 3.2Topologi Jaringan Pengujian

(60)

40 Pada topologi jaringan yang digunakan untuk melakukan pengujian, sambungan internet pada switch diputus. Diputusnya sambungan dengan internet ini dimaksudkan agar lingkungan pengujian terisolasi dari berbagai lalu lintas jaringan yang berhubungan dengan internet dan dapat mempengaruhi kapasitas lalu lintas jaringan.

3.3. Rancangan IDS

[image:60.595.103.513.205.565.2]

Spesifikasi komputer yang digunakan untuk IDS seperti pada tabel berikut.

Tabel 3.2Tabel spesifikasi komputer IDS

Processors AMD A10-5800K @ 3.8GHz x4

RAM 4 GB DDR3

NIC 1 Gigabit Ethernet

HDD 500 GB Seagate

Sistem Operasi Ubuntu 14.04 LTS

(61)

41 konfigurasi default dengan melakukan penyesuaian pada bagian rules yang akan digunakan agar dapat membaca file rules yang telah ditentukan.

3.4. Client

[image:61.595.101.502.191.582.2]

Spesifikasi komputer yang digunakan untuk client seperti pada tabel berikut.

Tabel 3.3Tabel Spesifikasi Client

Processor Intel Core i5-460M @ 2.53GHz x4 RAM 4 GB DDR3 SoDIMM

NIC 1 Gigabit Ethernet HDD 640 GB WD Blue

27 GB EXT4 file system 1 GB swap

Sistem operasi Ubuntu 14.04 LTS

(62)

42 3.5. Web-Server

[image:62.595.103.513.193.614.2]

Web-server yang digunakan adalah apache2 yang akan terinstall pada komputer dengan spesifikasi sebagai berikut :

Tabel 3.4Tabel Spesifikasi web server Processors Intel Core2solo RAM 2 GB DDR3 SoDIMM NIC 1 Gigabit Ethernet HDD 320 GB WD Blue

27 GB EXT4 file system 1 GB swap

Sistem Operasi Ubuntu 12.04 32-bit

Pada web-server berisi file – file berbahaya yang dibutuhkan untuk melakukan pengujian pada IDS. File – file berbahaya ini akan digunakan untuk melakukan pengujian.

3.6. Skenario Pengujian

(63)

43 1. Skenario pertama

Pengujian terhadap kemampuan IDS dalam mendeteksi serangan testRules, BruteForce, evasion Techniques, dan Shellcodes dengan menggunakan rules awal atau bawaan dari IDS pada saat diinstal pertama kali (fresh install).

2. Skenario kedua

Pengujian terhadap kemampuan IDS dalam mendeteksi serangan client side attacks, test rules, bad traffic, fragmented packets evasion techniques, brute force, denial of service, pcap replay, normal usage, dan shell codes.dengan menggunakan rules yang telah diperbaharui secara manual dan menggunakan rules asli yang belum dilakukan perubahan sama sekali (file rules diekstrak untuk kemudian langsung digunakan). Snort menggunakan rules dari http://snort.orgsedangkan Suricata menggunakan rules dari http://rules.emergingthreats.net/open .

3. Skenario tiga

(64)

44 #oinkmaster –C /etc/oinkmaster.conf –r –e –o

<lokasi rules pada Snort dan Suricata>

Rules yang digunakan oleh Snort berasal dari http://www.snort.orgsedangkan rules yang digunakan oleh Suricata berasal dari http://rules.emergingthreats.net/open.

[image:64.595.98.510.196.598.2]

Pengujian yang dilakukan adalah dengan menjalankan pytbull dengan mengaktifkan sebelas modul pengujian pada setiap skenario. Masing – masing modul pengujian memiliki jumlah serangan sebagai berikut :

Tabel 3.5Tabel jumlah serangan setiap modul Modul Jumlah Serangan

clientSide 50

testRules 7

badTraffic 3

fragmentedPacket 4 multipleFailedLogin 1 evasionTechniques 15

shellCodes 14

denialOfService 3

pcapReplay 1

normalUsage 2

Jumlah 100

Pengujian dilakukan pada IDS Snort dan Suricata secara bergantian. Sebelum Pytbull dijalankan, terlebih dahulu jalankan script ReverseShell pada komputer IDS dengan menjalankan perintah :

(65)

45 Script tersebut digunakan oleh Pytbull untuk menjalankan pengujian untuk serangan Netcat Reverse Shell.

3.7. Kehandalan

Kriteria kehandalan IDS pada pengujian dengan menggunakan Pytbull adalah dengan menampilkan jumlah serangan yang mampu dideteksi oleh IDS dari jumlah serangan total yang dilancarkan oleh Pytbull.

Nilai kehandalan dari setiap percobaan serangan yang terdeteksi diberikan nilai poin 1 dan nilai poin 0 untuk percobaan serangan yang tidak terdeteksi.

Nilai poin 0 = percobaan serangan yang tidak terdeteksi

Nilai poin 1 = percobaan serangan yang terdeteksi

Untuk nilai kehandala pada setiap IDS pada masing – masing skenario dilihat dari total jumlah nilai poin yang diperoleh dalam 1 skenario. Jumlah nilai poin maksimal adalah 100, diperoleh dari total jumlah percobaan serangan sebanyak 100 percobaan. Jadi IDS dengan nilai poin yang tinggi adalah IDS yang lebih banyak mendeteksi percobaan serangan yang diujikan.

(66)

46 BAB IV

IMPLEMENTASI DAN ANALISIS

4.1. Instalasi Ubuntu

Pada komputer IDS dan Client akan diinstall sistem operasi Ubuntu 14.04 LTS dengan kernel linux versi 3.13.0-35-generic. Ubuntu yang telah terinstall kemudian dikoneksikan ke jaringan internet dengan alamat IP DHCP untuk menerima daftar pembaruan terlebih dahulu dengan mengetikkan perintah :

#apt-get update

Setelah update selesai, dilanjutkan dengan melakukan instalasi yang diperlukan FTP, apache2, dan SSH server dengan mengetikkan perintah :

#apt-get install vsftpd apache2 openssh-server

Pada file konfigurasi vsftpd yang berada di /etc/vsftpd.conf disarankan untuk merubah parameter sebagai berikut :

# Allow anonymous FTP? (Disabled by default) anonymous_enable=NO

# Uncomment this to allow local users to log in. local_enable=YES

(67)

47 #apt-get update

#apt-get dist-upgrade

Setelah selesai, lakukan reboot pada komputer client dan IDS untuk menyelesaikan proses pembaruan system. Ubuntu sudah siap untuk digunakan

4.2. Instalasi IDS

4.2.1. Instalasi Snort 1. Repository Ubuntu

Instalasi Snort dengan mengunduh dari repository Ubuntu dapar dilakukan dengan langkah – langkah sebagai berikut :

- Buka terminal pada Ubuntu (Ctrl + Alt + t)

- Ketikkan perintah „sudo su‟ untuk mendapatkan hak akses sebagai super user.

- Lakukan pembaharuan pada daftar pembaharuan dengan mengetikkan perintah

#apt-get update

- Install Snort

#apt-get install snort

- Jika muncul jendela konfigurasi maka diisi sesuai konfigurasi yang telah ditentukan.

(68)

48 2. Menggunakan Binary Code

- Install paket yang dibutuhkan untuk melakukan compile pada Snort $ sudo apt-get update

$ sudo apt-get install flex bison build-essential checkinstall libpcap-dev libnet1-dev libpcre3-dev libmysqlclient15-dev libnetfilter-queue-libmysqlclient15-dev iptables-libmysqlclient15-dev

- Unduh source code DAQ, Snort, dan Libdnet

$ wget

https://www.snort.org/downloads/snort/daq-2.0.2.tar.gz

$ wget

https://www.snort.org/downloads/snort/snor t-2.9.6.2.tar.gz

$ wget

http://libdnet.googlecode.com/files/libdne t-1.12.tgz

- Unzip, make, dan install Libdnet $ tar zxvf libdnet-1.12.tgz $ cd libdnet-1.12/

$ ./configure; make $ sudo checkinstall

$ sudo dpkg -i libdnet_1.12-1_amd64.deb

$ sudo ln -s /usr/local/lib/libdnet.1.0.1 /usr/lib/libdnet.1

(69)

49 1. Should I Create a default set of package

docs?

Biasanya dipilih pilihan default, ketik y dan Enter

2. You probably don't want them to be included in the package. Do you want me to

list them? [n]:

Ketik n dan Enter

3. Should I exclude them from the package? (Saying yes is a good idea) [n]:

Ketik y dan Enter

Unzip, make and install DAQ

$ tar xvfz daq-2.0.2.tar.gz $ cd daq-2.0.2

$ ./configure "CFLAGS=-fPIC"; make $ sudo checkinstall

$ sudo dpkg -i daq_2.0.2-1_amd64.deb

Unzip, make and install Snort

$ tar xvfz snort-2.9.6.2.tar.gz $ cd snort-2.9.6.2

$ ./configure --enable-sourcefire; make $ sudo checkinstall

$ sudo dpkg -i snort_2.9.6.2-1_amd64.deb

$ sudo ln -s /usr/local/bin/snort /usr/sbin/snort

(70)

50 4.2.2. Konfigurasi Snort

Setelah Snort terinstall pada Ubuntu 14.04 LTS di komputer IDS, sesuaikan file konfigurasi pada snort.conf yang berada di /etc/snort/snort.conf dengan jaringan yang digunakan. Pada file snort.conf, lakukan perubahan pada beberapa bagian – bagian berikut dengan menjalankan baris perintah :

#nano <lokasi instalasi

snort>/etc/snort/snort.conf

# Setup the network addresses you are protecting ipvar HOME_NET any

# Set up the external network addresses. Leave as "any" in most situations

ipvar EXTERNAL_NET any

#ipvar EXTERNAL_NET !$HOME_NET …

# Configure default log directory for snort to log to. For more information see snort -h command line options (-l)

#

config logdir: /var/log/snort/ …

Kemudian tekan ctrl+x dan kemudian y dan tekan enter untuk menyimpan file konfigurasi.

(71)

51 mengalami perubahan pada file rules-nya baik yang berasal dari http://www.snort.org, dan satu rule yang sama persis dengan Suricata.

Masing masing rules diletakkan pada folder rules yang berbeda agar mudah untuk dibedakan. Selain folder rules, file snort.conf juga dibuat menjadi beberapa file yang sedikit berbeda pada bagian lokasi dimana rules disimpan yang telah disesuaikan dengan pengujian. File konfigurasi tadi masing – masing diberi nama sebagai berikut :

- SnortORI.conf : untuk pengujian dengan menggunakan rules bawaan dari Snort.

- snortSNORTupdate.conf : untuk pengujian dengan menggunakan rules yang diperbaharui secara manual dari http://www.snort.org

- snortSNORTupdateMODIF.conf : untuk pengujian dengan rules yang berasal dari http://www.snort.orgnamun pembaharuan dilakukan dengan menggunakan Oinkmaster.

Setelah file tersimpan, lakukan pengetesan apakah terdapat masalah pada file konfigurasi dengan mengetikkan baris perintah standar pada snort :

#snort -c /etc/snort/snortORI.conf -i eth0 -l

/var/log/snort/ -k all

Untuk bantuan pada snort dapat dengan mengetikkan baris perintah :

(72)

52 4.2.3. Instalasi Suricata

IDS Suricata akan diinstall pada komputer IDS. Untuk melakukan instalasi Suricata, pastikan komputer IDS tersambung dengan koneksi internet. Kemudian jalankan baris perintah sebagai berikut :

#add-apt-repository ppa:oisf/suricata-stable

#apt-get update

#apt-get install suricata

#apt-get update

#apt-get upgrade

4.2.4. Konfigurasi Suricata

Setelah suricata terinstall pada Ubuntu 14.04 LTS, sesuaikan file konfigurasi pada file suricata.yaml yang berada di /etc/suricata/suricata.yaml dengan jaringan yang digunakan. Lakukan beberapa perubahan pada bagian – bagian berikut dengan menjalankan baris perintah :

#nano /etc/suricata/suricata.yaml

# Configure the type of alert (and other) logging you would like.

outputs:

# a line based alerts log similar to Snort's fast.log - fast:

enabled: yes

filename: fast.log append: yes

(73)

53 'unix_dgram'

address-groups: HOME_NET: any EXTERNAL_NET: any

Kemudian tekan ctrl+x dan kemudian y dan tekan enter untuk menyimpan file konfigurasi.

Rules yang digunakan oleh Suricata adalah rules yang diunduh ketika melakukan instalasi awal dan untuk rules diperbaharui menggunakan rules yang diunduh dari situs http://www.emergingthreats.net/open. Rules yang telah diperbaharui tadi kemudian digandakan pada folder yang berbeda untuk melakukan pengujian dengan menggunakan rules yang sudah dilakukan perubahan.

Pada file konfigurasi Suricata yaitu suricata.yaml juga digandakan menjadi empat bagian sebagai berikut :

- suricataORI.yaml : untuk melakukan pengujian dengan menggunakan rules Suricata pada saat instalasi awal.

- suricataUPDATE.yaml : untuk melakukan pengujian dengan menggunakan rules yang diperbaharui secara manual.

(74)

54 Setelah semua disesuaikan, lakukan pengecekan supaya Suricata dapat dijalankan dengan mengetikkan perintah berikut

#suricata –c /etc/suricata/suricataORI.yaml –

i eth0 –A full –l /var/log/suricata

untuk bantuan pada suricata dapat menggunakan baris perintah :

#suricata –help

4.3. Pytbull

4.3.1. Instalasi Pytbull

4.3.1.1.Instalasi Standar (Client) 4.3.1.1.1. Persiapan

Pastikan Python (2.6.5) dan dependensinya telah terinstall dengan mengetikkan perintah.

$ sudo apt-get install python scapy

python-feedparser python-cherrypy3

Install juga tools yang dibutuhkan (nmap, hping3, nikto, ab, … ). Dapat

menggunakan perintah :

$ sudo apt-get install nmap hping3 nikto tcpreplay

apache2-utils

Terakhir, install ncrack untuk modul bruteForce :

$ wget http://nmap.org/ncrack/dist/ncrack-0.4ALPHA.tar.gz

$ tar -xzf ncrack-0.4ALPHA.tar.gz $ cd ncrack-0.4ALPHA

(75)

55 $ make

# make install

4.3.1.1.2. Instalasi

Pytbull dapat diunduh dengan format tar.bz2 yang merupakan versi stabil dengan menggunakan perintah :

$ cd /usr/local/src/

$ wget

https://downloads.sourceforge.net/project/pyt bull/pytbull-2.0.tar.bz2

$ bzip2 -cd pytbull-2.0.tar.bz2 | tar xf - $ sudo mv pytbull/ /opt/

$ cd /opt/python/

Pytbull juga dapat diunduh dari Mercurial (development release). Jika ingin mendapatkan pengembangan terakhir, install Pytbull dari Mercurial dengan mernginstall Mercurial terlebih dahulu dengan mengetikkan perintah :

$ sudo apt-get install mercurial $ cd /opt/

$ sudo hg clone

http://pytbull.hg.sourceforge.net:8000/hgroot /pytbull/pytbull

4.3.1.2.Server

4.3.1.2.1. Persiapan

Install Python (2.6.5), FTP server (port 21/tcp), apache2 (port 80/tcp), dan SSH (port 22/tcp) .

$ sudo apt-get install python vsftpd

(76)

56 File konfigurasi vsftpd berada di /etc/vsftpd.conf. disarankan untuk setidaknya memiliki dua parameter berikut :

# Allow anonymous FTP? (Disabled by default) anonymous_enable=NO

# Uncomment this to allow local users to log in.

local_enable=YES

4.3.1.2.2. Pytbull (server)

Salin reverse shell dari folder server/ pada pytbull ke server yang terdapat IDS/IPS. Kemudian jalankan perintah berikut :

$ sudo python

<location>/server/pytbull-server.py

Reverse Shell sendiri merupakan sebuah program yang menyediakan sebuah port yang siap digunkan oleh client untuk melakukan remote. 4.3.2. Menjalankan Pytbull

Jika telah memilih modul clientSideAttack, perlu menjalankan reverse shell pada server dengan menjalankan perintah berikut

$ ./pytbull-server.py -p 34567

Sejak file diunduh di direktori saat ini, dapat juga dibuat folder /pdf dan memulai dari direktori induk.

$ mkdir pdf/ $ cd pdf/

$ ../pytbull-server.py -p 34567

(77)

57 $ sudo ./pytbull -t 192.168.100.48

Sebagai catatan anda perlu melakukan adaptasi atau perubahan (file config.cfg) pada port yang digunakan untuk menjalankan reverse shell jika anda menggunakan parameter optional –ppada sisi remote.

Secara umum, reverse shell bekerja sebagai berikut :

1. Client (yang menjalankan Pytbull client) mengirim instruksi ke server (yang menjalankan reverse shell) untuk mengunduh file PDF yang berbahaya.

2. Server mengunduh file berbahaya menggunakan perintah wget dari pihak ketiga (server di internet, yang memasang file berbahaya). Itu akan memicu alert. (Snort atau Suricata).

[image:77.595.99.516.256.640.2]

3. Alert tersebut akan dikumpulkan oleh client melalui FTP.

(78)

58 4.3.3. Konfigurasi Pytbull

Pada komputer client dengan sistem operasi Ubuntu 14.04 yang telah terinstall Pytbull, diperlukan beberapa konfigurasi. Pada file konfigurasi Pytbull dialkukan beberapa perubahan agar Pytbull dapat melakukan pengujian terhadap IDS. Berikut adalah isi konfigurasi file Pytbull yang berada di /opt/Pytbull/conf/config.cfg :

[CLIENT]

ipaddr = 192.168.1.100 #alamat IP pytbull client

iface = eth0 useproxy = 0 proxyhost = proxyport = proxyuser = proxypass =

[PATHS]

db = data/pytbull.db urlpdf =

http://192.168.1.100/TESTFILE

pdfdir = pdf/malicious pcapdir = pcap

tempfile = /tmp/pytbull.tmp alertsfile = /var/log/snort/alert

#log pada snort

#alertsfile =

/var/log/suricata/fast.log #log pada suricata

[ENV]

sudo = /usr/bin/sudo nmap = /usr/bin/nmap nikto = /usr/bin/nikto

niktoconf = /etc/nikto/config.txt hping3 = /usr/sbin/hping3

tcpreplay = /usr/bin/tcpreplay ab = /usr/bin/ab

ping = /bin/ping

ncrack = /usr/local/bin/ncrack ncrackusers = data/ncrack-users.txt

(79)

data/ncrack-59 passwords.txt

localhost = 127.0.0.1

[FTP]

ftpproto = ftp ftpport = 21 ftpuser = q ftppasswd = 1

[TIMING]

sleepbeforegetalerts = 2 sleepbeforenexttest = 1 sleepbeforetwoftp = 2 urltimeout = 5

[SERVER] <

Gambar

Gambar 1.1informationweek.com survey
Gambar 2.1 Jaringan client-serverdan  jaringanPeer-to-Peer
Gambar 2.2 Firewall
Gambar 2.3  NIDS dan HIDS
+7

Referensi

Dokumen terkait

segala komponen-komponen, topologi sistem dan testbed uji coba dirancang pada tahap ini. c) Pengambilan data uji dengan berbagai skenario pengujian; pengujian akan

Berdasarkan pembahasan, ditarik simpulan sesuai tujuan penelitian. 1) Hasil dari penerapan Intrusion Detection System (IDS) berhasil mendeteksi serangan melalui 5 (lima)

Berikut adalah tabel hasil pengujian menggunakan beberapa jenis serangan yang sama dengan metode Hierarchical Clustering, K-Nearest Neighbor dan Fuzzy Neural

Nilai delay pada skenario III sebesar 80ms, hal ini terjadi karena pada saat IDS mendeteksi adanya serangan, system shutdown bekerja mematikan sink node, sehingga

Berdasarkan pengujian yang dilakukan, didapatkan hasil bahwa implementasi IDS Snort pada jaringan WLAN dapat membantu dalam mendeteksi anomali yang terjadi dalam jaringan

wireless ; 4) Akurasi dari sistem yang telah dibangun dalam mendeteksi RAP menunjukkan hasil yang cukup baik, dalam pengujian yang dilakukan menggunakan tiga skenario RAP

Hasil pengujian Dengan DDos Dengan IDS Snort Pengujian Sebelum Sesudah Ping ICMP 205 byte/s 418 bytes/s Nmap 205 bytes/s 48,0 kib/s DDoS 205 bytes/s 80.mb/s Dari hasil

Pengujian Serangan Port Scanning Pada gambar di atas, Penyerang berhasil melakukan pemindaian port port scanning terhadap jaringan komputer yang menjadi target dengan IP