Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer Vol. 2, No. 6, Juni 2018, hlm. 2158-2167
e-ISSN: 2548-964X http://j-ptiik.ub.ac.id
Voting Based Extreme Learning Machine dalam Klasifikasi Computer Network Intrusion Detection Sindy Erika Br Ginting1, Agus Wahyu Widodo2, Putra Pandu Adikara3 Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya Email:
[email protected],
[email protected],
[email protected] Abstrak Intrusion Detection System (IDS) merupakan perangkat lunak atau sistem yang berguna mendeteksi serangan pada jaringan komputer. IDS bekerja dengan memanfaatkan kecerdasan buatan untuk mengenali anomaly atau signature dari aktivitas pada jaringan komputer. Untuk lebih menyempurnakan IDS, dibutuhkan pengembangan algoritme klasifikasi intrusi dengan akurasi yang tinggi. Voting based Extreme Learning Machine merupakan algoritme baru yang memperbaharui Extreme Learning Machine (ELM) dalam meningkatkan kinerja klasifikasi dari ELM dan dikenal cukup handal untuk banyak data. Pada paper ini, kinerja dari V-ELM akan dievaluasi pada data Knowledge Discovery and Data Mining (KDD) Cup 99 guna menunjang perkembangan IDS. Penelitian ini menunjukan bahwa V-ELM menghasilkan kinerja kurang baik apabila menggunakan sebagian data dari KDD Cup 99. Dengan menggunakan 1000 data latih dan 250 data uji dari KDD Cup 99 dataset, data dibagi menjadi 3 varian yaitu 40 kelas, 5 kelas, dan 2 kelas serangan. Parameter yang akan diuji adalah nilai dari hidden neuron (L), independent training (K), dan sensitivity setiap kelas serangan. Diperoleh hasil akurasi terbaik pada nilai independent training (K) = 3 dan hidden neuron sebanyak 100 pada data 2 kelas serangan dengan akurasi sebesar 72%. Akurasi terendah diperoleh pada nilai hidden neuron sebesar 100 dan independent training (K) = 11 pada 40 kelas serangan yaitu dengan akurasi sebesar 12%. Hasil tersebut menunjukan kemampuan klasifikasi yang baik pada 2 kelas dan kurang baik pada 40 kelas. Kata kunci: Voting based Extreme Learning Machine, Serangan Jaringan Komputer, Klasifikasi, KDD CUP 99, Extreme Learning Machine
Abstract Intrusion Detection System (IDS) is useful software or system to detect intrusion on computer networks. It works by utilizing artificial intelligence to identify anomalies or signatures from the activity on computer networks. To refine more the IDS, it requires the development of intrusion classification algorithms with high accuracy. Voting based Extreme Learning Machine (ELM) is a new scheme algorithm which updates the Extreme Learning Machine (ELM) in improving ELM classification performance and is known more reliable for many data. In this study, the performance of the V-ELM has been evaluated on the Knowledge Discovery and Data Mining (KDD) Cup 99 dataset to support IDS development. This study showed that V-ELM was produced bad performance when using some data from KDD Cup 99. It was using 1000 training data and 250 testing data from KDD Cup 99 datasets. The data was divided into 3 variants are 40 classes, 5 classes, and 2 classes attack. The parameters which tested are the values of hidden neurons (L), independent training (K), and sensitivity of each intrusion class. This study found that the best accuracy result on independent training (K) was 3 and 100 hidden neurons in 2 attack class data with an accuracy of 72%. The lowest accuracy was obtained on hidden neurons was 100 and independent training (K) was 11 in 40 attack classes with an accuracy of 12%. This result showed that good classification capability in 2 classes and bad classification capability in 40 classes. Keywords: Voting based Extreme Learning Machine, Network Intrusion, Classification, KDD CUP 99, Extreme Learning Machine
Fakultas Ilmu Komputer Universitas Brawijaya
2158
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
1. PENDAHULUAN Keamanan data dan privasi pada layanan jaringan komputer menjadi aspek yang penting dalam perkembangan teknologi. Dalam perkembangan teknologi khususnya dalam hal komunikasi, keamanan merupakan hal yang penting. Sering terjadinya serangan jaringan menyebabkan kerugian kepada beberapa pihak, baik penyedia jasa maupun yang memakai jasa komunikasi tersebut (Modi et al., 2013). Banyak cara dalam mengamankan sistem, salah satunya adalah firewall tetapi firewall hanya cocok digunakan mengatasi serangan dari luar sistem, namun tidak cocok digunakan bila serangan berasal dari dalam sistem. Maka disarankan untuk mengatasi serangan dari dalam sistem adalah Intrusion Detection Systems (IDS) dan Intrusion Prevention System (IPS) harus dimasukan ke dalam infrastruktur Cloud untuk mengatasi serangan (Modi et al., 2013). Intrusion detection system dan intrusion prevention system membantu administrator keamanan jaringan dalam mengidentifikasi, mencatat informasi, berusaha menghentikan dan melaporkan setiap aktivitas dalam jaringan. IDS mengidentifikasi paket data jaringan yang masuk dalam sistem dan menganalisis kemungkinan adanya serangan pada jaringan (Dirgantara, 2011). IDS dan IPS melakukan beberapa teknik dalam mendeteksi serangan yaitu mendeteksi berdasarkan tanda (signature), mendeteksi kelainan (anomaly), mendeteksi dengan kecerdasan buatan dan lain-lain (Modi et al., 2013). Intrusion detection system adalah salah satu solusi yang baik untuk keamanan informasi (Ye et al., 2015), tetapi IDS yang sempurna masih belum ditemukan dan tetap menarik dan menantang dalam penelitian keamanan jaringan komputer (Mechtri et al., 2010). Berbagai aktivitas jaringan dan perkembangan pesat dari mode serangan membuat diperlukannya pengembangan algoritme klasifikasi intrusi dengan akurasi yang tinggi untuk IDS (Ye et al., 2015). Banyak metode klasifikasi yang ditawarkan dalam menyempurnakan IDS diantaranya penelitian yang dilakukan oleh Zhifan Ye dan Yuanlong Yu (2015) menggunakan metode Extreme Learning Machine untuk klasifikasi network intrusion dengan data NSL-KDD. Hasil dari penelitian ini didapatkan bahwa akurasi ELM lebih tinggi dari metode klasifikasi lainnya Fakultas Ilmu Komputer, Universitas Brawijaya
2159
seperti decision tree, neural netwotk (NN) dan support vector machines (SVM) yaitu 96%. Berdasarkan penelitian yang dilakukan oleh Jiuwen Cao et al, metode Extreme Learning Machine (ELM) masih memiliki kelemahan. Oleh sebab itu diusulkan metode Voting based Extreme Learning Machine (V-ELM) untuk mengatasi kelemahan dari ELM sehingga diharapkan memiliki akurasi yang lebih baik terutama untuk klasifikasi intrusion detection. Voting based Extreme Learning Machine menghasilkan akurasi yang lebih baik dibandingkan dengan ELM pada percobaan yang dilakukan pada banyak data. Berdasarkan simulasi perbandingan antara V-ELM dan ELM pada 19 dataset dunia nyata, dimana 18 dataset dari UCI database dan 1 dataset dari Protein Information Resource (PIR) center menunjukan bahwa klasifikasi dengan V-ELM lebih baik untuk semua data. Dengan data yang sama, VELM bahkan lebih baik dari algoritme klasifikasi terkini seperti support vector machine (SVM), optimally pruned extreme learning machine (OP-ELM), Back-Propagation (BP), K nearest neighbor (KNN), robust fuzzy relational classifier (RFRC), radial basis function neural network (RBFNN), dan multiobjective simultaneous learning framework (MSCC) (Cao, 2012). Pada penelitian ini diusulkan menggunakan algoritme V-ELM untuk klasifikasi serangan jaringan komputer menggunakan data KDD Cup 99. 2. LANDASAN KEPUSTAKAAN 2.1. Klasifikasi Klasifikasi merupakan suatu proses yang bertujuan untuk mengelompokkan beberapa data ke dalam beberapa kelas. Proses pengelompokan dapat menggunakan beberapa metode. Beberapa metode yang termasuk di dalam klasifikasi merupakan Extreme Learning Machine, Support Vector Machine, Decision Tree, Bayesian Decision, Neural Network dan Linear Discriminant Analysis. 2.2. Intrusion Detection Intrusi merupakan aksi atau gangguan pada suatu sistem atau layanan cloud computing yang mempengaruhi dan membahayakan ketersediaan, kerahasiaan, dan integritas dari layanan dan sumber daya dari cloud. Detection merupakan usaha dalam mencari, menemukan
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
dan mencegah serangan jaringan komputer. Dalam mendeteksi dan mencegah serangan jaringan komputer dapat dilakukan dengan beberapa teknik yaitu firewall, intrusion detection system (IDS) dan intrusion prevention system (IPS) (Modi et al., 2013). Pada umumnya arsitektur dari sistem pendeteksi serangan terbagi menjadi event auditor, service, IDS service, dan storage service. Event auditor bekerja seperti system logs yang mencatat dan mengumpulkan paketpaket data. Pada IDS service terdapat analyzer yang berfungsi menganalisis paket-paket data yang diperoleh dari event auditor dan alert system yang berfungsi dalam pengelolaan atau pengiriman peringatan apabila terjadi serangan. IDS service berguna untuk mendeteksi serangan melalui teknik behavior atau knowledge. Untuk mendeteksi serangan, IDS dibedakan menjadi beberapa macam (Modi et al., 2013), yaitu: 1. Host based intrusion detection system (HIDS) HIDS memonitoring dan mengidentifikasi file host sistem, system calls atau network event pada jaringan apakah terjadi suatu percobaan serangan atau penyusupan ke dalam sistem. 2. Network based intrusion detection system (NIDS) NIDS memonitoring dan menganalisa semua lalu lintas (network traffic) yang lewat pada jaringan untuk mencari adanya serangan atau penyusupan ke dalam jaringan. 3. Distributed intrusion detection system (DIDS) DIDS bekerja dengan menggunakan karakteristik dari NIDS dan HIDS serta mewarisi kelebihan dari kedua IDS tersebut. 4. Hypervisor-based intrusion detection system Hypervisor based intrusion detection system bekerja dengan memantau dan menganalisa komunikasi antara virtual machine (VMs) dengan hypervisor berbasis jaringan virtual. 5. Intrusion Prevention System (IPS) IPS bekerja untuk mencegah serangan intrusi yang dibagi menjadi network based intrusion prevention system (NIPS) dan host based intrusion prevention system (HIPS). 6. Intrusion detection and prevention system (IDPS) IDPS merupakan gabungan dari kinerja IDS dan IPS, yang mana IDPS sangat efektif dalam mendeteksi dan mencegah serangan jaringan. Fakultas Ilmu Komputer, Universitas Brawijaya
2160
2.3. KDD CUP 99 Data yang digunakan dalam penelitian untuk menilai algoritme ELM pada Network Intrusion Detection dataset KDD Cup 99. Data Knowledge Discovery and Data Mining Tools Competition (KDD) Cup 99 dibuat dengan memproses bagian TCPdump dari DARPA Intrusion Detection System Evaluation dataset 1998, yang dibuat oleh MIT di Laboratorium Lincoln. Data ini berasal dari jejak paket Defense Advanced Research Projects Agency (DARPA) yang digunakan untuk Kompetisi Internasional yang ketiga pada Knowledge Discovery dan Data Mining Tools. Tujuan dari kompetisi ini adalah untuk membangun sebuah detektor jaringan untuk menemukan koneksi yang baik dan koneksi yang buruk (NSKH, 2016). Data TCPdump yang dikumpulkan dari lalu lintas jaringan diubah menjadi informasi atau catatan koneksi. Kumpulan data training ada sekitar 5.000.000 catatan koneksi, dan 10% data training terdiri dari 494.021 data yang di antaranya terdapat 97.278 koneksi normal. Ada 41 atribut yang berbeda untuk membedakan fitur koneksi dan mengetahui nilai dari koneksi tersebut apakah sebuah serangan atau tidak (Mechtri, 2010). Jenis-jenis serangan dibagi ke dalam empat kategori sebagai berikut (NSKH, 2016): 1. Probing Attack yaitu keadaan ketika penyerang mencoba untuk mengumpulkan informasi yang lebih detail tentang host target dengan memindai jaringan untuk menemukan vulnerability. Serangan yang termasuk kategori ini misalnya adalah port scanning, nmap, ipsweep, mscan. 2. Denial of Service (DOS) yaitu keadaan ketika penyerang mencoba membuat sumber jaringan menjadi tidak tersedia bagi pengguna yang dituju. Serangan yang termasuk kategori ini adalah syn flooding, back, smurf, mailbomb, neptune. 3. User to Root Attack (U2R) yaitu keadaan ketika penyerang mengakses super-user korban atau mengeksploitasi untuk mendapatkan root access ke sistem atau akses tidak sah ke hak superuser lokal (root). Serangan pada kategori ini misalnya serangan buffer overflow, rootkit, sqlattack. 4. Remote to Local Attack (R2L) yaitu akses tidak sah dari penyerang jarak jauh, misalnya imap, worm, spy, snmpgetattack, snmpguess. Pada serangan ini, penyerang mengirimkan paket ke mesin melalui
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
2161
jaringan tetapi tidak memiliki akun pada mesin tersebut dan mengeksploitasi untuk tambahan akses lokal sebagai seorang user pada mesin tersebut. Setiap kategori serangan dikelompokkan menjadi beberapa jenis serangan dasar, misalnya serangan R2L terbagi menjadi 8 jenis serangan tertentu (yaitu spy, imap, dll). Terdapat 22 kategori jenis serangan pada 10% data KDD Cup 99, tetapi secara keseluruhan dataset ada 40 jenis kategori serangan yang akan dijelaskan pada Tabel 1. Tabel 1 Klasifikasi tipe serangan jaringan (NSKH, 2016) Tipe serangan Normal apache2, back, land,mailbomb, neptune, pod, processtable, smurf, teardrop, udpstorm butter_overflow, loadmodule, perl, ps, rootkit, sqlattack, xterm ftp_write, guess_passwd, sendmail, imap, multihop, named, phf, snmpgetattack, snmpguess, warezmaster, worm, xlock, httptunnel, xznoop, wazerclient, spy ipsweep, mscan, portsweep, saint, satan, nmap
Kelas Normal DOS U2R
R2L
Probe
2.4. Extreme Learning Machine Metode ELM diperkenalkan pertama kali oleh Huang (Huang et al., 2006). ELM merupakan jaringan saraf tiruan (JST) feedforward dengan single hidden layer atau disebut dengan Single Hidden Layer Feedforward Neural Networks (SLFNs) (Huang et al., 2006). Metode pembelajaran ELM dibuat untuk mengatasi beberapa kelemahan dari jaringan saraf tiruan feedforward, terutama dalam hal learning speed. Gambar 1 merupakan struktur ELM dalam klasifikasi, dimana terdapat input layer, hidden layer, dan output layer. Terdapat beberapa activation function yaitu sigmoidal function, radial basis, sine, cosine, exponential, dan nonregular function lainnya serta menggunakan Moore-Penrose untuk menghitung invers matriks keluaran hidden layer H. Digunakan activation function sigmoid karena merupakan activation function yang telah menghasilkan akurasi terbaik pada banyak data (Cao, 2012).
Fakultas Ilmu Komputer, Universitas Brawijaya
Gambar 1 Struktur ELM dalam klasifikasi (Ye, 2015)
Training algoritme ELM dengan bisa dilakukan dengan langkah-langkah (Cholissodin, 2016): 1. Membuat nilai random matriks Wjk sebagai bobot masukan dan nilai bias b dengan ukuran matrik bias adalah [1xj] yang mana k merupakan banyak node input layer dan j merupakan banyak node hidden layer. W dan b merupakan learning parameter dari ELM. 2. Menghitung matrik H (keluaran hidden layer) dengan Persamaan 1. π» = 1/(1 + exp(β(ππ‘ππππ . π π + ππππ (ππ‘ππππ , 1) β π)))
3. Menghitung Persamaan 2.
output
weight
π½Μ = H β . T
(1) dengan (2)
Dengan T merupakan matriks target keluaran, dan untuk menghitung π» β digunakan pseudoinvers Moore-Penrose dengan Persamaan 3. π» β = (π»π . π»)β1 . π»π
4. Menghitung Persamaan 4. πΜ = π» . π½Μ
hasil
(3) prediksi
dengan (4)
Testing algoritme ELM dengan bisa dilakukan dengan langkah-langkah (Cholissodin, 2016): 1. Diketahui nilai bobot masukan Wjk, nilai bias b, dan nilai π½Μ sesuai training. 2. Menghitung matrik H dengan Persamaan 5.
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
π»π‘ππ π‘ = 1/(1 + exp(β(ππ‘ππ π‘ . π π + ππππ (ππ‘ππ π‘ , 1) β π)))
3. Menghitung Persamaan 6.
hasil
2162
dinaikkan 1 sesuai Persamaan 7. (5)
prediksi
dengan
πΜ = π»π‘ππ π‘ . π½Μ
(6)
4. Menghitung nilai evaluasi.
ππΎ,π₯ π‘ππ π‘ (π) = ππΎ,π₯ π‘ππ π‘ (π) + 1
Setelah semua hasil dimasukan ke ππΎ,π₯π‘ππ π‘ (π), hasil prediksi akhir dari data xtest yang kemudian ditetapkan berdasarkan voting terbanyak atau mayoritas pada Persamaan 8. πΆ π‘ππ π‘ arg
2.5. Voting Based Extreme Learning Machine 2.5.1. Masalah ELM pada Klasifikasi ELM membangun batas pemisahan nonlinear dalam aplikasi klasifikasi. Hidden nodes yang digunakan acak dan tidak berubah selama fase training, beberapa sampel kemungkinan terjadi kesalahan klasifikasi pada realisasi tertentu, terutama untuk sampel yang dekat dengan batas klasifikasi. keputusan berdasarkan realisasi tunggal ELM mungkin kurang dapat diandalkan dan hasil klasifikasi dalam realisasi yang berbeda dapat bervariasi karena batas pemisah berbagai nonlinear dibangun dengan berbagai hidden node learning parameter acak. 2.5.2. Voting based Machine
Extreme
Learning
Untuk mengatasi masalah ELM yang telah dijelaskan sebelumnya dan meningkatkan kinerja klasifikasi dari ELM, diperbaiki dengan algoritme yang disebut Voting based Extreme Learning Machine (V-ELM) dengan menggabungkan beberapa ELM bebas dan pengambilan keputusan dengan metode voting mayoritas. Pada V-ELM, digunakan jumlah hidden node yang sama dan activation function yang sama pada setiap hidden node untuk beberapa ELM. Setiap ELM dilatih dengan data yang sama dan learning parameters untuk setiap ELM diinisialisasi secara acak. Penentuan kelas atau serangan jaringan ditentukan oleh voting mayoritas dari semua hasil yang diperoleh setiap perhitungan ELM (ELMs). Dimisalkan K independent networks dilatih dengan algoritme ELM digunakan pada V-ELM. Selanjutnya, untuk setiap contoh testing Xtest, hasil prediksi sebanyak K dapat diperoleh dari setiap ELMs. Vektor yang sesuai SK,xtest Π RC dengan dimensi sama dengan jumlah kelas untuk menyimpan semua hasil K dari Xtest, dimana kelas prediksi dari setiap ELM sebanyak K (k Π [1,....,K] disimbolkan dengan i, yaitu nilai yang sesuai dimasukan pada vektor SK,xtest Fakultas Ilmu Komputer, Universitas Brawijaya
(7)
πππ₯ πβ[1,β¦,πΆ]
{ ππΎ,π₯ π‘ππ π‘ (π)}
(8)
Algoritme 1 merupakan deskripsi algoritme dari Voting based Extreme Learning Machine (Cao et al., 2012) . Pada ELM biasa, hanya dilakukan satu kali proses training dan testing, sedangkan V-ELM melakukan proses ELM sebanyak K untuk mendapatkan hasil yang terbaik. Pada training V-ELM, dilakukan inisialisasi nilai k sebesar 1, sehingga dilakukan proses ELM dari k=1 sampai nilai K. Didapatkan nilai keluaran hidden layer dengan fungsi πΊ(πΌ, π, π) sehingga diperoleh nilai output weight Ξ² dari perkalian Moore-Penrose invers dari matriks H dengan matriks target output T. Pada testing V-ELM dilakukan juga inisialisasi nilai k sebesar 1, dan dilakukan proses testing ELM dari k=1 sampai K. Digunakan learning parameter πΌ sebagai bobot masukan, π sebagai nilai bias, dan Ξ² sebagai output weight untuk memprediksi atau mengklasifikasi label class dari data testing. Selanjutnya dilakukan peryimpanan nilai untuk mengisi vektor ππΎ,π₯ π‘ππ π‘ dari nilai prediksi testing ELM. Melalui vektor ππΎ,π₯ π‘ππ π‘ dilakukan voting untuk mendapatkan nilai maksimal pada setiap kelas prediksi atau klasifikasi. 2.5.3. Normalisasi data Nilai data yang berkisar antara -1 dan 1 lebih baik untuk kinerja algoritme klasifikasi ELM, sehingga diperlukan adanya normalisasi data (Ye, 2015). Untuk melakukan normalisasi data digunakan Persamaan 9. π=
πβππππ ππππ₯ βππππ
(9)
2.5.4. Evaluasi V-ELM Untuk mengetahui kinerja dari klasifikasi VELM dilakukan perhitungan akurasi untuk mengetahui berapa banyak data yang sukses diklasifikasikan oleh V-ELM. Selain perhitungan akurasi, dilakukan evaluasi berupa sensitivity dan precision yang dikalkulasikan dengan Persamaan 11 dan 12 (Ye, 2015). ππππ’ππππ¦ =
π‘ππ’π πππ ππ‘ππ£π ππ’πππππππππ‘π
(10)
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
π πππ ππ‘ππ£ππ‘π¦ = ππππππ πππ =
π‘ππ’π πππ ππ‘ππ£π
(11)
ππππ’πππ‘ππ’π‘βπππ ππ‘ππ£π π‘ππ’π πππ ππ‘ππ£π
(12)
ππ’π‘ ππ’π‘ πππ ππ‘ππ£π
Algoritme V-ELM Diberikan: data training β΅ = { (ππ , π‘π ) | ππ β β π , π‘π β β π } π π=1
fungsi menghitung hidden node output πΊ(πΆ , π , π) nilai hidden node L nilai independent training K zero valued vector ππΎ β π
πΆ , C merupakan jumlah kelas
Fase Training: (1) (2)
(3) (4)
(5) (6)
Set k = 1 while (k β€ K) do Inisialisasi learning parameter secara random (πΆππ , πππ ) (π = 1,2, β¦ , πΏ) of the kth ELM Menghitung hidden layer output matrix ππ Menghitung output weight π½π
βΆ π½π
= (πΞΊ ) β π, where T merupakan target output matrix k = k +1 end while
Fase Testing: (1) (2) (3)
(4) (5) (6) (7)
(8)
π³ test
for sampel data testing Set k = 1 while (k β€ K) do Berdasarkan kth trained basic ELM dengan learning parameters (πΆππ , πππ , π½ππ ) untuk memprediksi label dari sampel data testing π³ π‘ππ π‘ , say, as π where π π [ 1, 2, β¦ , πΆ] Then ππΎ,π π‘ππ π‘ (π) = ππΎ,π π‘ππ π‘ (π) + 1 k = k +1 end while Hasil kelas label dari sampel data testing π³ π‘ππ π‘ adalah πππ₯ π π‘ππ π‘ = πππ { π π‘ππ π‘ (π) } π β [1, β¦ πΆ] πΎ,π end for
Algoritme 1 Deskripsi algoritme V-ELM (Cao et al., 2012)
3. PERANCANGAN SISTEM 3.1. Pengumpulan Data Berdasarkan pengolahan data DARPA 98 data set intrusion detection pada KDD Cup 99 Fakultas Ilmu Komputer, Universitas Brawijaya
2163
telah tersedia data serangan dengan 41 fitur untuk mendeteksi serangan. Data yang digunakan diambil dari KDD Cup 99 dataset sebanyak 1000 baris data untuk training dan 250 baris data untuk testing. Pada data terdapat data diskrit yang akan diubah menjadi nomor sesuai dengan Tabel 2. 0,tcp,http,sf,327,467,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,33, 47,0.00,0.00,0.00,0.00,1.00,0.00,0.04,151,255,1.00,0.0 0,0.01,0.03,0.00,0.00,0.00,0.00,normal 0,icmp,private,REJ,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13 6,1,0.00,0.00,1.00,1.00,0.01,0.06,0.00,255,1,0.00,0.06, 0.00,0.00,0.00,0.00,1.00,1.00,neptune
Gambar 2 Contoh paket data KDD 0,41,107,53,327,467,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,33, 47,0.00,0.00,0.00,0.00,1.00,0.00,0.04,151,255,1.00,0.0 0,0.01,0.03,0.00,0.00,0.00,0.00,1 0,42,75,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,1,0.0 0,0.00,1.00,1.00,0.01,0.06,0.00,255,1,0.00,0.06,0.00,0. 00,0.00,0.00,1.00,1.00,6
Gambar 3 Paket data KDD setelah ditransformasi Tabel 2 Transformasi data KDD Tipe Attack atau normal Protokol Flag Service
Nama Fitur Normal All attack Tcp, icmp, udp All flag All services
Nomor 1 2-40 41,42,43 44-54 55-121
Pada penelitian ini, kategori kelas dibagi menjadi 3 varian, yaitu varian pertama 40 kelas, 5 kelas, dan 2 kelas yang mana 1 label merupakan normal dan lainnya merupakan serangan seperti pada Tabel 3-Tabel 5. Tabel 3 Banyak data latih dan uji untuk 40 kelas Kelas normal apache2 back land mailbomb neptune Pod processtable Smurf teardrop udpstorm butter_overflow loadmodule perl ps rootkit
Banyak data latih 102 24 25 25 25 50 37 25 25 25 2 43 13 7 30 36
Banyak data uji 15 7 7 7 7 12 7 7 7 7 2 7 7 5 7 7
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer sqlattack xterm ftp_write guess_passwd sendmail imap multihop named phf snmpgetattack snmpguess warezmaster worm xlock httptunnel xznoop wazerclient spy ipsweep mscan portsweep saint satan nmap
4 23 11 51 14 12 25 17 6 25 25 50 2 9 26 4 25 2 25 50 25 25 25 25
2 7 6 6 7 7 7 7 6 7 5 5 2 5 8 4 5 2 5 8 5 5 5 6
Tabel 4 Banyak data latih dan uji untuk 5 kelas Kelas Normal DOS U2R R2L Probe
Banyak data latih 102 263 156 304 175
Banyak data uji 15 70 42 89 34
Tabel 5 Banyak data latih dan uji untuk 2 kelas Kelas Normal Intrusion
Banyak data latih 500 500
Banyak data uji 125 125
3.2. Alur Perancangan Sistem Data yang telah dikumpulkan akan dinormalisasi untuk mendapatkan nilai dengan range -1 sampai 1. Selanjutnya, melakukan klasifikasi dengan algoritme V-ELM seperti Gambar 5. Dilakukan proses training dan testing untuk mendapatkan akurasi dari klasifikasi serangan jaringan komputer. 4.
HASIL DAN PEMBAHASAN
Berdasarkan implementasi yang dilakukan dengan spesifikasi laptop Intel Core i3, RAM 2 GB, dan 500 GB HDD, diperoleh hasil pengujian terhadap nilai neuron, independent training, dan sensitivity pada setiap kelas.
Fakultas Ilmu Komputer, Universitas Brawijaya
2164
Gambar 5 Diagram Alir Perancangan Sistem.
4.1. Pengujian nilai hidden neuron (L) Nilai hidden neuron merupakan nilai bebas pada Voting Based Extreme Learning Machine. Pengujian terhadap nilai hidden neuron (L) dilakukan dengan nilai 100, 200, 300, 400, dan 500. Dalam pengujian hidden neuron digunakan activation function sigmoid, independent training (K) sebesar 3. Pada pengujian ini, hasil akurasi yang diperoleh merupakan nilai yang tidak statis karena mempunyai masukan bobot yang random. Oleh sebab itu, dilakukan 3 kali percobaan untuk menghitung akurasi dengan parameter yang sama. Selanjutnya hasil dari 3 percobaan tersebut dirata-ratakan sehingga diperoleh hasil seperti pada Gambar 6. Diketahui hasil pengujian hidden neuron pada 2 kelas menghasilkan akurasi lebih tinggi daripada 5 kelas dan 40 kelas serangan. 80 60 40 20 0 100
200
40 kelas
300 5 kelas
400
500 2 kelas
Gambar 6 Diagram pengujian hidden neuron
Dari pengujian hidden neuron di atas, terjadi overfitting yaitu ketidakmampuan sistem dalam mengenali pola-pola serangan yang baru sehingga grafik yang dihasilkan cenderung turun atau naik-turun.
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
4.2. Pengujian independent training (K) Pengujian independent training yang dilakukan dimulai dari angka 3-35 dan bilangan ganjil untuk menghindari adanya peluang yang sama serta merupakan nilai rekomendasi berdasarkan penelitian V-ELM sebelumnya. Dari pengujian yang dilakukan, diperoleh nilai independent training yang berbeda pada setiap varian data dalam menghasilkan akurasi tertinggi. Pada varian 2 kelas serangan diperoleh akurasi tertinggi pada independent training bernilai 3 dalam sekali percobaan, sedangkan independent training K=19 untuk 5 kelas, dan K=5 untuk 40 kelas. 80 60
40 20 0 3
7
11
15
40 kelas
19
23
5 kelas
27
31
35
2 kelas
Gambar 7 Diagram pengujian independent training
4.3. Pengujian sensitivity dan precision Data yang digunakan mempunyai pembagian kelas yang tidak merata atau sama, maka dilakukan pengujian sensitivity dan precision untuk mengetahui tingkat sensitivity dari setiap kelas. Untuk pengujian pada 40 kelas digunakan 100 neuron dan independent training 5, sedangkan untuk pengujian pada 5 kelas digunakan 100 neuron dan independent training 19, dan untuk pengujian pada 2 kelas digunakan 100 neuron dan independent training 3. Tabel 6 Hasil pengujian sensitivity dan precision untuk 40 kelas Class 1 2 3 4 5 6 7 8 9 10 11 12 13 14
Sensitivity 0,2 0,571428571 0,857142857 0,714285714 0 0,75 0 0,857142857 1 0,285714286 0 0 0 0
Precision 0,032967033 0,8 0,545454545 0,25 0 0,5 0 0,428571429 0,411764706 1 0 0 0 0
Fakultas Ilmu Komputer, Universitas Brawijaya
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
2165 0 0 0 0,428571429 0 0 0 0 0 0 0 0 1 0,4 0 0,4 0,875 0 0 0 0 0 0,4 0 0,8 0
0 0 0 0,272727273 0 0 0 0 0 0 0 0 0,416666667 0,071428571 0 1 0,875 0 0 0 0 0 0,5 0 0,666666667 0
Tabel 7 Hasil pengujian sensitivity dan precision untuk 5 kelas Class normal DoS R2L U2R PROBE
Sensitivity 0 0,385714286 0,023809524 0,97752809 0,147058824
Precision 0 0,84375 1 0,426470588 0,384615385
Tabel 8 Hasil pengujian sensitivity dan precision untuk 2 kelas Class Normal Attack
Sensitivity 0,8 0,648
Precision 0,694 0,764
5. KESIMPULAN Voting based Extreme Learning Machine dapat diimplementasikan dalam klasifikasi serangan jaringan komputer dengan menggunakan data KDD Cup 99. Voting based Extreme Learning Machine bekerja dengan melakukan ELM sebanyak independent training (K) yang mana hasilnya akan divoting sebanyak K. Dari voting tersebut diperoleh nilai terbanyak untuk menjadi hasil akhir. Nilai K yang digunakan bilangan ganjil untuk menghindari adanya peluang hasil yang sama. Pada penelitian ini, penulis menganalisis sebagian data dari KDD Cup 99 dataset yaitu sebanyak 1000 baris data untuk training dan 250
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
data untuk testing yang dipilih secara acak. Data dibagi menjadi 3 varian yaitu data dengan 40 kelas, 5 kelas, dan 2 kelas serangan jaringan komputer. Hasil analisis menunjukkan bahwa ada beberapa hal penting yang mempengaruhi kinerja sistem dengan menggunakan algoritme V-ELM ini, dan hasil evaluasi menunjukan akurasi tertinggi yaitu sebesar 72% pada 2 kelas serangan. Akurasi tertinggi diperoleh pada nilai hidden neuron sebesar 100 dan nilai independent training (K) sebesar 3. Akurasi terendah diperoleh pada nilai hidden neuron sebesar 100 dan nilai independent training (K) sebesar 11 yaitu 12.40% pada varian data 40 kelas. Pada varian data 40 kelas, kelas 31 (httptunnel) merupakan kelas dengan nilai sensitivity dan precision tertinggi. Pada varian data 5 kelas, diperoleh kelas U2R dengan sensitivity tertinggi dan sensitivity tertinggi pada kelas normal untuk varian data 2 kelas. Pada penelitian selanjutnya, dapat menggunakan keseluruhan data dari KDD Cup 99 atau (National Sedimentation LaboratoryKnowledge Discovery in Databases) NSL-KDD, yang mana data NSL-KDD merupakan data optimasi dari data asli KDD Cup 99, ukuran data NSL-KDD yang tidak terlalu besar, tidak ada catatan atau rekaman paket data jaringan yang duplikat, dan lain-lain. Walaupun beberapa penelitian menyatakan ada kekurangan dari NSL-KDD, tetapi masih bisa diterapkan sebagai data acuan yang efektif dalam membantu peneliti untuk intrusion detection. Serta dapat meningkatkan akurasi algoritme V-ELM untuk klasifikasi jenis serangan jaringan komputer sehingga dapat diimplementasikan pada IDS untuk mengetahui keamanan jaringan secara real-time. DAFTAR PUSTAKA Beale, J., & Caswell, 2004. Snort Intrusion Detection, Second Edition. Cao, J., Lin, Z., Huang, G.-B. and Liu, N., 2012. Voting based extreme learning machine. Information Sciences, 185, 66β77. Cholissodin, I., Sutrisno, Soebroto, A., Hanum, L., & Caesar, C., 2017. Optimasi Kandungan Gizi Susu Kambing Peranakan Etawa (PE) menggunakan ELM-PSO di UPT Pembibitan Ternak dan Hijauan Makanan Ternak SingosariMalang. Jurnal Teknologi Informasi dan
Fakultas Ilmu Komputer, Universitas Brawijaya
2166 Ilmu Komputer (JTIIK), Vol.4, No.1, 3136.
Dirgantara, 2011. Particle Swarm Optimization Pada Fuzzy C-Means Untuk Mendeteksi Serangan Jaringan Komputer. Skripsi Fakultas Matematika dan Ilmu Pengetahuan Alam. Universitas Brawijaya. Huang, G.-B., Zhu, Q., Siew, C., 2006. Extreme learning machine: Theory and applications. Neurocomputing, 70, 489β 501. KDD-cup data set. http://kdd.ics.uci.edu/databases/kddcup99 /kddcup99.html Kausar, N., Samir, B., Sulaiman, S., Ahmad, I., and Hussain, M., 2012. An Approach towards Intrusion Detection using PCA Feature Subsets and SVM. International Conference on Computer & Information Science (ICCIS), 569-574. Modi, C., Patel, D., Borisaniya, B., Patel, H., Patel, A. and Rajarajan, M., 2013. A survey of intrusion detection techniques in Cloud. Journal of Network and Computer Applications, 36, 42-57. Mechtri, L., Tolba, F., & Ghoualmi, N., 2010. Intrusion Detection using Principal Component Analysis. Second International Conference on Engineering System Management and Applications. NSKH, P., Varma, N., Naik, R., 2016. Principle Component Analysis based Intrusion Detection System Using Support Vector Machine. IEEE International Conference on Recent Trend in Electronics Information Communication Technology, 1344-1350. Sonawane, H., & Pattewar, T., 2015. Neural Network based Intrusion Detection using Bayesian with PCA and KPCA Feature Extraction. IEEE International Conference on Computer Graphics, Vision and Information Security (CGVIS), 83-88. Sonawane, H., & Pattewar, T., 2015. A Comparative Performance Evaluation of Intrusion Detection based Neural Network and PCA. IEEE International Conference on Communications and Signal Processing (ICCSP), 841-845.
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer
Siddidui, M., 2004. High Performance Data Mining Techniques for Intrusion Detection. University of Central Florida. Sahu, S., & Mehtre, B., 2015. Network Intrusion Detection System using J48 Decision Tree. International Conference on Advances in Computing, Communications and Informatics (ICACCI), 2023-2026. Srimuang, W., & Intarasothonchun, S., 2015. Classification Model of Network Intrusion using Weighted Extreme Learning Machine. 12th International Joint Conference on Computer Science and Software Engineering (JCSSE), 190-194. Tavallaee, M., Bagheri, E., Lu, W., & Ghorbani, A., 2009. A detailed analysis of the KDD Cup 99 data set. In Proceeding of the Second IEEE Symposium on Computation Ontelligence for Security and Defence Application (CISDA) 2009. Vieira, K., Schulter, A., Westphall C., Intrusion detection techniques in grid and Cloud Computing Environment. IEEE IT Professional Magazine 2010. Ye, Z., and Yu, Y., 2015. Network Intrusion Classification based on Extreme Learning Machine. Proceeding of the 2015 IEEE International Conference on Information Automation Lijiang, China, 1642-1647.
Fakultas Ilmu Komputer, Universitas Brawijaya
2167