Anda di halaman 1dari 21

PERANCANGAN DAN IMPLEMENTASI INTRUSION DETECTION

SYSTEM DENGAN ALGORITMA DATA MINING INSTANCE BASED


LEARNING

SKRIPSI
Dosen pengampu:
CHANDRA GULTOM,S.PD,M.PD

Oleh:
VALLENDION PASCAL LASE
230840108
KELAS TI – C
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS ILMU KOMPUTER
UNIVERSITAS KATOLIK SANTO THOMAS MEDAN
2024
PENDAHULUAN
Pada era digital saat ini, tidak bisa dibayangkan dunia tanpa komunikasi.
Manusia memiliki kepentingan untuk bertukar informasi untuk berbagai tujuan.
Mengamankan komunikasi adalah tantangan luas karena meningkatnya ancaman
dan serangan yang dilakukan pada keamanan jaringan.
Ancaman keamanan jaringan dikategorikan ke beberapa jenis. Kebocoran
(leakage), merupakan jenis ancaman yang merupakan akses ilegal terhadap
informasi yang ada di jaringan. Pengubahan (tampering), merupakan jenis
ancaman yang berarti mengubah informasi tanpa ijin dari menyedia informasi.
Pengerusakan (vandalism), adalah jenis ancaman yang merusak kondisi normal
suatu jaringan, sehingga mengakibatkan malfunction.
Selain ancaman, terdapat juga serangan terhadap keamanan jaringan.
Eavesdropping, merupakan tindakan mengumpulkan salinan informasi tanpa ijin.
Masquerading, merupakan tindakan membuat percakapan menggunakan identitas
pihak lain, tanpa seijin pemilik identitas. Message Tampering, merupakan
tindakan mengubah isi informasi ketika informasi dilewatkan pada media
komunikasi. Man-in-the-middle attack, adalah tindakan ikut campur terhadap
pesan, dimana seorang penyerang mengubah pesan awal dalam pertukaran kunci
terenkripsi untuk membangun saluran komunikasi yang aman. Pengetahuan
tentang berbagai serangan tersebut diperoleh dari data yang sangat besar dari
jaringan, dengan menggunakan data mining tools. Berdasarkan pengetahuan yang
diperoleh dari proses mining, maka dapat digunakan untuk mengidentifikasi
gangguan keamanan jaringan berdasarkan pola tingkah laku yang ada di jaringan.
Ancaman dan serangan terhadap keamanan jaringan tersebut dapat
dideteksi dengan suatu Intrusion Detection System (IDS). Untuk mengenali pola
serangan, maka digunakan data instance. Pembelajaran data instance tersebut
dapat dicapai dengan menggunakan algoritma data mining Instance Based
Learning (IBL). Pada penelitian ini, dikembangkan sebuah, berbasis supervised
learning dan teknik prediksi, menggunakan algoritma data mining Instance Based
Learning (IBL). Sistem yang dikembangkan merupakan suatu aplikasi desktop
untuk sistem operasi Windows.

TINJAUAN PUSTAKA
Penelitian tentang keamanan jaringan salah satunya adalah "Rancang
Bangun dan Implementasi Keamanan Jaringan Komputer Menggunakan Metode
Intrusion Detection System (IDS) pada SMP Islam Terpadu PAPB"[1]. Penelitian
tersebut membahas tentang IDS, untuk mendeteksi serangan dari penyusup baik
dari luar atau dalam jaringan komputer sehingga mempermudah seorang admin
dalam melakukan penanganan, dengan demikian akan tercipta keamanan jaringan
yang lebih optimal.
Penelitian tentang data mining salah satunya adalah “Data mining In
Network Security - Techniques & Tools: A Research Perspective”[2].Pada
penelitan tersebut dibahas mengenai teknik pengamanan jaringan, dengan
memanfaatkan data mining. Algoritma data mining yang dibandingkan adalah Naive-Bayes,
C4.5, dan Instance Based Learning. Hasil penelitian menunjukkan
bahwa algoritma Instance Based Learning memiliki tingkat akurasi paling tinggi,
dan waktu pembelajaran yang paling cepat.
Penelitian berjudul "A Novel Intrusion Detection System by using
Intelligent Data Mining in Weka Environment" [3], membahas tentang pendekatan
IDS dengan pengembangan lebih lanjut menggunakan intelligent data mining.
IDS yang dikembangkan merupakan kombinasi antara data mining dengan sistem
pakar, dan disajikan dan diimplementasikan dengan software WEKA.
Berdasarkan evaluasi dari desain yang dikembangkan, memberikan hasil yang
lebih baik dalam hal efisiensi deteksi dan false alarm dari masalah yang ada
sebelumnya.
Penelitian berjudul "A K-Means and Naive Bayes learning approach for
better intrusion detection"[4], diimplementasikan sebuah IDS dengan dua
pendekatan pembelajaran, yaitu K-Means dan Naive Bayes (KMNB).K-Means
digunakan untuk mengidentifikasi kelompok sample data yang memiliki perilaku
yang mirip dan tidak mirip.Naive Bayes digunakan pada tahap kedua untuk
mengklasifikasikan semua data ke dalam kategori yang tepat.Hasil penelitian
menunjukkan bahwa KMNB secara signifikan meningkatkan akurasi deteksi.
Penelitian yang membahas tentang Instance-Based Learning, salah satunya
adalah "Cyber Situation Awareness: Modeling Detection Of Cyber Attacks with
Instance-Based Learning Theory"[5]. Penelitian tersebut digunakan IBL untuk
mempelajari pola serangan (cyber attacks) yang beragam.
Berdasarkan penelitian-penelitian yang telah dilakukan tentang IDS dan
data mining, maka dilakukan penelitian untuk pengembangan sebuah Intrusion
Detection System (IDS), berbasis supervised learning dan teknik prediksi,
menggunakan algorima data mining IBL. Rumusan masalah dalam penelitian ini
adalah bagaimana merancang dan mengimplementasikan Intrusion Detection
System dengan menggunakan Instance Based Learning. Tujuan dari penelitian
yang dilakukan adalah untuk bagaimana merancang suatu IDS berbasis supervised
learning dan teknik prediksi, menggunakan algorima data mining Instance Based
Learning. Manfaat dari penelitian ini adalah untuk menghasilkan sebuah aplikasi
desktop untuk mengamankan komunikasi jaringan komputer, lebih spesifiknya
untuk mendeteksi ancaman dan serangan pada jaringan computer. Untuk
mencapai tujuan yang telah dirumuskan, maka dalam perancangan dan
pengembangan sistem, diberikan batasan masalah sebagai berikut: (1) Teknik
pembelajaran sistem yang digunakan adalah supervised-learning; (2) Algoritma
yang digunakan Instance Based Learning; (3) Aplikasi yang dikembangkan
berfungsi untuk mendeteksi, bukan untuk mencegah; (4) Aplikasi
diimplementasikan pada sistem operasi Windows, untuk pengguna komputer
pribadi (PC).
Model komputer tunggal yang melayani seluruh tugas-tugas komputasi
telah diganti dengan sekumpulan komputer berjumlah banyak yang terpisah-pisah
tetapi saling berhubungan dalam melaksankan tugasnya, sistem tersebut
yang disebut dengan jaringan komputer (computer network) [6].
Intrusion Detection System (IDS) adalah suatu perangkat lunak (software)
atau suatu sistem perangkat keras (hardware) yang bekerja secara otomatis untuk
memonitor kejadian pada jaringan komputer dan menganalisis masalah keamanan
jaringan [7]. IDS bekerja pada lapisan jaringan OSI model dan sensor jaringan
pasif yang secara khusus diposisikan pada choke point pada jaringan metode dari
lapisan OSI. Jenis-jenis IDS adalah: (1) Network Instrusion Detection System
(NIDS) Memantau Anomali di jaringan dan mampu mendeteksi seluruh host yang
berada satu jaringan dengan host implementasi IDS (Intrusion Detection System)
tersebut. NIDS (Network Instrusion Detection System) pada umumnya bekerja
dilayer 2 pada OSI layer, IDS (Intrusion Detection System) menggunakan “raw
traffic” dari proses sniffing kemudian mencocokkannya dengan signature yang
telah ada dalam policy. Jika terdapat kecocokan antara signature dengan raw
traffic hasil sniffing paket, IDS (Intrusion Detection System) memberikan allert
atau peringgatan sebagai tanda adanya proses intrusi ke dalam sistem. NIDS
(Network Instrusion Detection System) yang cukup banyak dipakai adalah snort
karena signature yang customizable, sehingga setiap vulnerability baru ditemukan
dapat dengan mudah ditambahkan agar jika terjadi usaha punyusupan atau
intrusion dari intruder akan segera terdeteksi; (2) Host Instrusion Detection
System (HIDS) Mamantau anomali di host dan hanya mampu mendeteksi pada
host tempat implementasi IDS (Intrusion Detection System) tersebut. HIDS (Host
Instrusion Detection System) biasanya berupa tools yang mendeteksi anomali di
sebuah host seperti perubahan file password dengan penambahan user ber UID 0,
perubahan loadable kernel, perubahan ini script, dan gangguan bersifat anomali
lainnya.
Instance Based Learning menggunakan prinsip Nearest Neighbour untuk
membangun model prediksi.Dalam pendekatan ini, jarak antara contoh pelatihan
dan uji contoh yang diberikan dihitung dengan ukuran jarak Euclidean. Jika lebih
dari satu contoh memiliki jarak terkecil ke instance tes, digunakan contoh yang
pertama ditemukan. Tetangga terdekat adalah salah satu algoritma pembelajaran
yang paling signifikan, dapat disesuaikan untuk memecahkan masalah yang lebih
luas [8]. Biarkan dataset D memiliki contoh X (X1, X2, X3 ... Xn) dan F fitur (F1,
F2, F3, ... Fm) dengan label kelas Cj dimana j = 1,2 ... K. Algoritma ini meranking
nilai jarak tetangga untuk memprediksi data yang berlabel X dengan label kelas.
Ukuran jarak Euclidean digunakan untuk menghitung berat tetangga dari X.
Dengan cara ini, data baru diprediksi oleh voting berat, untuk menghitung jarak
tetangga terdekat dari kelas tertentu, untuk memprediksi data yang tidak
diketahui. [9,10] .
Menurut Mitchell [11] keuntungan dari IBL adalah:
1. Dapat melakukan proses pembelajaran fungsi target yang sangat kompleks.
2. Proses training cepat.
3. Tidak kehilangan informasi.
4. Tahan terhadap noisy training.
Sedangkan kelemahan dari IBL adalah:
1. Proses query yang lama
2. Dapat dengan mudah dikecohkan dengan atribut yang tidak
3. relevan.
Salah satu metode IBL yang paling umum adalah K-Nearest
Neighbour.Algoritma K-Nearest Neighbour (k-NN atau KNN) adalah sebuah
metode untuk melakukan klasifikasi terhadap objek berdasarkan data
pembelajaran yang jaraknya paling dekat dengan objek tersebut.
K-Nearest Neighbour berdasarkan konsep 'learning by analogy'.Data
learning dideskripsikan dengan atribut numerik n-dimensi.Tiap data learning
merepresentasikan sebuah titik, yang ditandai dengan c, dalam ruang n-dimensi.
Jika sebuah data query yang labelnya tidak diketahui diinputkan, maka K- Nearest
Neighbor akan mencari K buah data learning yang jaraknya paling dekat dengan
data query dalam ruang n-dimensi. Jarak antara data query dengan data learning
dihitung dengan cara mengukur jarak antara titik yang merepresentasikan
data query dengan semua titik yang merepresentasikan data learning dengan
rumus Euclidean Distance.
Pada fase training, algoritma ini hanya melakukan penyimpanan vektorvektor fitur dan
klasifikasi data training sample. Pada fase klasifikasi, fitur - fitur
yang sama dihitung untuk testing data (klasifikasinya belum diketahui). Jarak dari
vektor yang baru ini terhadap seluruh vektor training sample dihitung, dan
sejumlah K buah yang paling dekat diambil.Titik yang baru klasifikasinya
diprediksikan termasuk pada klasifikasi terbanyak dari titik - titik tersebut.
Nilai K yang terbaik untuk algoritma ini tergantung pada data; secara
umumnya, nilai K yang tinggi akan mengurangi efek noise pada klasifikasi, tetapi
membuat batasan antara setiap klasifikasi menjadi lebih kabur. Nilai K yang
bagus dapat dipilih dengan optimasi parameter, misalnya dengan menggunakan
cross-validation.Kasus khusus di mana klasifikasi diprediksikan berdasarkan data
pembelajaran yang paling dekat (dengan kata lain, K = 1) disebut algoritma
nearest neighbor
Ketepatan algoritma k-NN ini sangat dipengaruhi oleh ada atau tidaknya
fitur-fitur yang tidak relevan, atau jika bobot fitur tersebut tidak setara dengan
relevansinya terhadap klasifikasi.Riset terhadap algoritma ini sebagian besar
membahas bagaimana memilih dan memberi bobot terhadap fitur, agar performa
klasifikasi menjadi lebih baik.
K buah data learning terdekat akan melakukan voting untuk menentukan
label mayoritas. Label data query akan ditentukan berdasarkan label mayoritas
dan jika ada lebih dari satu label mayoritas maka label data query dapat dipilih
secara acak di antara label-label mayoritas yang ada.
Data mining adalah serangkaian proses untuk menggali nilai tambah dari
suatu kumpulan data berupa pengetahuan yang selama ini tidak diketahui secara
manual. Patut diingat bahwa kata mining sendiri berarti usaha untuk mendapatkan
sedikit barang berharga dari sejumlah besar material dasar. Karena itu data mining
sebenarnya memiliki akar yang panjang dari bidang ilmu seperti kecerdasan
buatan (artificial intelligent), machine learning, statistik dan database. Data
mining adalah proses menerapkan metode ini untuk data dengan maksud untuk
mengungkap pola-pola tersembunyi. Dengan arti lain data mining adalah proses
untuk penggalian pola-pola dari data. Data mining menjadi alat yang semakin
penting untuk mengubah data tersebut menjadi informasi.Hal ini sering digunakan
dalam berbagai praktek profil, seperti pemasaran, pengawasan, penipuan deteksi dan
penemuan ilmiah. Telah digunakan selama bertahun-tahun oleh bisnis,
ilmuwan dan pemerintah untuk menyaring volume data seperti catatan perjalanan
penumpang penerbangan, data sensus dan supermarket scanner data untuk
menghasilkan laporan riset pasar[2].
Alasan utama untuk menggunakan data mining adalah untuk membantu
dalam analisis koleksi pengamatan perilaku.Data tersebut rentan terhadap
collinearity karena diketahui keterkaitan. Fakta yang tak terelakkan data mining
adalah bahwa subset/set data yang dianalisis mungkin tidak mewakili seluruh
domain, dan karenanya tidak boleh berisi contoh-contoh hubungan kritis tertentu
dan perilaku yang ada di bagian lain dari domain .Untuk mengatasi masalah
semacam ini, analisis dapat ditambah menggunakan berbasis percobaan dan
pendekatan lain, seperti Choice Modelling untuk data yang dihasilkan manusia.
Dalam situasi ini, yang melekat dapat berupa korelasi dikontrol untuk, atau
dihapus sama sekali, selama konstruksi desain eksperimental.
Beberapa teknik yang sering disebut-sebut dalam literatur data mining
dalam penerapannya antara lain: clustering, classification, association rule
mining, neural network, genetic algorithm dan lain-lain. Hal yang membedakan
persepsi terhadap data mining adalah perkembangan teknik-teknik data mining
untuk aplikasi pada database skala besar. Sebelum populernya data mining,
teknik-teknik tersebut hanya dapat dipakai untuk data skala kecil saja.
Data mining adalah kegiatan mengekstraksi atau menambang pengetahuan
dari data yang berukuran/berjumlah besar, informasi inilah yang nantinya sangat
berguna untuk pengembangan.Langkah-langkah untuk melakukan data mining
adalah sebagai berikut [12]:
Gambar 1 Langkah-langkah data mining[12]
1. Data cleaning (untuk menghilangkan noise data yang tidak konsisten) dan data
integration (di mana sumber data Yang terpecah dapat di satukan)
2. Data selection (di mana data yang relevan dengan tugas analisis dikembalikan ke
dalam data base)
3. Data transformation (di mana data berubah atau bersatu menjadi bentuk yang tepat
untuk menambang dengan ringkasan performa atau operasi agresi)
4. Data mining (proses esensial di mana metode yang intelejen digunakan untuk
mengekstrak pola data)
5. Pattern evolution (untuk mengidentifikasi pola yang benar-benar menarik yang
mewakili pengetahuan berdasarkan atas beberapa tindakan yang menarik)
6. Knowledge presentation (di mana gambaran teknik visualisasi dan pengetahuan
digunakan untuk memberikan pengetahuan yang telah ditambang kepada user).
Learning mempunyai arti menambah pengetahuan, memahami atau
menguasai dengan belajar, mengikuti instruksi atau melalui pengalaman. Machine
learning adalah sebuah studi yang mempelajari cara untuk memprogram sebuah
komputer untuk belajar. Ada 4 kategori besar dimana sebuah aplikasi sulit untuk
dibuat. Pertama, bila tidak ada manusia yang menguasai bidang tersebut. Kedua,
bila ada manusia yang menguasai hal tersebut namun tidak mampu untuk
menjelaskannya. Ketiga, adalah saat keadaan dapat berubah dengan cepat.
Keempat, bila aplikasi harus dibuat berbeda untuk masing - masing pengguna.
Seorang manusia selama hidupnya tidak pernah henti- hentinya melakukan
learning. Hal ini terjadi tanpa disadari dan alamiah. Namun untuk membuat
sebuah mesin dapat berpikir tentu bukanlah hal yang mudah. Manusia belajar
melalui pengalaman yang dialami sehari-hari. Dari pengalaman tersebut, manusia
akan mendapatkan knowledge. Untuk mendapatkan knowledge dapat melalui
berbagai cara. Cara yang paling sederhana adalah rote learning atau menyimpan
informasi yang sudah dikalkulasi. Cara lainnya adalah dengan mendapatkan
pengetahuan dari orang lain yang sudah ahli. Manusia juga dapat belajar melalui
pengalaman pemecahan masalah yang ia lakukan. Setelah berhasil mengatasi
sebuah masalah, manusia akan mengingat struktur dan cara mengatasi masalah
tersebut. Apabila manusia mengalami sebuah masalah yang hampir serupa, maka
manusia dapat mengatasi masalah tersebut secara lebih efisien.
Dalam teknik supervised learning, maka sebuah program harus dapat
membuat klasifikasi – klasifikasi dari contoh- contoh yang telah diberikan.
Misalnya sebuah program diberikan benda berupa bangku dan meja, maka setelah
beberapa contoh, program tersebut harus dapat memilah - milah objek ke dalam
klasifikasi yang cocok.
Kesulitan dari supervised learning adalah tidak dapat dilakukan proses
klasifikasi yang benar. Terdapat kemungkinan program akan salah dalam
mengklasifikasi sebuah objek setelah dilatih. Oleh karena itu, selain menggunakan training
set juga digunakan test set. Dari situ akan diukur persentase
keberhasilannya. Semakin tinggi berarti semakin baik program tersebut.
Persentase tersebut dapat ditingkatkan dengan diketahuinya temporal
dependence dari sebuah data. Misalnya diketahui bahwa 70% mahasiswa dari
jurusan Teknik Informatika adalah laki- laki dan 80% mahasiswa dari jurusan
Sastra adalah wanita. Maka program tersebut akan dapat mengklasifikasi dengan
lebih baik.
Misalkan akan dibuat suatu program komputer yang ketika diberi gambar
seseorang, dapat menentukan apakah orang dalam gambar tersebut pria atau
wanita. Program yang dibuat tersebut adalah yang disebut sebagai classifier,
karena program tersebut berusaha menetapkan kelas (yaitu pria atau wanita) ke
sebuah objek (gambar). Tugas supervised learning adalah untuk membangun
sebuah classifier dengan memberikan sekumpulan contoh training yang sudah
diklasifikasi (pada kasus ini, contohnya adalah gambar yang telah dimasukkan ke
kelas yang tepat). Tantangan utama pada supervised learning adalah generalisasi:
Setelah menganalisa beberapa contoh gambar, supervised learning harus
menghasilkan suatu classifier yang dapat digunakan dengan baik pada semua
gambar. Pasangan objek, dan kelas yang menunjuk pada objek tersebut adalah
suatu contoh yang telah diberi label. Himpunan contoh yang telah diberi label
akan menghasilkan suatu algoritma pembelajaran yang disebut training set.
Misalkan kita menyediakan suatu training set kepada algoritma pembelajaran, dan
algoritma tersebut menghasilkan output yang berupa classifier. Solusi yang
umumnya digunakan untuk mengukur classifier adalah dengan menggunakan
himpunan contoh berlabel yang lain yang disebut sebagai test set. Persentase
contoh dapat diukur apakah telah diklasifikasi dengan benar atau persentase
contoh yang mengalami kesalahan klasifikasi. Pendekatan yang dilakukan untuk
menghitung persentase mengasumsikan bahwa setiap klasifikasi adalah
independen, dan setiap klasifikasi sama pentingnya. Asumsi ini sering sekali
dilupakan.
Asumsi bahwa setiap kelas adalah independen sering Kali dilanggar bila
ada suatu ketergantungan sementara pada data. Contohnya, seorang dokter pada
suatu klinik mengetahui bahwa suatu wabah penyakit sedang terjadi. Oleh karena
itu, setelah melihat beberapa pasien yang ke semuanya terserang flu, ada
kemungkinan besar kalau dokter akan menganggap pasien berikutnya mengidap
penyakit yang sama, walaupun pasien tidak menunjukkan gejala sejelas gejala
penyakit pasien sebelumnya. Asumsi bahwa semua klasifikasi sama pentingnya
sering Kali dilanggar bila ada perubahan resiko yang berhubungan dengan
perbedaan perhitungan kesalahan. Contoh: classifier harus menentukan suatu
apakah seorang pasien terserang kanker atau tidak berdasarkan perhitungan
laboratorium. Ada dua macam kesalahan. Pertama disebut, kesalahan false
positive, yaitu kesalahan yang muncul ketika classifier mengklasifikasi orang
yang sehat sebagai orang yang mengidap kanker. False negative muncul ketika
classifier mengklasifikasi orang yang mengidap kanker sebagai orang yang sehat.
Umumnya, false negative lebih sering beresiko daripada false positive, sehingga
kita harus menggunakan algoritma pembelajaran yang dapat menimbulkan false
negative lebih sedikit, walaupun hasilnya akan menimbulkan lebih banyak false positive.
Supervised learning tidak hanya mempelajari classifier, tetapi juga
mempelajari fungsi yang dapat memprediksi suatu nilai numerik. Contoh: ketika
diberi foto seseorang, kita ingin memprediksi umur, tinggi, dan berat orang yang
ada pada foto tersebut. Tugas ini sering disebut sebagai regresi. Pada kasus ini,
setiap contoh training yang terlah diberi label berisi sebuah objek, dan nilai yang
dimilikinya. Kualitas dari fungsi prediksi biasanya diukur sebagai kuadrat
perbedaan nilai perkiraan.
METODE DAN PERANCANGAN SISTEM
Penelitian yang dilakukan, diselesaikan melalui tahapan penelitian yang
terbagi dalam empat tahapan, yaitu: (1) Analisis kebutuhan dan pengumpulan
data, (2) Perancangan sistem, (3) Implementasi sistem yaitu Perancangan
aplikasi/program, dan (4) Pengujian sistem serta analisis hasil pengujian.

Analisis Kebutuhan dan Pengumpulan Data


Perancangan Sistem meliputi Perancangan Proses, dan
Perancangan Antarmuka
Implementasi dan Pengujian Sistem,
serta Analisis Hasil Pengujian
Penulisan Laporan Hasil Penelitian

Gambar 2 Tahapan Penelitian


Tahapan penelitian pada Gambar 2, dapat dijelaskan sebagai berikut. Tahap
pertama: yaitu melakukan analisis kebutuhan-kebutuhan user dalam proses
pengiriman gambar; Tahap kedua: yaitu melakukan perancangan sistem yang
meliputi perancangan database, perancangan antarmuka yakni sebagai media
penghubung interaksi antara user dan sistem; Tahap ketiga: yaitu
mengimplementasikan rancangan yang telah dibuat di tahap dua ke dalam sebuah
aplikasi/program sesuai kebutuhan sistem; Tahap keempat: yaitu melakukan
pengujian terhadap sistem yang telah dibuat, serta menganalisis hasil pengujian
tersebut, untuk melihat apakah aplikasi yang telah dibuat sudah sesuai dengan
yang diharapkan atau tidak, jika belum sesuai maka akan dilakukan perbaikan.
Hasil pengumpulan data adalah informasi mengenai perlunya pengamanan
akses komputer pribadi ke Internet. Selain itu informasi yang dikumpulkan adalah
data log akses suatu komputer ke Internet untuk digunakan sebagai instance data
mining. Log ini akan dianggap sebagai data normal (tanpa ada ancaman dan
serangan). Kemudian log ini akan dibandingkan dengan data sample untuk
disimpulkan apakah data sample merupakan ancaman/serangan atau tidak.
IBS yang dikembangkan memiliki rancangan ditunjukkan pada Gambar
3.Input sistem berupa data instance dan data traffic jaringan. Output sistem berupa
kesimpulan hasil deteksi yaitu masuk Zona Aman atau Zona Bahaya. Output
sistem digunakan sebagai input untuk proses selanjutnya.
IDS
Capture packet
Instance Zona

Bahaya
Traffic Data
Instance Data
Instance Zona
Proses Klasifikasi Aman
Simpan sebagai
dengan IBL
Instance untuk

proses klasifikasi

selanjutnya

Apakah IP Hasil Klasifikasi


sudah
berupa Kategori Tampilkan
tersimpan
Aman atau informasi hasil
di data
Kategori Bahaya deteksi
instance

Gambar 3 Intrusion Detection System dengan IBL

Pada Gambar 3 ditampilkan rancangan sistem IDS dengan menggunakan


algoritma data mining IBL. Traffic data diperoleh dengan cara melakukan capture
TCP Packet. Traffic data kemudian menjadi input untuk proses IBL. IBL juga
membaca instance data yang tersimpan sebagai input. Hasil dari proses IBL
masuk ke dalam rule, untuk dikenali apakah suatu traffic data masuk ke dalam
kategori Zona Aman atau Zona Bahaya. KA berarti jumlah data pada Zona Aman,
KB berarti jumlah data pada Zona Bahaya
Proses deteksi diawali dengan proses pembelajaran rule deteksi zona aman
dan zona bahaya, yaitu dengan menggunakan instancedata sebagai traning data.
Berdasarkan instance tersebut, dibentuk (construct) aturan untuk deteksi.
Gambar 4 menunjukkan fase proses pembelajaran dan pembentukan
klasifikasi data dengan algoritma Instance Based Learning. Input proses berupa
datatraffic jaringan yang dilakukan oleh komputer ke Internet atau jaringan komputer atau
sebaliknya. Berdasarkan data instance yang tersimpan di database,
dilakukan proses deteksi dengan aturan yang terbentuk oleh IBL. Hasil deteksi
akan disimpan ke database untuk digunakan kembali sebagai data instance.

mulai

Traffic

Jaringan

Instance Data

dari Database

Proses Deteksi
dengan IBL

(Gambar 3.4)

Simpan traffic ke
database

untuk digunakan
nanti sebagai

Instance Data
Tampilkan

Hasil Deteksi

selesai

Gambar 4 Proses Deteksi Secara Umum

Gambar 5 Aturan Deteksi pada IBL


Gambar 5 merupakan diagram alir aturan pengkategorian data yang
digunakan oleh algoritma IBL untuk proses deteksi. Langkah dari proses tersebut
dijelaskan dengan urutan sebagai berikut:
1) Mulai
2) Input sistem: SourceIP, SourcePort, dan DestinationPort.
3) Jika SourceIP terdaftar di Zona Aman, masukkan ke Zona Aman.
4) Selain itu jika SourceIP terdaftar di Zona Bahaya, masukkan ke Zona Bahaya.
5) Selain itu:
a) Baca sejumlah KA record di Zona Aman yang Source Port nya sama dengan
SourcePort input.
b) Baca sejumlah KB record di Zona Bahaya yang Source Port nya sama dengan
SourcePort input.
c) Jika KA > KB, masukkan ke Zona Aman
d) Selain itu jika KA < KB, masukkan ke Zona Bahaya
e) Selain itu:
i. Baca sejumlah KA record di Zona Aman yang Destination Port nya
sama dengan Destination Port input.
ii. Baca sejumlah KB record di Zona Bahaya yang Destination Port nya
sama dengan Destination Port input.
iii. Jika KA > KB, masukkan ke Zona Aman
iv. Selain itu jika KA < KB, masukkan ke Zona Bahaya.
6) Selesai.
Secara umum, kapan suatu data dimasukkan ke zona bahaya adalah ketika
memenuhi salah satu dari syarat berikut:
1. Source IP termasuk dalam daftar zona bahaya.
2. Destination IP termasuk dalam daftar zona bahaya.
3. Source Port yang digunakan, juga digunakan minimal 5 data di zona bahaya.
4. Destination Port yang digunakan, juga digunakan minimal 5 data di zona bahaya.
Sedangkan suatu data dimasukkan ke zona aman adalah ketika memenuhi
salah satu dari syarat berikut:
1. Source IP termasuk dalam daftar zona aman.
2. Destination IP termasuk dalam daftar zona aman.
3. Source Port yang digunakan, juga digunakan minimal 5 data di zona bahaya.
4. Destination Port yang digunakan, juga digunakan minimal 5 data di zona bahaya.
Jika suatu data tidak memenuhi salah satu dari 8 syarat-syarat deteksi tersebut,
maka akan masuk ke dalam zona warning (zona intruder). Jika data tersebut
terdeteksi sebanyak 5 kalinya, maka akan otomatis dimasukkan ke daftar zona
bahaya.
IDS yang dikembangkan, memiliki beberapa aturan-aturan deteksi. Desain
ini ditunjukkan pada Gambar 6.

Gambar 6 Desain Sistem


Pada Gambar 6, ditunjukkan fase dari sistem. Fase awal berupa
pembelajaran rule deteksi zona aman dan zona bahaya. Kemudian fase deteksi,
dilakukan dengan menggunakan aturan yang telah terbentuk. Pada fase data
mining, dihasilkan kesimpulan dari proses deteksi, yaitu zona bahaya dan zona
aman, kemudian kesimpulan ini disimpan dalam database sebagai instance data
untuk proses pembelajaran aturan deteksi selanjutnya.
HASIL DAN PEMBAHASAN
Pada bagian ini dijelaskan tentang hasil penelitian yang telah dilakukan.
Pembahasan terbagi pada pembahasan hasil implementasi sistem dan pembahasan
pengujian sistem.
Sistem diimplementasikan dalam bentuk aplikasi desktop. Teknologi yang
digunakan adalah .Net Framework 4.5 dengan bahasa pemrograman C#. Database
yang digunakan untuk menyimpan log traffic jaringan adalah SQLite. SQLite
dipilih karena kelebihan dalam hal mudah dipindahkan ke komputer lain, tanpa
perlu melakukan instalasi database server. Spesifikasi software dan hardware yang
digunakan untuk proses pembuatan dan pengujian sistem ditunjukkan pada Tabel
1
Tabel 1 Spesifikasi Software dan Hardware untuk Pembuatan dan Pengujian
Sistem

NO. PERANGKAT SPESIFIKASI

Hardware
1. Prosesor Intel Pentium Core i3 1.8
GHz Cache 3MB
2. RAM 4GB DDR3
3. Kecepatan Harddisk 5400 RPM
Software
1. Integrated Development Tool – perangkat Visual Studio 2012
untuk membuat/menulis program Express for Desktop.
NetFramework 4.5
2. Database SQLite 3

Gambar 7 Tampilan Utama Aplikasi IDS


Pada Gambar 7, daftar zona bahaya awal diperoleh dari blacklist IP yang
dipublikasikan di selectrealsecurity.com [13] dan isc.sans.edu [14]. Aplikasi
menyediakan tampilan utama berupa empat daftar yaitu: Traffic, Zona Bahaya,
Zona Aman, dan Zona Intrusi/Warning. Traffic menampikan data jaringan yang
masuk maupun keluar. Zona Bahaya menampilkan daftar end point yang masuk ke dalam
kategori bahaya. Zona Aman menampilkan daftar end point yang masuk
ke dalam kategori aman. Jika suatu data tidak termasuk ke dalam Zona Aman atau
Bahaya maka akan masuk ke dalam zona warning (zona intruder). Jika data
tersebut terdeteksi untuk 5 kalinya, maka akan otomatis dimasukkan ke daftar
zona bahaya.
Aturan deteksi dijelaskan dengan urutan sebagai berikut:
I. Input: SourceIP, SourcePort, dan DestinationPort.
II. IFSourceIP terdaftar di Zona Aman, masukkan ke Zona Aman.
III. ELSE IF SourceIP terdaftar di Zona Bahaya, masukkan ke Zona Bahaya.
IV. ELSE:
a) Baca sejumlah KA record di Zona Aman yang Source Port nya sama dengan
SourcePortinput
b) Baca sejumlah KB record di Zona Bahaya yang Source Port nya sama dengan
SourcePortinput.
c) IF KA > KB, masukkan ke Zona Aman
d) ELSE IF KA < KB, masukkan ke Zona Bahaya
e) ELSE:
i. Baca sejumlah KA record di Zona Aman yang DestinationPort nya sama
dengan DestinationPort input.
ii. Baca sejumlah KB record di Zona Bahaya yang DestinationPort nya
sama dengan DestinationPortinput.
iii. IF KA > KB, masukkan ke Zona Aman
iv. ELSE IF KA < KB, masukkan ke Zona Bahaya.

SIMPULAN
Berdasarkan penelitian, pengujian dan analisis terhadap sistem, maka
dapat diambil kesimpulan sebagai berikut: (1) Suatu IDS berbasis supervised
learning dan teknik prediksi, dapat diimplementasikan dengan menggunakan
algorima data mining IBL; (2) Berdasarkan hasil pengujian aplikasi IDS yang
dikembangkan telah berhasil melakukan proses deteksi sesuai dengan aturan IBL;
(3) Kecepatan proses akan semakin besar ketika ukuran data instance yaitu Zona
Aman dan Zona Bahaya. Lama waktu proses baca tulis instance dipengaruhi oleh
perfoma komputer dan database server. Rata-rata waktu proses deteksi
berdasarkan hasil pengujian adalah 0.050381 detik/record.
Saran yang dapat diberikan untuk penelitian lebih lanjut adalah sebagai
berikut: Selain dapat mendeteksi, sistem dapat diarahkan untuk dapat mencegah
traffic data yang dikategorikan bahaya.
DAFTAR PUSTAKA
A. Sukirmanto 2013. Rancang Bangun dan Implementasi Keamanan Jaringan Komputer
Menggunakan Metode Intrusion Detection System (IDS) pada SMP Islam Terpadu
PAPB. Fakultas Teknologi Informasi dan Komunikasi Universitas Semarang
B. Singh, G., Antony, D. A. & Leavline, E. J. 2013. Data Mining In Network Security -
Techniques & Tools: A Research Perspective. Journal of Theoretical & Applied
Information Technology 57.
C. Mohammad, M. N., Sulaiman, N. & Muhsin, O. A. 2011. A novel Intrusion Detection
System by using intelligent data mining in WEKA environment . In Procedia
Computer Science, pp. 1237–1242.(doi:10.1016/j.procs.2010.12.198)
D. Muda, Z., Yassin, W., Sulaiman, M. N., Udzir, N. I. & others 2011. A K Means and
Naive Bayes learning approach for better intrusion detection. Information technology
journal 10, 648–655.
E. Dutt, V., Ahn, Y.-S. & Gonzalez, C. 2013. Cyber situation awareness: modeling
detection of cyber attacks with instance-based learning theory Human factors 55,
605–18. (doi:10.1177/0018720812464045)
F. Sugeng, W. 2010. Jaringan Komputer dengan TCP/IP. Modula, Bandung
G. Ariyus, D. 2007. Intrusion Detection System Sistem Pendeteksi Penyusup Pada
Jaringan Komputer. Andi, Yogyakarta
H. Kuramochi, M. & Karypis, G. 2005. Gene classification using expression profiles: a
feasibility study. International Journal on Artificial Intelligence Tools 14, 641–660.
I. Singh, D. A. A. G., Balamurugan, S. A. A. & Leavline, E. J. 2012. Towards higher
accuracy in supervised learning and dimensionality reduction by attribute subset
selection-A pragmatic analysis. In Advanced Communication Control and Computing
Technologies (ICACCCT), 2012 IEEE International Conference on, pp. 125–130.
J. Singh, A. G., Asir, D., Leavline, E. J. & others 2012. An empirical study on
dimensionality reduction and improvement of classification accuracy using feature
subset selection and ranking. In Emerging Trends in Science, Engineering and
Technology (INCOSET), 2012 International Conference on, pp. 102–108.
K. Mitchell, T. M. 1997. Machine Learning. (doi:10.1145/242224.242229)
L. Van Der Aalst, W. 2012. Process mining: Overview and opportunities. ACM
Transactions on Management Information Systems (TMIS) 3, 7.
M. Bleeping Computer 2014. Public Block Lists of Malicious IPs and URLs.
http://www.selectrealsecurity.com/public-block-lists. Diakses pada 3 September 2014
N. Internet Storm Center 2014. Suspicious Domains.
https://isc.sans.edu/suspicious_domains.html. Diakses pada 3 September 2014

Anda mungkin juga menyukai