• Tidak ada hasil yang ditemukan

ANALISA GENERALISASI RULES MENGGUNAKAN SNORT IDS.

N/A
N/A
Protected

Academic year: 2017

Membagikan "ANALISA GENERALISASI RULES MENGGUNAKAN SNORT IDS."

Copied!
110
0
0

Teks penuh

(1)

SKRIPSI

Diajukan Untuk Memenuhi Per syaratan

Dalam Memperoleh Gelar Sarjana Komputer

J urusan Teknik Infor matika

Disusun Oleh :

WISNU HADI SUWANDONO

NPM. 0934010144

J URUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNOLOGI INDUSTRI

(2)

SKRIPSI

Disusun Oleh :

WISNU HADI SUWANDONO

NPM. 0934010144

J URUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNOLOGI INDUSTRI

UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN”

J AWA TIMUR

(3)

SKRIPSI

Diajukan Untuk Memenuhi Per syaratan

Dalam Memperoleh Gelar Sarjana Komputer

J urusan Teknik Infor matika

Disusun Oleh :

WISNU HADI SUWANDONO

NPM. 0934010144

J URUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNOLOGI INDUSTRI

(4)

LEMBAR PENGESAHAN

ANALISA GENERALISASI RULES MENGGUNAKAN

SNORT IDS

Disusun Oleh :

Wisnu Hadi Suwandono

0934010144

Telah disetujui mengikuti Ujian Negara Lisan

Periode III Tahun Akademik 2013

Menyetujui,

Pembimbing Utama Pembimbing Pendamping

I Made Suartana, S.Kom, M.Kom. Kafi Ramadhani B, S.Kom.

NPT. 3 8904 13 0345 1

Mengetahui,

Ketua Program Studi Teknik Infor matika

Fakultas Teknologi Industri

Univer sitas Pembangunan Nasional “Veteran” J awa Timur

Dr. Ir. Ni Ketut Sar i, M.T.

(5)

SKRIPSI

ANALISA GENERALISASI RULES MENGGUNAKAN SNORT IDS

Disusun Oleh :

Wisnu Hadi Suwandono

0934010144

Telah dipertahankan dan di terima oleh Tim Penguji Lisan Pr ogram Studi Teknik Infor matika Fakultas Teknologi Industri

Univer sitas Pembangunan Nasional “Veteran” J awa Timur Pada tanggal : 20 Desember 2013

Pembimbing : Tim Penguji :

Univer sitas Pembangunan Nasional “Veteran” J awa Timur

(6)

KATA PENGANTAR

Assalamu’alaikum Wr. Wb.

Syukur Alhamdulillah atas segala limpahan karunia dan kasih sayang

Allah SWT, sehingga dengan segala keterbatasan waktu, tenaga, dan pikiran yang

dimiliki oleh penulis, akhirnya skripsi yang berjudul “ANALISA

GENERALISASI RULES MENGGUNAKAN SNORT IDS“ dapat

terselesaikan sesuai dengan waktu yang telah ditetapkan.

Melalui Skripsi ini, penulis merasa mendapat kesempatan besar untuk

memperdalam ilmu pengetahuan yang diperoleh selama di perkuliahan, terutama

dengan implementasi Teknologi Informasi dalam kehidupan sehari-hari. Namun

demikian penulis menyadari bahwa Skripsi ini masih memiliki banyak kelemahan

dan kekurangan. Oleh karena itu, kritik dan saran yang bersifat membangun

sangatlah diharapkan dari berbagai pihak agar Skripsi ini bisa lebih baik lagi,

sehingga dapat memberikan manfaat bagi semua pihak yang membutuhkannya.

Pada penyusunan Skripsi ini, banyak pihak yang telah memberikan

bantuan baik materiil maupun spiritual ini, sehingga pada kesempatan ini penulis

mengucapkan rasa terima kasih yang sebesar-besarnya kepada:

1. ALLAH SWT dan RASUL-Nya. Alhamdulillah atas segala kelancaran dan

kemudahan yang selalu engkau limpahkan kepada penulis.

2. Ibu Dr.Ir. Ni Ketut Sari,M.T. selaku ketua jurusan Teknik Informatika,

(7)

3. Bapak I Made Suartana, S.Kom, M.Kom dan Bapak Kafi Ramadhani

Borud, S.Kom. selaku dosen pembimbing . Terimakasih banyak telah

sabar membimbing dan memberi saran yang sangat bermanfaat kepada

penulis.

4. Teman-teman TFC’09, terimakasih selalu meramaikan dan memberi

hiburan disaat dalam kejenuhan.

5. For My Beloved Syilvia Nur Aini Terima kasih atas supportnya,waktu dan

doanya.

6. The last and the best, thanks to my beloved family Ibu, Alm.Ayah, Tante

ku yang selalu menjadi motivasi untuk cepat lulus kuliah.

Serta pihak-pihak lain yang ikut memberikan informasi dan data-data di

dalam menyelesaikan laporan Skripsi ini, penulis mengucapkan terima kasih.

Akhir kata penulis harap agar Skripsi yang disusun sesuai dengan kemampuan

dan pengetahuan yang sangat terbatas ini dapat bermanfaat bagi semua pihak yang

membutuhkan.

Wassalamu’alaikum Wr. Wb

Surabaya, Desember 2013

(8)

Halaman

ABSTRAK ... Er ror! Bookmar k not defined.

KATA PENGANTAR ... Er ror! Bookmar k not defined.

DAFTAR ISI ... iv

DAFTAR TABEL ... Er ror! Bookmar k not defined.

DAFTAR GAMBAR ... Er ror! Bookmar k not defined.

BAB I ... Er ror! Bookmar k not defined.

PENDAHULUAN ... Er ror! Bookmar k not defined.

1.1 Latar Belakang ... Er ror! Bookmar k not defined.

1.2 Rumusan Masalah ... Er ror! Bookmar k not defined.

1.3 Batasan Masalah ... Er ror! Bookmar k not defined.

1.4 Tujuan ... Er ror! Bookmar k not defined.

1.5 Manfaat ... Er ror! Bookmar k not defined.

1.6 Metodologi Penelitian ... Er ror! Bookmar k not defined.

1.7 Sistematika Penulisan ... Er ror! Bookmar k not defined.

BAB II ... Er ror! Bookmar k not defined.

(9)

2.2.1 Network-based Intrusion Detection System (NIDS) ... Er ror!

Bookmar k not defined.

2.2.2 Host-based Intrusion Detection System (HIDS)Er ror! Bookmar k

not defined.

2.3 Snort Rules ... Er ror! Bookmar k not defined.

2.3.1 Rule Header ... Er ror! Bookmar k not defined.

2.4 Snort Engine ... Er ror! Bookmar k not defined.

2.4.1 Alert ... Er ror! Bookmar k not defined.

2.5 BASE ... Er ror! Bookmar k not defined.

2.6 MySQL Server ... Er ror! Bookmar k not defined.

2.7 Php ... Er ror! Bookmar k not defined.

2.8 Aturan Generalisasi ... Er ror! Bookmar k not defined.

2.9 AWK ... Er ror! Bookmar k not defined.

2.10 IPTables ... Er ror! Bookmar k not defined.

2.11 Jenis Serangan SYN flooding attack ... Er ror! Bookmar k not defined.

BAB III... Er ror! Bookmar k not defined.

METODE DAN PERANCANGAN TUGAS AKHIREr ror! Bookmar k not

defined.

(10)

3.4 Kebutuhan Sistem ... Er ror! Bookmar k not defined.

3.5 Perancangan Sistem ... Er ror! Bookmar k not defined.

3.5.1 Alur Installasi Snort ... Er ror! Bookmar k not defined.

3.5.2 Alur Kerja Snort ... Er ror! Bookmar k not defined.

3.5.3 Alur Snort IDS ... Er ror! Bookmar k not defined.

3.5.4 Alur Aturan Generalisasi ... Er ror! Bookmar k not defined.

3.5.5 Alur Implementasi Generalisasi Snort RulesEr ror! Bookmar k

not defined.

3.5.6 Alur Kerja Keseluruhan Sistem ... Er ror! Bookmar k not defined.

3.5.7 Alur Uji Coba Dan Analisa ... Er ror! Bookmar k not defined.

3.6 Instalasi Sistem Snort IDS ... Er ror! Bookmar k not defined.

3.6.1 Instalasi Library Pendukung ... Er ror! Bookmar k not defined.

3.6.2 Instalasi Dan Konfigurasi Snort IDSEr ror! Bookmar k not

defined.

3.6.3 Konfigurasi Snort Database ... Er ror! Bookmar k not defined.

3.6.4 Instalasi BASE (Basic Analyze And Security Engine) ... Er ror!

Bookmar k not defined.

3.7 Pembuatan Dan Penerapan Generalisasi RulesEr ror! Bookmar k not

(11)

BAB IV ... Er ror! Bookmar k not defined.

UJI COBA dan ANALISA ... Er ror! Bookmar k not defined.

4.1 Kebutuhan Hardware ... Er ror! Bookmar k not defined.

4.2 Kebutuhan Software ... Er ror! Bookmar k not defined.

4.3 Uji Coba Serangan ... Er ror! Bookmar k not defined.

4.3.1 Serangan Port Scanning Zenmap . Er ror! Bookmar k not defined.

4.3.2 Serangan Hping3 SynFlood ... Er ror! Bookmar k not defined.

4.3.3 Scapy SynFlood ... Er ror! Bookmar k not defined.

4.4 Pengumpulan Alerts ... Er ror! Bookmar k not defined.

4.4.1 Merged.alert ... Er ror! Bookmar k not defined.

4.4.2 Allow.alert ... Er ror! Bookmar k not defined.

4.4.3 Rejected.alert ... Er ror! Bookmar k not defined.

4.5 Merangkum Hasil Alert ... Er ror! Bookmar k not defined.

4.6 Hasil Perbandingan Rules ... Er ror! Bookmar k not defined.

BAB V ... Er ror! Bookmar k not defined.

KESIMPULAN DAN SARAN ... Er ror! Bookmar k not defined.

5.1 Kesimpulan ... Er ror! Bookmar k not defined.

(12)
(13)

DOSEN PEMBIMBING II : KAFI RAMADHANI BORUD, S.Kom

PENYUSUN : WISNU HADI SUWANDONO

ABSTRAK

Perkembangan teknologi jaringan komputer semakin berkembang, seiring dengan itu semakin banyak terjadi serangan pada jaringan komputer. Serangan yang paling sering terjadi adalah Denial of Service (DOS attack), serangan SYN Flood salah satunya, dimana serangan ini bisa berakibat fatal pada target apabila dilakukan secara terus menerus.

Salah satu pencegahan yang umum dilakukan adalah dengan menambahkan Intrusion Detection System (IDS) yang memberikan lapisan keamanan pada sistem komputer dan jaringan. IDS bertanggung jawab untuk mendeteksi aktivitas jaringan yang mencurigakan atau tidak dapat diterima pada sistem yang nantinya akan memberi peringatan (alert) kepada administrator jaringan. Snort merupakan salah satu IDS yang populer digunakan dan secara aktif mengembangkan open source yang menggunakan satu set Signature yang dikenal dengan Snort Rules. Mencocokan pola atau Signature adalah metode yang digunakan pada IDS untuk mendeteksi serangan yang kemudian akan menghasilkan alert. Terkadang terdapat beberapa kelemahan dari alert yang dihasilkan apakah alert menunjukan serangan yang sebenarnya terjadi (true alert) atau menunjukan serangan yang bukan sebenarnya (false alert).

Dengan menambahkan generalisasi sederhana (removing dan inverting) pada Snort Rules diharapkan IDS dapat menghasilkan alert yang lebih bervariasi dan mampu mendeteksi dengan benar serangan yang terjadi khususnya disini serangan SYN Flood. Terbukti dengan melakukan generalisasi sederhana mampu meningkatkan akurasi dari alert yang dihasilkan dengan nilai prioritas yang lebih kecil daripada Snort Rules standart.

(14)

PENDAHULUAN

1.1 Latar Belakang

Penggunaan jaringan komputer saat ini semakin meluas tidak hanya

digunakan untuk perorangan tetapi juga dibutuhkan baik untuk organisasi, instansi

ataupun perusahaan. dikarenakan kemudahan untuk saling bertukar data dan

informasi. Terkadang data atau informasi bersifat pribadi dan sangat penting

sehingga diperlukan suatu pengaman tertentu agar tidak jatuh ke pihak yang tidak

bersangkutan. Keamanan jaringan merupakan hal yang harus diperhatikan dalam

membangun suatu jaringan komputer untuk menghindari serangan-serangan dari

pihak yang merugikan. saat ini banyak bermunculan cara dan teknik yang

dilakukan penyusup untuk masuk kedalam suatu jaringan komputer. Hal itu

diperlukan cara pencegahan dengan melakukan pendeteksian serangan secara

awal sehingga meminimalkan resiko dan kemudian dapat melakukan pencegahan

yang tepat. Salah satu contohnya menggunakan Sistem Deteksi Intrusi atau

Intrusion Detection System (IDS) pada jaringan tersebut. Menurut Onno Purbo

(2010), IDS merupakan usaha mengidentifikasi adanya penyusup yang memasuki

sistem tanpa otorisasi (misal cracker) atau seorang user yang sah tetapi

menyalahgunakan (abuse) sumber daya sistem.

IDS bertanggung jawab untuk mendeteksi tindakan atau hal, sistem yang

(15)

akan memberi peringatan (Alert) kepada Administrator bahwa telah terjadi

serangan didalam jaringan tersebut. Kebanyakan IDS menggunakan satu set tanda

tangan (Signature) yang mendefinisikan bahwa telah terjadi tindakan atau hal

yang mencurigakan dalam network traffic. Salah satu serangan yang umum

dilakukan adalah serangan SynFlood, SynFlood merupakan serangan dengan cara

mengirimkan paket SYN sebanyak mungkin ke target tanpa mengirimkan paket

ACK,sehingga target tidak dapat lagi memberikan layanan atau menerima request

dari client lain. Serangan seperti ini biasanya dilakukan pada layanan-layanan

terbuka seperti layanan web/HTTP, FTP. Apabila serangan ini dilakukan secara

terus menerus maka target akan bisa mengalami hang atau crash.Snort merupakan

salah satu IDS populeryang banyak digunakan untuk mendeteksi suatu paket

jaringan dan Snort merupakanopen sourcyang aktif melakukan pengembangkan

menggunakan suatuset tanda tangan yang dikenal sebagai aturan Snort (Snort

Rule).

Maka dari itu penulis melakukan Generalisasi Rule Menggunakan SNORT

IDS (Intrusion Detection System)untuk mengidentifikasi cara di mana Snort dapat

dikembangkan lebih lanjut dengan Generalisasi Ruleagar dapat mendeteksi

serangan SynFlood atau bahkan serangan-serangan baru.

1.2 Rumusan Masalah

Berdasarkan dari uraian latar belakang di atas maka dapat dirumuskan

suatu permasalahan.

(16)

2. Bagaimana melakukan pola Rule Generalisasi Snort pada Rule standart

untuk dapat mengidentifikasi serangan SynFlood atau bahkan serangan

baru yang terjadi didalam network traffic.

3. Bagaimana menampilkan alert hasil dari generalisasi rule dan melakukan

analisa.

1.3 Batasan Masalah

Dalam melakukan Generalisasi Rule Menggunakan SNORT IDS

(Intrusion Detection System), mempunyai batasan masalah sebagai berikut:

1. Metode Generalisasi yang digunakan adalah generalisasi sederhana yaitu

generalisasi invert (menghilangkan salah satu parameter) dan generalisasi

content (melakukan pembalikan pada nilai atau isi dari salah satu

parameter).

2. Pendeteksian serangan terbatas pada serangan Denial of Service attacks,

SynFlood attack, IP dan Port scanning.

3. Data Paket Jaringan yang digunakan adalah data paket yang berhasil di-log

oleh SNORT.

4. Pada penelitian tugas akhir ini parameter rules snort yang digunakan

untuk generalisasi rule adalah :

a) Depth

b) Offset

(17)

1.4 Tujuan

Tujuan dari Tugas Akhir ini adalah :

1. Mengerti dan memahami jenis-jenis serangan pada serangan Denial of

Service attacks, SynFlood attack, IP dan Port scanning.

2. Memahami dan mampu mengaplikasikan Generalisasi Rule Menggunakan

SNORT IDS (Intrusion Detection System)untuk mengidentifikasi serangan

SynFlood dan serangan-serangan baru.

1.5 Manfaat

Manfaat dari Tugas Akhir ini adalah :

1. Meminimalisir adanya kesalahan dan celah keamanan dari sebuah sistem

jaringan komputer.

2. Meminimalisir kesalahan Alert yang dihasilkan dari IDS.

3. Mengamankan jaringan komputer berbasis client-server menggunakan

debian server agar dapat melakukan pencegahan yang sesuai bedasarkan

serangan yang terjadi.

1.6 Metodologi Penelitian

Langkah-langkah yang dilakukan untuk pembuatan Tugas Akhir ini dibagi

(18)

a) Studi Literatur

Pada tahap ini dilakukan studi literatur terhadap konsep dan

metode ysng akan digunakan dan pengumpulan data-data yang

dibutuhkan.

b) Menetapkan definisi kebutuhan

Pada tahap ini dilakukan pendefinisian terhadap kemampuan

perangkat lunak yang akan dirancang dan batasan-batasannya.

c) Perancangan Sistem

Pada tahap ini dilakukan Perancangan model jaringan, simulasi

serangan, analisa kebutuhan sistem, penyediaan Hardware dan Software

pendukung dan perancangan kerja sistem.

d) Implementasi Sistem

Pada tahap ini dilakukan pengimplementasian Instalasi, konfigurasi

dan pengetesan kerja sistem.

e) Uji coba dan Analisa

Pada tahap ini dilakukan uji coba dan analisa terhadap sistem

dengan melakukan penyerangan dan kemudian membandingkan hasil dari

pendeteksian sistem.

f) Penyusunan Naskah Tugas Akhir

Pada tahap ini dilakukan penulisan naskah, dimana didalamnya

(19)

1.7 Sistematika Penulisan

Sistematika penulisan Tugas Akhir (TA) ini akan membantu mengarahkan

penulisan laporan agar tidak menyimpang dari batasan masalah yang dijadikan

sebagai acuan atau kerangka penulisan dalam mencapai tujuan penulisan laporan

Tugas Akhir (TA) sesuai dengan apa yang diharapkan. Tugas Akhir (TA) ini

terbagi dalam V Bab, yaitu :

BAB I PENDAHULUAN

Pendahuluan ini berisi mengenai gambaran umum tentang latar belakang

masalah, perumusan masalah, batasan masalah, tujuan, manfaat, metodologi

penelitian dan sistematika penulisan.

BAB II TINJ AUAN PUSTAKA

Tinjauan pustaka ini berisi tentang gambaran umum objek pekerjaan

pengertian - pengertian dasar dan teori - teori yang berhubungan dengan masalah

yang akan di bahas dalam Tugas Akhir (TA) ini sebagai landasan bagi pemecahan

yang di usulkan.

BAB III METODOLOGI PENELITIAN

Metodologi Penelitian ini berisi tentang perencanaan, analisa kebutuhan

sistem dan perancangan sistem.

BAB IV HASIL DAN PEMBAHASAN

Hasil dan Pembahasan ini berisi tentang pembuatan sistem, hasil dan

(20)

pengenalan pola terhadap penyerangan menggunakan aturan generalisasi untuk

meng-generalisasi Snort Rules agar dapat mendeteksi serangan baru

BAB V KESIMPULAN DAN SARAN

Berisi tentang kesimpulan yang di peroleh dari hasil pengana-lisaan data

dari bab-bab sebelumnya. Dimana berisi tentang saran-saran yang diharapkan

dapat bermanfaat dan dapat membangun serta mengembangkan isi laporan

tersebut sesuai dengan tujuan penulisan Laporan Tugas Akhir (TA).

LAMPIRAN

DAFTAR PUSTAKA

Pada bagian ini akan dipaparkan tentang sumber-sumber literatur yang

(21)

TINJ AUAN PUSTAKA

Pada bab II ini akan dibahas beberapa teori dasar untuk menunjang

penyelesaian tugas akhir ini, antara lain: Penelitian terdahulu, Snort IDS, Snort

Rules, SnortEngine, Alert, BASE, MySql Server, PHP, Generalisasi,

Pemrograman AWK, Iptables dan Jenis Serangan SYN floodingattack.

2.1. Penelitian Terdahulu

Penelitian yang dilakukan oleh Uwe Aickelin, Jamie Twycross and

Thomas Hesketh-Roberts (2008) yang berjudul “Rule Generalisation in Intrusion

Detection Systems using SNORT”. Penelitian ini menunjukkan bagaimana,

menggunakan generalisasi sederhana, Alert Rules dapat dimodifikasi untuk

muncul varian baru dari serangan lama. Dengan menggunakan metode ini mampu

mengidentifikasi Rules yang memiliki kriteria yang ketat dan juga menemukan

varian baru dari Trojan yang dikenal.Saat ini hanya lapisan permukaan pada paket

jaringan saja yang bisa dikenali pencocokan generalisasi Rules NIDS dan sulit

untuk membuat kesimpulan yang pasti. Namun beberapa pencocokan yang tidak

biasa dari generalisasi Rules menjelaskan bagaimana melakukan generalisasi

dengan bantuan Snort atau memang ada NIDS dalam menemukan serangan

(22)

yang sebagian besar menemukan sejumlah peringatan palsu. sekali tanda tersebut

dieliminasi, beberapa Alerts berpotensi dapat dikenali.

Penelitian yang dilakukan oleh Bambang Wijanarko (2009) yang berjudul

“Algoritma fuzzy sebagai metode pengenal pola serangan pada jaringan berbasis

snort”. Penelitian ini menunjukan bahwa mencocokan pola atau signature adalah

metode yang paling umum untuk mendeteksi serangan dan ini berarti IDS harus

mampu mengenali setiap teknik serangan. IDS memiliki database yang besar

dengan ribuan signature yang memunkinkan IDS mencocokan signature atau pola

serangan.Respon otomatis yang biasanya dilakukan adalah memberikan alert,

logging , atau mengirim email. Kelemahan respon otomatis yang umum adalah

terjadinya respon terhadap false negative dan false positive. Adalah penting untuk

memahami mengapa signature memicu dan mengidentifikasi true dari false

positive. Penggunaan algoritma fuzzy sebagai metode pembacaan signature atau

pola tertentu dari suatu paket serangan yang umum. Hasil dari pengujian data

real-time di jaringan dan data serangan akan didefinisikan, sehingga nantinya

dengan pengunaan algoritma fuzzy ini dapat mendeteksi setiap jenis serangan

baru dalam range yang lebar dan membantu mengeliminasi false positive atau

false negative.

Dari beberapa penelitian yang telah diuraikan, dapat disimpulkan bahwa

penggunaan Snort dalam memantau dan mengamankan suatu jaringan komputer

dapat lebih ditingkat keakuratan dalam mengenali suatu serangan hingga dapat

(23)

2.2. Snor t IDS

Gambar 2.1 Bagian-bagian IDS

Intrusion Detection System adalah sebuah aplikasi perangkat lunak atau

perangkat keras yang dapat mendeteksi aktivitas yang mencurigakan dalam

sebuah sistem atau jaringan. IDS dapat melakukan inspeksi terhadap lalu lintas

inbound dan outbound dalam sebuah sistem atau jaringan, melakukan analisis dan

mencari bukti dari percobaan intrusion(penyusupan). ada dua jenis dari IDS,

yaitu:

1.2.1 Networ k-based Intrusion Detection System (NIDS)

Semua lalu lintas yang mengalir ke sebuah jaringan akan dianalisis

untuk mencari apakah ada percobaan serangan atau penyusupan ke dalam

sistem jaringan. NIDS umumnya terletak di dalam segmen jaringan

penting di mana server berada atau terdapat pada "pintu masuk" jaringan.

(24)

dalam sebuah jaringan yang menggunakan switch Ethernet, meskipun

beberapa vendor switch Ethernet sekarang telah menerapkan fungsi IDS di

dalam switch buatannya untuk memonitor port atau koneksi. contoh:

melihat adanya network scanning.

1.2.2 Host-based Intr usion Detection System (HIDS)

Aktivitas sebuah host jaringan individual akan dipantau apakah

terjadi keanehan atau sesuatu yang tidak wajar, seperti sebuah percobaan

serangan atau penyusupan ke dalamnya atau tidak (anomali). HIDS

seringnya diletakkan pada server-server kritis di jaringan, seperti halnya

firewall, web server, atau server yang terkoneksi ke Internet

Gambar 2.2 Anomali deteksi serangan

(25)

Seperti pada gambar 2.2. IDS melakukan deteksi gangguan

keamanan dengan melihat Anomali pada jaringan. Anomali dapat

dijelaskan sebagai traffic atau aktivitas yang tidak sesuai dengan kebijakan

yang dibuat (policy). Contoh Anomali yang dijelaskan sebagai traffic/

aktivitas yang tidak sesuai dengan policy, adalah:

a. Akses dari atau menuju ke host yang terlarang.

b. Memllki Content atau Pattern yang terlarang (virus).

c. Menjalankan program yang terlarang.

SNORT merupakan salah satu contoh program dari NIDS yang

bersifat open source dimana dapat memantau dan mendeteksi apabila

terjadi tindakan penyusupan pada sebuah jaringan komputer. salah satu

kelebihannya adalah mampu mengirimkan alert dari mesin Unix atupun

Linux ke platform Microsoft Windows dengan melalui SMB. Snort dapat

berkerja dalam 3 mode:

a. sniffer mode (penyadap), Untuk melihat paket yang lewati jaringan

komputer dimana snort diletakkan.

b. packet logger, Untuk melakukan pencatatan semua paket yang

lewat di jaringan untuk disimpan ke dalam disk untuk kemudian

dianalisa.

c. network intrusion detection mode, Pada mode ini snort akan

berfungsi untuk mendeteksi serangan yang dilakukan melalui

(26)

setup dari berbagai rules / aturan yang akan membedakan sebuah

paket normal dengan paket yang membawa serangan.

Tentunya mode kerja yang akan digunakan dalam membangun

sistem pencegahan penyusupan dalam mode kerja network intrusion

dection. Penyusupan (intrusion) didefinisikan sebagai kegiatan yang

bersifat anomaly, incorrect atau inappropriate yang terjadi di jaringan atau

di host. Komponen-komponen Snort IDS meliputi:

a. Snort Rules

b. Snort Engine

c. Alert

(Sumber referensi:Sistem deteksi intrusi,

http://id.wikipedia.org/wiki/Sistem_deteksi_intrusi. 18 Juni 2013, 14.46

WIB)

2.3. Snor t Rules

Merupakan database yang berisi pola-pola serangan berupa Signature

jenis-jenis serangan. Rule Snort IDS ini, harus diupdate secara rutin agar ketika

ada suatu teknik serangan yang baru sehingga serangan tersebut dapat terdeteksi.

kebanyakan rule snort ditulis dalam satu baris (single line). Aturan Snort dibagi

menjadi dua bagian logis, Rule Headersdan Rule Options. Rule Headers berisi

Actions Rule, Protocols, Source dan Destination IP Address dan netmasks, dan

Source dan Destination Port sedangkan Rule Options berisi Alert Message dan

(27)

tindakan aturan harus diambil.( Chapter 7 • Playing by the Rules, Snort Intrusion

Detection and Prevention Toolkit, 2007 : 302)

Gambar 2.3 Contoh sederhana Snort Rule

1.3.1 Rule Header

Rule Header berisi dari beberapa bagian yang memiliki tugas dan

fungsi masing-masing, diantaranya adalah: Action Rule, Protocols, IP

Address, Ports Numbers, Direction Operator, Activate/Dynamic Rules

dan Rule Options.

2.3.1.1. Actions Rule

berisi informasi yang mendefinisikan siapa, di mana, dan

apa isi dari sebuah paket, serta apa yang harus dilakukan dalam hal

paket dengan semua atribut ditunjukkan dalam aturan harus muncul.

Dengan kata lain tindakan pertama dalam Action Rule adalah

membertitahukan kepada snort apa yang harus dilakukan oleh snort

ketika menemukan paket yang sesuai dengan criteria rule yang ada.

Ada lima actions yang terdapat didalam snort yaitu alert, log, pass,

active dan dynamic. Jika kita menjalankan snort dalam mode inline

maka kita memiliki pilihan tambahan yang meliputi include drop,

(28)

- Alert : menghasilkan peringatan dengan menggunakan metode

peringatan yang dipilih, dan kemudian mencatat paket.

- Log : Mencatat paket yang ada.

- Pass : Mengabaikan paket.

- Activate : Waspada dan kemudian menghidupkan aturan lain

Dynamic Rule.

- Dynamic : Tetap diam sampai diaktifkan oleh Active rule,

kemudian bertindak sebagai Log rule.

- Drop : Memblokir dan mencatat paket.

- Reject : Memblokir paket, mencatat paket, dan kemudian

mengirim ulang jika TCP protokol adalah TCP atau ICMP port

unreachable.

- Message : jika protokol yang digunakan adalah UDP.

- Sdrop : Memblokir paket tetapi tidak mencatatnya.

2.3.1.2. Pr otocols

Bagian berikutnya dalam sebuah Rule Header adalah

protokol. Ada empat protokol yang Snort gunakan saat menganalisis

perilaku yang mencurigakan, yaitu: TCP, UDP, ICMP, dan IP. Di

masa depan mungkin ada lebih seperti ARP, IGRP, GRE, OSPF, RIP,

IPX, dll.

2.3.1.3. IP Addr ess

Bagian berikutnya dari Rule Header adalah Alamat IP dan

(29)

rule bisa ditulis dengan alamat IP secara lengkap beserta netmasknya

dan nilai CIDR atau menggunakan kata kunci “Any” untuk

menentukan banyak alamat IP. Ada penggunaan operator yang dapat

diterapkan ke alamat IP yaitu, operator negasi. Operator ini

memberitahu Snort untuk menyesuaikan Alamat IP kecuali yang

ditunjukkan oleh alamat IP yang terdaftar. Operator negasi ditandai

dengan!. Sebagai contoh, kemudahan modifikasi dengan contoh awal

adalah untuk membuatnya waspada pada setiap lalu lintas yang

berasal dari luar jaringan lokal dengan operator negasi seperti yang

ditunjukkan pada Gambar 2.2.

Gambar 2.4 Contoh IP Address Dengan Aturan Negasi.

2.3.1.4. Ports Number s

Nomor port dapat ditentukan dengan berbagai cara,

termasuk penggunaan semua port, definisi port statis, rentang port dan

dengan negasi. Port statis ditandai dengan nomor port tetap, seperti

111 untuk portmapper, 23 untuk telnet, atau 80 untuk http, dll.

Penulisan nomor port juga bisa dilakukan dengan menggunakan port

(30)

Gambar 2.5 Contoh Penulisan Port Range

2.3.1.5. Direction Operator

Direction Operator “->” menunjukkan orientasi, atau arah

dari lalu lintas terhadap aturan yang berlaku. Alamat IP dan nomor

port di sisi kiri dari operator arah dianggap lalu lintas yang datang dari

sumber host ( source host ) dan alamat beserta informasi port pada sisi

kanan operator adalah host tujuan ( destination host). Ada juga

Operator dua arah bidirectional operator, yang ditandai dengan

simbol“<>”. Ini memberitahu Snort untuk mempertimbangkan alamat

/ pasangan port baik dalam sumber atau orientasi tujuan. bidirectional

operator berguna untuk merekam / menganalisis kedua sisi percakapan

suatu, seperti telnet atau sesi POP3. Sebuah contoh dari operator

bidirectional sedang digunakan untuk merekam kedua sisi dari sesi

telnet seperti pada contoh gambar 2.4.

Gambar 2.6 Contoh Bidirectional Operator

2.3.1.6. Activate/Dynamic Rules

Activate/Dynamic Rules memberikan Snort kemampuan

yang kuat karena memiliki satu aturan untuk mengaktifkan aturan lain

(31)

berguna jika ingin mengatur Snort untuk melakukan tindakan

pencatatan/perekaman ketika salah satu rule dimatikan. Activate Rules

bertindak seperti Alert Rule, kecuali mereka memiliki * required *

Opsi yang telah ditentukan. bidang: mengaktifkan. Dynamic Rules

bertindak seperti Log Rule, tetapi mereka memiliki perbedaan bidang

opsi yaitu pengaktifannya.

ActivateRule seperti sebuah peringatan tetapi juga

memberitahu Snort untuk menambahkan aturan ketika peristiwa

jaringan tertentu terjadi. Dynamic Rule sama seperti halnya Log Rule

kecuali DynamicRule diaktifkan ketika Activate Rule id padam.

Gambar 2.7 Activate/Dynamic Rules

2.3.1.7. Rule Options

Membentuk inti dari mesin deteksi intrusi Snort,

menggabungkan kemudahan penggunaan dengan kekuatan dan

fleksibilitas. semua Rule Option Snort terpisah satu sama lain

menggunakan koma (;) karakter. Kata kunci Rule Option dipisahkan

dari argumen mereka dengan titik dua (:) karakter. Ada empat kategori

(32)

a. General, Opsi ini memberikan informasi tentang aturan tapi

tidak punya pengaruh apapun selama pendeteksian

berlangsung.

b. Payload, Opsi ini untuk mencari semua data di dalam payload

paket dan dapat saling berhubungan.

c. Non-payload, Opsi ini untuk mencari data diluar payload.

d. Post-detection, Opsi ini sebagai pemicu spesifik aturan yang

terjadi setelah aturan telah "dimatikan".

(Chapter 7 • Playing by the Rules, Snort Intrusion Detection and

Prevention Toolkit, 2007 : 302-305).

2.4. Snor t Engine

Snort Engine merupakan program yang berjalan sebagai daemon proses

yang selalu bekerja untuk membaca paket data dan kemudian membandingkannya

dengan rule Snort. Dalam sistem Linux, untuk mendeteksi apakah snort engine

dalam keadaan aktif atau tidak dengan melihat prosesnya seperti contoh di bawah

ini.

Gambar 2.8 Snort Engine

(Sumber : Hartono Puji, 2006. Sistem Pencegahan Penyusupan pada Jaringan

(33)

Gambar diatas menunjukkan bahwa snort engine dalam keadaan aktif

dengan proses ID 3060 dan dijalankan oleh user ”root”. (Sumber referensi :

Hartono Puji, 2006: 10)

1.4.1 Alert

Alert merupakan hasil output pada sistem deteksi penyusupan yang

berisi tentang catatan serangan yang terjadi. Snort engine akan

mencocokan paket data yang melewati jaringan, apabila terdapat

kecocokan dengan rules yang telah ditentukan sebelumnya maka akan

dianggap sebagai serangan, maka snort engine akan mengirimkan alert

berupa log file.

Gambar 2.9 Sistem Deteksi Snort

(34)

Untuk kebutuhan analisa, alert dapat disimpan di dalam database,

sebagai contoh ACID (Analysis Console for Intrusion Databases) sebagai

modul tambahan pada Snort. Contoh alert sebagai berikut :

Gambar 2.10 Snort Alert

Contoh alert di atas merupakan alert ketika terdapat paket data

dalam ukuran besar dari IP Address 10.1.4.113 ke 10.1.3.126 yang

dianggap sebagai serangan oleh Snort karena pola paket data tersebut

terdapat dalam rule Snort.

2.5. BASE

merupakan (Basic Analysis and Security Engine). Hal ini didasarkan pada

kode dari Konsol Analisis untuk DatabaseIntrusion (ACID) proyek. Aplikasi ini

menyediakan web front-end untuk query dan menganalisa alert yang berasal dari

sistem IDS Snort. BASE adalah antarmuka web untuk melakukan analisis

gangguan yang telah terdeteksi oleh snort pada suatu jaringan. Base menggunakan

otentikasi pengguna dan sistem peran-base, sehingga sebagai admin keamanan

dapat memutuskan apa dan bagaimana informasi setiap pengguna dapat di lihat.

BASE memiliki kemudahan untuk digunakan, program pengopersian berbasis

web memudahkan orang yang tidak nyaman dengan mengedit file secara

(35)

terhadap desain basis data (atau baru terhadap BASE) untuk membuat Tabel,

Query, Form, dan Report, bersama dengan sekumpulan definisi tabel yang sudah

didefinisikan untuk melacak Asset, Konsumen, Penjualan, Invoice, dan banyak

lagi. Ketika hanya memerlukan basis data personal, BASE menawarkan mesin

basis data relasional HSQL, dikonfigurasi untuk pengguna tunggal, dengan data

tersimpan pada dokumen BASE, beserta dengan dukungan native untuk dokumen

dBase.

Untuk kebutuhan yang lebih besar, BASE mendukung berbagai basis data

yang populer secara native: MySQL, Adabas D, Microsoft Access, dan

PostgreSQL Sebagai tambahan, dukungan untuk driver standar JDBC dan ODBC

juga mengijinkan untuk terhubung secara virtual pada sembarang basis data yang

ada. BASE terintegrasi dengan aplikasi OpenOffice.org yang lain, misalnya

1. menyediakan data buku alamat untuk mail merge pada WRITER

menggunakan standar industri protokol LDAP, atau format buku alamat

yang umum seperti Microsoft Outlook, Microsoft Windows dan Mozilla.

2. membuat jangkauan data yang terhubung pada dokumen CALC untuk

analisa data pilot atau sebagai dasar untuk bagan.

(Sumber referensi: http://base.secureideas.net/about.php. 22 Juni 2013, 18.22

(36)

Gambar 2.11 Tampilan BASE

2.6. MySQL Server

MySQL adalah sebuah implementasi dari sistem manajemen basisdata

relasional (RDBMS) yang didistribusikan secara gratis dibawah lisensi GPL

(General Public License). Setiap pengguna dapat secara bebas menggunakan

MySQL, namun dengan batasan perangkat lunak tersebut tidak boleh dijadikan

produk turunan yang bersifat komersial. MySQL sebenarnya merupakan turunan

salah satu konsep utama dalam basisdata yang telah ada sebelumnya; SQL

(Structured Query Language). SQL adalah sebuah konsep pengoperasian basis

data, terutama untuk pemilihan atau seleksi dan pemasukan data, yang

memungkinkan pengoperasian data dikerjakan dengan mudah secara

otomatis.Kehandalan suatu sistem basisdata (DBMS) dapat diketahui dari cara

kerja pengoptimasi-nya dalam melakukan proses perintah-perintah SQL yang

(37)

Sebagai peladen basis data, MySQL mendukung operasi basisdata transaksional

maupun operasi basisdata transaksional. Pada modus operasi

non-transaksional, MySQL dapat dikatakan unggul dalam hal unjuk kerja

dibandingkan perangkat lunak peladen basisdata kompetitor lainnya. Namun

demikian pada modus non-transaksional tidak ada jaminan atas reliabilitas

terhadap data yang tersimpan, karenanya modus non-transaksional hanya cocok

untuk jenis aplikasi yang tidak membutuhkan reliabilitas data seperti aplikasi

blogging berbasis web (wordpress), CMS, dan sejenisnya. Untuk kebutuhan

sistem yang ditujukan untuk bisnis sangat disarankan untuk menggunakan modus

basisdata transaksional, hanya saja sebagai konsekuensinya unjuk kerja MySQL

pada modus transaksional tidak secepat unjuk kerja pada modus

non-transaksional.

(Sumber referensi: http://id.wikipedia.org/wiki/MySQL, 22 Juni 2013. 19.47

WIB)

2.7. Php

PHP Hypertext Preprocessor atau biasa disebut PHP adalah. bahasa

pemrograman yang digunakan secara luas untuk penanganan pembuatan dan

pengembangan sebuah situs web dan bisa digunakan bersamaan dengan HTML.

Bahasa Pemrogramman PHP memiliki file extensi *.php dan tidak bisa di access

secara langsung tanpa adanya sebuah web server. Syntax-Syntax PHP diawali dan

di akhiri dengan <?php…..?> atau <?...?>. Syntax PHP juga dapat di sisipkan

(38)

diawali dengan simbol $ (dolar), jika simbol tersebut tidak ada maka variabel

statement atau disebut juga dengan baris perintah. Baris perintah itu sendiri yaitu

suatu syntax yang terdiri dari satu line yang di akhiri dengan ; (titik koma). Jika

tidak diakhiri dengan ; (titik koma) maka akan terjadi error pada statement

tersebut. Jika anda mempunyai sebuah variable yang digunakan untuk

menampung value yang bertipe String maka harus diberi tanda " " (petik dua 2x).

Namun jika tidak bertipe String maka tidak perlu diberi " " (petik dua 2x) [4].

Berikut ini adalah contoh penulisan syntax PHP:

<?php

$nama = "Muhammad";

echo"Hallo Nama Saya " + $nama;

?> atau

<?

$nama = "Muhammad";

echo"Hallo Nama Saya " + $nama;

?>

(39)

Hallo Nama Saya Muhammad (sulaeman, dede : 2009, 1-5)

2.8. Atur an Generalisasi

Tujuan dari pembuatan aturan generalisasi adalah menghasilkan rules baru

dari rules original Snort agar didapat variasi alerts yang dihasilkan dari

pembacaan suatu paket jaringan. Dengan kondisi yang telah ditentukan :

1. Melakukan penghapusan salah satu parameter didalam snort rules agar

didapat lebih banyak kemungkinan paket akan cocok dengan generalisasi

rules (Removing).

2. Melakukan pembalikan salah satu nilai parameter didalam snort rules agar

didapat pencarian lebih banyak kemungkinan untuk menghasilkan alerts

yang berbeda (Inverting).

Pada Removing, parameter yang digunakan adalah depth dan

offset.Keyworddepth memungkinkan penulis rule untuk menetapkan seberapa jauh

snort harus mencari pola tertentu dalam sebuah paket. Misalkan (depth:5) akan

memberitahu Snort untuk hanya mencari pola tertentu dalam 5 byte pertama dari

payload. Keywordoffset memungkinkan penulis rule untuk menentukan dimana

memulai melakukan pencarian suatu pola didalam sebuah paket. Misalkan

(offset:5) akan memberitahu Snort untuk mulai mencari pola tertentu setelah 5

(40)

Gambar 2.12 Rule pencarian content, depth dan offset

Pada rule diatas menginstruksikan untuk melewati 4 byte pertama dan

mencari “cgi-bin/phf” dalam 20 byte berikutnya. Pada Inverting, parameter yang

digunakan adalah content. Keyword content merupakan salah satu dari fitur

Snort yang cukup penting, memungkinkan untuk mengeset rule yang mencari

konten spesifik dalam payload paket dan memicu respons bedasarkan data

tersebut. Data opsi untuk keyword content terkadang rumit, karena bisa

mengandung campuran data teks dan binary.

Gambar 2.13 Rule pencarian content

Pada gambar diatas, pengubah “!” melarang hasil dari pencarian seluruh

konten dan disana hanya terdapat 5 byte payload serta tidak ada “A” dalam 5 byte

tersebut, maka hasilnya cocok. Pada gambar diatas, pengubah “!” melarang hasil

dari pencarian seluruh konten dan disana hanya terdapat 5 bytepayload serta tidak

ada “A” dalam 5 byte tersebut, maka hasilnya cocok. (Rafiudin, Rahmat. 2010

“Mengganyang Hacker dengan SNORT” Halaman: 74 - 78 )

2.9. AWK

AWK adalah bahasa pemrograman yang ditafsirkan untuk pengolahan teks

dan secara khusus dirancang untuk digunakan sebagai alat ekstraksi data dan

(41)

AWK sangat populer di akhir 1970-an dan 1980-an, tetapi dari tahun 1990-an

sebagian besar telah oleh Perl. AWK diciptakan di Bell Labs pada tahun 1970,

dan namanya berasal dari nama keluarga penulisnya - Alfred Aho, Peter

Weinberger, dan Brian Kernighan. Tujuan pemrograman AWK yaitu untuk

memberikan UNIX suatu tujuan umum bahasa pemrogramn yang dapat

menghandle text (string) semudah mengolah angka – angka. Dan AWK adalah

adalah salah satu fasilitas UNIX yang sangat baik untuk melakukan hal tersebut.

Area proses AWK yaitu proses berdasarkan baris – baris prosesnya. AWK

merupakan suatu standart permograman untuk nawk ( new awk) yang memiliki

fasilitas yang lebih besar dari awk program.

Sumber – sumber input pemrograman AWK yaitu :

a. File – file : input AWK dapat dari file – file yang kita upload kedalam

program untuk dijadikan sebagi input dalamprogram

b. redirection (pembelokan) : input – input yang diberikan dapat dialihkan

sebagai input yang lain.

c. pipes (pipa) : proses pipa dimana output suatu proses akan dijadikan

sebagai input untuk proses yang lain

d. Standart input : input yang berasal dari keybord sebagai input untuk suatu

proses.

(Sumber referensi : http://ms.wikipedia.org/wiki/AWK. 22 Juni 2013

(42)

2.10. IPTables

IPTables merupakan command untuk menentukan sebuah rule-rule

firewall dalam tugasnya menjaga sebuah jaringan. IPTables memiliki tiga fungsi

utama untuk menentukan arah putaran paket data. Ketiga fungsi tersebut yaitu

Packet Filtering, NAT, Packet Mangling. Packet Filtering digunakan untuk

memilah dan memberikan ijin ACCEPT/DROP pada suatu paket data, sedangkan

NAT digunakan untuk mengubah alamat ip sumber atau tujuan dari suatu paket

dalam jaringan, dan untuk Packet Manglilng digunakan untuk memodifikasi paket

QoS (Quality of Service). IPTables juga memiliki tiga macam daftar aturan

bawaan dalam tabel penyaringan, daftar tersebut dinamakan rantai firewall

(firewall chain) atau sering disebut juga chain saja. Ketiga chain tersebut adalah

INPUT, OUTPUT dan FORWARD (Farunuddin, Rakhmat, 2005).s

Gambar 2.14 Skema IPTables

Pada gambar 2.14, Lingkaran menggambarkan ketiga rantai atau chain.

Pada saat sebuah paket sampai pada sebuah lingkaran, maka disitulah terjadi

proses penyaringan. Rantai akan memutuskan nasib paket tersebut. Apabila

(43)

memutuskan untuk ACCEPT, maka paket akan dilewatkan melalui diagram

tersebut.

Sebuah rantai adalah aturan-aturan yang telah ditentukan. Setiap aturan

menyatakan “jika paket memiliki informasi awal (header) seperti ini, maka inilah

yang harus dilakukan terhadap paket”. Jika aturan tersebut tidak sesuai dengan

paket, maka aturan berikutnya akan memproses paket tersebut. Apabila sampai

aturan terakhir yang ada, paket tersebut belum memenuhi salah satu aturan, maka

kernel akan melihat kebijakan bawaan (default) untuk memutuskan apa yang

harus dilakukan kepada paket tersebut. Ada dua kebijakan bawaan yaitu default

DROP dan default ACCEPT. Jalannya sebuah paket melalui gambar 2.23 bisa

dicontohkan sebagai berikut:

1. Perjalanan paket yang diforward ke host yang lain.

a. Paket berada dalam jaringan fisik, contoh internet.

b. Paket masuk ke interface jaringan, contoh eth0.

c. Paket masuk ke chain PREROUTING pada table Mangle. Chain

ini berfungsi untuk me-mangle (menghaluskan) paket, seperti

merubah TOS, TTL dan lain-lain.

d. Paket masuk ke chain PREROUTING pada tabel nat. Chain ini

berfungsi utamanya untuk melakukan DNAT (Destination Network

Address Translation).

e. Paket mengalami keputusan routing, apakah akan diproses oleh

(44)

f. Paket masuk ke chain FORWARD pada tabel filter. Disinlah

proses pemfilteran yang utama terjadi.

g. Paket masuk ke chain POSTROUTING pada tabel nat. Chain ini

berfungsi utamanya untuk melakukan SNAT (Source Network

Address Translation).

h. Paket keluar menuju interface jaringan, contoh eth1.

i. Paket kembali berada pada jaringan fisik, contoh LAN.

2. Perjalanan paket yang ditujukan bagi host lokal

a. Paket berada dalam jaringan fisik, contoh internet.

b. Paket masuk ke interface jaringan, contoh eth0.

c. Paket masuk ke chain PREROUTING pada tabel mangle.

d. Paket masuk ke chain PREROUTING pada tabel nat.

e. Paket mengalami keputusan routing.

f. Paket masuk ke chain INPUT pada tabel filter untuk mengalami

proses penyaringan.

g. Paket akan diterima oleh aplikasi lokal.

3. Perjalanan paket yang berasal dari host lokal.

a. Aplikasi lokal menghasilkan paket data yang akan dikirimkan

melalui jaringan.

b. Paket memasuki chain OUTPUT pada tabel mangle.

c. Paket memasuki chain OUTPUT pada tabel nat.

d. Paket memasuki chain OUTPUT pada tabel filter.

e. Paket mengalami keputusan routing, seperti ke mana paket harus

(45)

f. Paket masuk ke chain POSTROUTING pada tabel NAT.

g. Paket masuk ke interface jaringan, contoh eth0.

h. Paket berada pada jaringan fisik, contoh internet.

Sintaks IPTables

iptables [-t table] command [match] [target/jump]

(Sumber referensi: IPTables, Tutorial IPTables, Lukman HDP/s3trum,

http://rootbox.or.id/tips/iptables.html, 18 Juni 2013, 13.24 WIB)

2.11. J enis Ser angan SYN flooding attack

SYN flooding attack adalah istilah teknologi informasi dalam bahasa

Inggris yang mengacu kepada salah satu jenis serangan Denial-of-service yang

menggunakan paket-paket SYN.

Paket-paket SYN adalah salah satu jenis paket dalam protokol

Transmission Control Protocol yang dapat digunakan untuk membuat koneksi

antara dua host dan dikirimkan oleh host yang hendak membuat koneksi, sebagai

langkah pertama pembuatan koneksi dalam proses "TCP Three-way Handshake".

Dalam sebuah serangan SYN Flooding, si penyerang akan mengirimkan

paket-paket SYN ke dalam port-port yang sedang berada dalam keadaan "Listening"

yang berada dalam host target. Normalnya, paket-paket SYN yang dikirimkan

berisi alamat sumber yang menunjukkan sistem aktual, tetapi paket-paket SYN

dalam serangan ini didesain sedemikian rupa, sehingga paket-paket tersebut

(46)

dengan sebuah paket SYN/ACK yang ditujukan kepada alamat yang tercantum di

dalam SYN Packet yang ia terima (yang berarti sistem tersebut tidak ada secara

aktual), dan kemudian akan menunggu paket Acknowledgment (ACK) sebagai

balasan untuk melengkapi proses pembuatan koneksi. Tetapi, karena alamat

sumber dalam paket SYN yang dikirimkan oleh penyerang tidaklah valid, paket

ACK tidak akan pernah datang ke target, dan port yang menjadi target serangan

akan menunggu hingga waktu pembuatan koneksi "kadaluwarsa" atau timed-out.

Jika sebuah port yang listening tersebut menerima banyak paket-paket SYN, maka

port tersebut akan meresponsnya dengan paket SYN/ACK sesuai dengan jumlah

paket SYN yang ia dapat menampungnya di dalam buffer yang dialokasikan oleh

sistem operasi. Jumlah percobaan pembuatan koneksi TCP yang dapat ditampung

oleh sebuah host di dalam buffer memang berbeda-beda antara satu platform

dengan platform lainnya, tapi jumlahnya tidak lebih dari beberapa ratus buah

koneksi saja. Dengan mengirimkan banyak paket SYN ke sebuah port yang

berada dalam keadaan listening yang berada dalam host target, buffer koneksi

yang dialokasikan oleh sistem penerima dapat mengalami "kepenuhan" dan target

pun menjadi tidak dapat merespons koneksi yang datang hingga paket SYN yang

sebelumnya mengalami "timed-out" atau buffer memiliki ruang tampung yang

lebih banyak.

Beberapa sistem operasi bahkan dapat mengalami hang ketika buffer

koneksi terlalu penuh dan harus di-restart. Baik pe-restart-an ulang sistem operasi

atau buffer yang dipenuhi dengan paket SYN yang tidak jelas datangnya dari

(47)

menjadi tidak dapat mengakses layanan-layanan dalam jaringan. Sistem server di

mana pengguna hendak mengakses pun menolak request akses dari pengguna.

Ada beberapa cara yang dapat dilakukan untuk mencegah dan mengurangi efek

dari SYN Flooding, yakni sebagai berikut:

a. Meningkatkan ukuran buffer koneksi TCP untuk meningkatkan jumlah

percobaan pembuatan koneksi yang dapat dilakukan secara simultan. Hal

ini memang menjadi solusi sementara, karena penyerang juga mungkin

meningkatkan ukuran paket SYN yang ia kirimkan untuk memenuhi buffer

tersebut.

b. Mengurangi nilai waktu kapan sebuah percobaan pembuatan koneksi TCP

menjadi "timed-out". Hal ini juga menjadi solusi sementara, apalagi jika

jaringan di mana sistem berada sangat sibuk atau lambat.

c. Mengimplementasikan penapisan paket yang masuk ke dalam router,

sehingga memblokir semua serangan yang menggunakan alamat palsu. Hal

ini juga menjadi solusi sementara, karena tidak semua ISP

mengimplementasikan fitur seperti ini. Memantau firewall dan

mengonfigurasikannya untuk memblokir serangan SYN flood ketika hal

tersebut terjadi. Pendekatan ini merupakan pendekatan yang sering

dilakukan oleh banyak organisasi, apalagi jika ditambah dengan Intrusion

Prevention System (IPS), meski hal ini membutuhkan kejelian dari seorang

administrator jaringan untuk memantau catatan (log) dari IPS dan firewall

yang ia atur. Bahkan, dengan kedua perangkat tersebut, klien-klien yang

(48)

(Sumber referensi: SYN flooding attack,

(49)

METODE DAN PERANCANGAN TUGAS AKHIR

3.1 Tahapan dan Cara Penelitian

Berdasarkan latar belakang dan perumusan masalah yang terdapat dalam

bab sebelumnya dapat diketahui perancangan yang dilakukan untuk membuat

Generalisasi Rule Menggunakan SNORT IDS (Intrusion Detection System) ini,

yaitu :

a. Perancangan model jaringan.

b. Analisa kebutuhan sistem.

c. Penyediaan Hardware dan Software pendukung.

d. Perancangan kerja sistem.

e. Instalasi, konfigurasi dan pengetesan sistem

3.2 Rancangan J aringan Komputer

Rancangan jaringan yang digunakan terdiri dari 4 bagian, yaitu : PC

Router+Snort IDS, Server, Client 1 dan Client 2 dimana diantaranya berjalan di

(50)

Gambar 3.1 Rancangan jaringan komputer

Rancangan jaringan pada Gambar 3.1 merupakan rancangan Lan. Letak

Snort IDS berada setelah router. Alasan kenapa Snort diletakkan di dalam router

adalah karena router merupakan pintu masuk dan keluar antara jaringan WAN

(internet) dan LAN, supaya Snort IDS dapat menyaring semua akses keluar dan

masuk ketika usermengakses internet dalam jaringan virtual yang disimulasikan

dalam VirtualBox. Dalam simulasi ini, Server merupakan operating system nyata

yaitu Linux Ubuntu 11.04 dan untuk PC Router, Snort IDS, Client 1 dan Client 2

semuanya menggunakan mesin virtual.

3.3 Rancangan Serangan SynFlood

Paket-paket SYN adalah salah satu jenis paket dalam protokol

Transmission Control Protocol yang dapat digunakan untuk membuat koneksi

antara dua host dan dikirimkan oleh host yang hendak membuat koneksi, sebagai

langkah pertama adalah pembuatan koneksi dalam proses "TCP Three-way

(51)

Gambar 3.2Paket data client-server

Pada gambar 3.2 merupakan transaksi data antara client dan serveryang

berjalan dengan normal dimana client mengirimkan paket SYN (SYNchronize),

kemudian Server yang menerima paket SYN akan menjawab dengan

mengirimkan paket SYN+ACK (ACKnowledge) dan kemudian akan menanti

sebuah jawaban dari client berupa paket ACK.

Dari proses di atas kemudian muncul kelemahan, yaitu proses yang terjadi

pada tahap 2, dimana Server akan menampung sejumlah antrian koneksi yang

menanti konfirmasi akhir dari Client (Paket ACK) untuk bisa melanjutkan proses

transaksi data. Apa yang terjadi jika BACKLOG dipenuhi dengan antrian koneksi

yang sebernarnya berasal dari Client yang tidak ada, yang terjadi kemudian adalah

Client lain yang benar-benar nyata ingin mengakses Server kemudian tidak bisa

(52)

Gambar 3.3Serangan SynFlood

Pada gambar 3.3 merupakan serangan SynFlood, dimana attackertidak

mengirimkan paket ACK setelah server mengirimkan paket SYN-ACK. Sehingga

server akan terus menunggu dan mencari paket kiriman ACK dari attacker yang

tidak kunjung datang dan akhirnya server tidak menanggapi pengiriman paket

SYN dari client lain.

3.4 Kebutuhan Sistem

Untuk membangun sebuah Snort IDS, dalam tugas akhir ini menggunakan

aplikasi open-source Snort 2.8.5.2 yang akan di-install di Debian 6 Sequeeze.

Pada dasarnya Snort merupakan sebuah IDS, sehingga hanya memerlukan

Libpcap yang merupakan suatu packet capture library dan juga memerlukan

PCRE (Pearl Compatible Regular expression) Library yang merupakan fungsi

(53)

packet queing libraries, yaitu Libdnet, Libipq, Libpcap dan DAQ. Libdnet library

digunakan untuk mengijinkan firewall melakukan queue paket dari kernel ke

snort, sedangkan Libipq library digunakan snort untuk dapat berhubungan dengan

IPTables .

Untuk menjalankan keseluruhan sistem maka dibutuhkan beberapa

langkah-langkah dan installasi sistem operasi dan paket-paket pendukung yang

terkonfigurasi pada sistem. adapun tahapannya adalah sebagai berikut.

1. Instalasi Sistem

Pada Installasi Sistem, kebutuhan dibagi 2, yaitu:

a. kebutuhan perangkat lunak untuk sistem :

(54)

− MySql

− ADODB

− Virtualbox

b. kebutuhan perangkat keras untuk sistem:

Processor Dual Core

Memory RAM 2 Gb

Harddisk 320 Gb

− Virtualbox, Terdiri dari 3 mesin virtual antara lain:

1) PC Router + Snort IDS

− Debian GNU/Linux 6.0 (Squeeze)

Memory RAM 356 MB

Harddisk 8 Gb

− Video Memory 12 Mb

2) Client1

− Debian GNU/LInux 6.0 (Squeeze)

Memory RAM 356 MB

Harddisk 4 Gb

(55)

3) Client 2

− Debian 4.0 Etch

Memory RAM 256 MB

Harddisk 4 Gb

Video Memory 12 Mb

2. Penerapan Generalisasi invert dan content

Memproses original rules snort dan kemudian menciptakan dua set rules

baru menggunakan dua prinsip generalisasi (invert dan content).

3. Pengumpulan Data Pendukung Sistem

Data yang digunakan dalam Snort IDS merupakan data yang sudah di log

ke dalam database Snort melalui simulasi penyerangan dan telah melalui

proses penyaringan data paket jaringan.

4. Pengumpulan Alerts

Menggabungkan file alerts yang dihasilkan dari original rules snort

dengan file alerts yang dihasilkan dari proses generalisasi.

5. Merangkum hasil alerts

Merangkum hasil alerts yang telah dihasilkan, kemudian mengidentifikasi

untuk mengetahui jumlah besar alerts positif atau palsu sehingga dapat

(56)

3.5 Perancangan Sistem

1.5.1 Alur Installasi Snort

Pada installasi Snort 2.8.5.2 membutuhkan beberapa aplikasi

pendukung dan tahapan yang harus dikerjakan.

(57)

Pada gambar 3.4 menjelaskan langkah pertama yang harus

dilakukan ada installasi beberapa packetqueing libraries, yaitu :

Libpcap-1.3.0, Libdnet-1.12, DAQ-2.0.0. Setelah semua ter-install dengan benar

maka selanjutnya adalah installasi dan konfigurasi Snort 2.8.5.2 kemudian

melakukan pengetesan apakah Rule Snort berjalan dengan benar.

Kemudian installasi dan konfigurasi MySQL Server. Setelah data pada

Snort dapat berjalan dengan benar maka selanjutnya adalah installasi dan

konfigurasi Apache dan PHP kemudian dilanjutkan installasi dan

konfigurasi BASE, BASE digunakan untuk memudahkan memonitoring

alert yang dihasilkan oleh Snort. Langkah terakhir adalah membuat startup

script untuk Snort agar berjalan otomatis ketika sistem dijalankan.

1.5.2 Alur Kerja Snor t

(58)

Pada Gambar 3.5 membahas lebih dalam tentang cara kerja Snort.

Network traffic yang berisi paket data, akan diambil oleh Snort decoder,

kemudian Snort decoder akan men-decode paket kedalam data struktur

Snort untuk dianalisis. Setelah itu paket data akan diteruskan ke

preprocessor untuk dilihat paket header-nya dan informasi di dalamnya

yang akan diteruskan menuju detection engine. Dengan menggunakan

Snort Rules, Detection Engine membandingkan dan mencocokkan antara

paket data dan Rules apakah terdapat kesamaan di dalamnya, apabila

terdapat kesamaan maka paket data tidak bisa masuk ke dalam lalu lintas

jaringan atau bisa dianggap suatu serangan.

Berdasarkan hasil dari Detection Engine akan dikeluarkan suatu

output atau peringatan dari Output Engine agar snort bisa mengambil

tindakan lebih lanjut untuk merespon paket data tersebut. Kemudian Snort

memberikan hasil dari Detection Engine dalam format terpisah seperti

Logfile atau database.

1.5.3 Alur Snor t IDS

Dari dasar teori Snort IDS yang diambil dari bab II, bahwa snort

merupakan sebuah sarana untuk metode IDS. Dibawah ini

menggambarkan cara kerja metode Snort IDS disesuaikan dengan

(59)

Gambar 3.6 Rancangan Metode Snort IDS

Keterangan gambar 3.6pada Snort terdapat dua inputan, yaitu data

log sebelum dan data saat ini. Dimana data tersebut akan di analisa oleh

Snort untuk mengetahui apakah ada yang mencurigakan di dalam Network

Traffic dengan bantuan Snort Rules yang akan mencocokkan Signature

untuk memeriksa apakah terdapat kecocokan, Apabila terdapat kecocokan

maka akan di anggap sebuah serangan. Kemudian Snort NIDS (Snort

Engine) akan mengirimkan sebuah peringatan (Alert) yang terbagi menjadi

tiga output, yaitu Alerts berupa peringatan yang akan disimpan di dalam

database (MySQL), Alerts berupa peringatan dalam bentuk file yang akan

(60)

1.5.4 Alur Atur an Generalisasi

Gambar 3.7 Metode Generalisasi Removing

Pada gambar 3.7 Generalisasi removing, Snort rules akan diproses

untuk menghilangkan atau menghapus parameter depth dan offset berserta

nilainya kemudian akan dilakukan normalisasi untuk mendapatkan format

rules yang diinginkan setelah itu akan dilakukan pengecekan atau validasi

apakah masih ada parameter atau nilai yang tertinggal didalam rules

(61)

maka rules yang telah diproses disimpan pada depth.rules dan offset.rules

yang termasuk dalam removing.rules.

Gambar 3.8 Metode Generalisasi Inverting

Pada gambar 3.8 Generalisasi inverting, prosesnya hampir sama

hanya yang membedakan adalah pada generalisasi content melakukan

pembalikan nilai isi content dengan pemberian tanda “?” untuk mewakili

karakter apapun dalam field rule dan hasil akhirnya hanya ada satu

(62)

1.5.5 Alur Implementasi Generalisasi Snort Rules

Gambar 3.9 Rancangan Generalisasi Rule Snort

Pada gambar 3.9 Metode generalisasi Snort Rules yang digunakan

adalah dengan bantuan penggunaan generalisasi sederhanauntuk

melakukan generalisasi pada Snort Rules. Dimana pada implementasinya

(63)

a) Generalisasi Rule, dimana bertugas untuk mengolah Snort Rules

kemudian membuat dua buah set rules berdasarkan dua prinsip

dasar generalisasi (remove dan Invert).

b) Alert Merge, dimana bertugas menggabungkan dua buah rules

generalisasi dari original rules dengan alert yang telah berhasil di

generalisasi oleh generalisasi rules untuk menghasilkan variasi

alerts dan keterangan dari mana alerts itu dihasilkan.

c) Generalisasi Rule post-processor, dimana bertugas untuk

mengecek alert yang telah dihasilkan. Untuk mengidentifikasi dan

mengurangi kesalahan dalam pemberian peringatan (false alert)

untuk mengurangi tingkat kesalahan alert.

1.5.6 Alur Kerja Keselur uhan Sistem

Dari penjelasan diagram alur kerja Snort IDS dan metode

generalisasi Snort sebelumnya maka didapatkan alur kerja dari

keseluruhan sistem.

Pada rancangan keseluruhan sistem Snort Engine akan membaca

paket menggunakan dua rules, yaitu Original Snort Rules dan Generalisasi

Rules dimana peringatan yang dihasilkan dari Original Snort Rules akan

disimpan sebagai ids.alert, sedangkan peringatan yang dihasilkan dari

(64)

Gambar 3.10 Rancangan Keseluruhan Sistem

Pada gambar 3.10. Kedua alerts baik ids.alert dan

generalisasi.alert akan ditampung dan diproses oleh Alert Merge yang

kemudian akan memproses lebih lanjut dan mengeluarkan tiga output,

(65)

a. Merged Alert, berisi dari gabungan dua alerts yang berasal dari

Original dan Generalisasi rules. Dengan ketentuan jika ada waktu

dari setiap alerts yang sama atau bentrok, maka alert dari Original

rules yang akan diambil.

b. AllowAlert, berisi dari alert Generalisasi rules yang waktunya tidak

sama atau tidak bentrok dengan OriginalRules.

c. RejectedAlert, berisi dari alert Generalisasi rules yang waktunya

sama atau bentrok dengan Original rules tetapi memiliki alert

yang berbeda.

Pada Generalisasi Rule Post-Processor akan memproses ketiga

alerts yang dihasilkan oleh Alert Merge untuk merangkum alerts tersebut

apakah dihasilkan oleh Original Rules atau dari tiga kemungkinan hasil

dari Alert Merge. kemudian memberikan ringkasan keterangan berapa kali

alert tersebut muncul.

Untuk lebih jelasnya tentang proses Alert merge ditunjukan pada contoh

(66)

Gambar 3.11 Alur Kerja Alert Merge

Pada gambar 3.11 diatas terdapat kesamaan waktu alert tetapi

berbeda jenis alert pada original alert dan generalisasi alert, yaitu : (12.04,

12.06 dan 12.08). Alert Merge akan memproses data yang ada dengan

ketentuan jika waktu dari generalisasi alert sama dengan original alert

tetapi memiliki jenis alert yang berbeda maka jenis alert dari original alert

yang akan diambil atau digunakan dan disimpan pada Merge Alert, dari

data (12.04=alert D, 12.06=alert C dan 12.08=alert E) pada generalisasi

alert akan menjadi (12.04=alert 3, 12.06=alert 2 dan 12.08=alert 5) sesuai

data pada original alert.

Pada allow alert berisi alert dari generalisasi alert yang tidak

(67)

12.03=alert B). Sedangkan data alertdari generalisasi alert yang bentrok

dengan original alert disimpan di rejected alert.

1.5.7 Alur Uji Coba Dan Analisa

Gambar

Gambar 2.9 Sistem Deteksi Snort
Gambar 2.11 Tampilan BASE
Gambar 3.1 Rancangan jaringan komputer
Gambar 3.2Paket data client-server
+7

Referensi

Dokumen terkait

Mengetahui hambatan dan cara penyelesaian prosedur pengajuan klaim pada produk Mitra Guru apabila tertanggung meninggal pada AJB Bumiputera 1912 Kantor Cabang

research’s focus was limited to the event conducting of “5K Fun Run” event by Sheraton Surabaya Hotel &amp; Towers and also the participants’ knowledge. toward ”5K Fun

Dengan demikian, kepuasan publik dalam menerima pelayanan dari pemerintah dapat terjadi tak terlalu lama setelah camat dan lurah hasil seleksi terbuka mulai bekerja, tidak

Dapat ditujukkan misalnya sebagian besar kontraktor logging ijin pemanfaatan hasil hutan kayu (IPHHK) yang diberikan kepada masyarakat lokal diantaranya adalah

Pengumpulan data yang diperolehi daripada kajian yang dilakukan dan daripada soalan-soalan berkaitan dengan tajuk kajian yang terdapat dalam borang kaji selidik.Soalan- soalan

cenderung memerhatikan, membicarakan dan mempertanyakan berbagai hal yang sempat dilihat dan didengarnya, terutama terhadap hal-hal yang baru.. Eksploratif dan

Metode pendekatan yang ditawarkan untuk menyelesaikan persoalan mitra yang telah disepakati bersama antara lain (1) perancangan biodigester baru dengan kapasitas 12

yakni persyaratan keabsahan suatu perjanjian atau kontrak harus mengacu kepada ketentuan seperti misalnya, yang ditentukan dalam Pasal 1320 KUH-Perdata yang telah