Anda di halaman 1dari 35

library.uns.ac.id digilib.uns.ac.

id

BAB IV
HASIL DAN PEMBAHASAN

Pada BAB IV ini akan dijelaskan hasil dan pembahasan dari penelitian yang telah
dilakukan saat menganalisa performa deteksi serangan DDoS dengan dataset
CICDDoS2019 untuk serangan SYN dan UDP dengan proses seleksi fitur Information
Gain dan klasifikasi Random Forest. Pada bagian ini akan dijelaskan mengenai hasil yang
diperoleh pada setiap proses yang dilakukan sesuai dengan Metode Penelitian.

4.1. Pre-Processing
Pada penelitian ini menggunakan data sekunder bernama CICDDoS2019 dengan
mengambil 2 tipe serangan, SYN dan UDP. dataset CICDDoS2019 ini memiliki sejumlah
88 fitur yang mencakup berbagai aspek terkait dengan karakteristik dan pola serangan
DDoS (dapat dilihat pada Tabel 4.1).

Tabel 4.1. Daftar Feature dan Tipe Data pada Feature CICDDoS2019

No. Feature Tipe Data No. Feature Tipe Data

1 Unnamed: 0 int64 45 Bwd Packets/s float64

2 Flow ID object 46 Min Packet Length float64

3 Source IP object 47 Max Packet Length float64

4 Source Port int64 48 Packet Length Mean float64

5 Destination IP object 49 Packet Length Std float64

6 Destination Port int64 50 Packet Length Variance float64

7 Protocol int64 51 FIN Flag Count int64

8 Timestamp object 52 SYN Flag Count int64

9 Flow Duration int64 53 RST Flag Count int64

10 Total Fwd Packets int64 54 PSH Flag Count int64

11 Total Backward Packets int64 55 ACK Flag Count int64

12 Total Length of Fwd


Packets float64 56 URG Flag Count int64

13 Total Length of Bwd


Packets float64 57 CWE Flag Count int64
library.uns.ac.id digilib.uns.ac.id

No. Feature Tipe Data No. Feature Tipe Data

14 Fwd Packet Length Max float64 58 ECE Flag Count int64

15 Fwd Packet Length Min float64 59 Down/Up Ratio float64

16 Fwd Packet Length Mean float64 60 Average Packet Size float64

17 Fwd Packet Length Std float64 61 Avg Fwd Segment Size float64

18 Bwd Packet Length Max float64 62 Avg Bwd Segment Size float64

19 Bwd Packet Length Min float64 63 Fwd Header Length.1 int64

20 Bwd Packet Length Mean float64 64 Fwd Avg Bytes/Bulk int64

21 Bwd Packet Length Std float64 65 Fwd Avg Packets/Bulk int64

22 Flow Bytes/s float64 66 Fwd Avg Bulk Rate int64

23 Flow Packets/s float64 67 Bwd Avg Bytes/Bulk int64

24 Flow IAT Mean float64 68 Bwd Avg Packets/Bulk int64

25 Flow IAT Std float64 69 Bwd Avg Bulk Rate int64

26 Flow IAT Max float64 70 Subflow Fwd Packets int64

27 Flow IAT Min float64 71 Subflow Fwd Bytes int64

28 Fwd IAT Total float64 72 Subflow Bwd Packets int64

29 Fwd IAT Mean float64 73 Subflow Bwd Bytes int64

30 Fwd IAT Std float64 74 Init_Win_bytes_forward int64

31 Init_Win_bytes_backwa
Fwd IAT Max float64 75 rd int64

32 Fwd IAT Min float64 76 act_data_pkt_fwd int64

33 Bwd IAT Total float64 77 min_seg_size_forward int64

34 Bwd IAT Mean float64 78 Active Mean float64

35 Bwd IAT Std float64 79 Active Std float64

36 Bwd IAT Max float64 80 Active Max float64

37 Bwd IAT Min float64 81 Active Min float64

38 Fwd PSH Flags int64 82 Idle Mean float64

39 Bwd PSH Flags int64 83 Idle Std float64


library.uns.ac.id digilib.uns.ac.id

No. Feature Tipe Data No. Feature Tipe Data

40 Fwd URG Flags int64 84 Idle Max float64

41 Bwd URG Flags int64 85 Idle Min float64

42 Fwd Header Length int64 86 SimillarHTTP object

43 Bwd Header Length int64 87 Inbound int64

44 Fwd Packets/s float64 88 Label object

Dataset CICDDoS2019 telah memiliki label yang terkait dengan penelitian ini
berupa label Benign, SYN, dan UDP. Untuk mengetahui jumlah nilai pada kategori label
dapat diperoleh dengan bantuan fungsi value_counts(). Dengan jumlah total trafik seperti
tertampil pada Gambar 4.1.

Gambar 4.1. Jumlah data Benign, SYN attack, dan UDP attack

Sehingga untuk jumlah data beserta dimensi pada dataset seperti tertampil pada
Tabel 4.2, dengan jumlah data 2549 untuk trafik Benign, 1582289 trafik serangan SYN,
dan 3134645 trafik serangan UDP, dan untuk dimensi dataset dengan total baris dan kolom
adalah 4719483 dan 88.

Tabel 4.2. Dimensi Dataset SYN dan UDP pada CICDDoS2019.

Benign SYN UDP Total


(Baris x Kolom)

Jumlah 2549 1582289 3134645 4719483 x 88

Dengan informasi dari data yang diperoleh, nantinya data akan diolah terlebih
dahulu sebelum diproses oleh algoritma random forest, dengan melakukan pengolahan
pada setiap fitur dan terhadap isi data. Tujuan dari pengolahan ini adalah untuk
memastikan bahwa fitur-fitur tersebut memiliki format yang sesuai dan dapat dipahami
library.uns.ac.id digilib.uns.ac.id

oleh algoritma. dan setelah itu akan dilakukan normalisasi data untuk menghilangkan noise
yang mungkin ada dalam dataset.

Sampel data trafik jaringan pada file CSV dataset CICDDoS2019 yang diberi label
serangan dan normal untuk keperluan pengujian algoritma seperti pada Gambar 4.2.

Gambar 4.2. Sampel data normal, SYN attack, dan UDP attack dari dataset CICDDoS2019

Selanjutnya, jumlah feature akan disesuaikan dengan feature pada


CICFlowmeter-V4 yang mana akan digunakan pada penelitian kali ini. Feature pada
CICFlowmeter-V4 memiliki beberapa perbedaan dengan CICFlowmeter-V3, seperti
perbedaan pada jumlah feature dan penulisan nama feature, sehingga akan dilakukan
penyesuaian bentuk penulisan nama seperti dalam Tabel 4.3.

Tabel 4.3. Perbedaan penulisan feature pada CICFlowmeter-V3 dan CICFlowmeter-V4

No CICFlowmeter-V3 CICFlowmeter-V4
1 Source IP Src IP
2 Source Port Src Port
3 Destination IP Dst IP
4 Destination Port Dst Port
5 Total Fwd Packets Total Fwd Packet
6 Total Backward Packets Total Bwd packets
7 Total Length of Fwd Packets Total Length of Fwd Packet
8 Total Length of Bwd Packets Total Length of Bwd Packet
9 Min Packet Length Packet Length Min
library.uns.ac.id digilib.uns.ac.id

No CICFlowmeter-V3 CICFlowmeter-V4
10 Max Packet Length Packet Length Max
11 CWE Flag Count CWR Flag Count
12 Avg Fwd Segment Size Fwd Segment Size Avg
13 Avg Bwd Segment Size Bwd Segment Size Avg
14 Fwd Avg Bytes/Bulk Fwd Bytes/Bulk Avg
15 Fwd Avg Packets/Bulk Fwd Packet/Bulk Avg
16 Fwd Avg Bulk Rate Fwd Bulk Rate Avg
17 Bwd Avg Bytes/Bulk Bwd Bytes/Bulk Avg
18 Bwd Avg Packets/Bulk Bwd Packet/Bulk Avg
19 Bwd Avg Bulk Rate Bwd Bulk Rate Avg
20 Init_Win_bytes_forward FWD Init Win Bytes
21 Init_Win_bytes_backward Bwd Init Win Bytes
22 act_data_pkt_fwd Fwd Act Data Pkts
23 min_seg_size_forward Fwd Seg Size Min

Beberapa feature pada dataset juga akan diubah dengan cara menghilangkan
beberapa feature disebabkan tipe data yang tidak bisa diolah oleh algoritma penelitian
guna menghindari error saat pemodelan. Feature pada dataset yang akan dihilangkan
beserta keterangan alasan dihilangkan tertampil pada Tabel 4.4.
Tabel 4.4. Feature yang akan dihilangkan

No. Feature pada CICDDos2019 Alasan dihilangkan

1 Flow ID Merupakan index dataset dan tidak diperlukan

2 Source IP Bertipe data string

3 Destination IP Bertipe data string

4 Timestamp Bertipe data string

5 SimillarHTTP Bertipe data string

6 Unnamed: 0 Tidak support CICFlowmeter-V4

7 Fwd Header Length.1 Tidak support CICFlowmeter-V4

8 Inbound Tidak support CICFlowmeter-V4

9 CWE Flag Count Tidak support CICFlowmeter-V4


library.uns.ac.id digilib.uns.ac.id

Setelah itu, akan dilakukan pembersihan data rusak. Data rusak yang akan
dihilangkan adalah data dengan tipe NaN dan Infinity. Pengecekan dilakukan dengan
bantuan function dari modul pandas, function yang digunakan adalah isna().any() dan
isin().any(). Output yang dikeluarkan adalah berupa nilai True dan False, dengan nilai True
menunjukkan terdapat data rusak dan nilai False menunjukkan tidak terdapat data rusak.
Proses pengecekan Feature terdapat pada Gambar 4.3.

Gambar 4.3. Source code pencarian data NaN dan Infinite

Dengan kesimpulan penjelasan data terdapat pada Tabel 4.5, dan sampel data pada
Gambar 4.4 dengan jumlah data rusak sebesar 242990.

Tabel 4.5. Feature dengan data NaN dan Infinite

Feature Keterangan

Flow Bytes/s Berisi NaN dan Infinity data

Flow Packets/s Berisi Infinite data

Gambar 4.4. Data pada dataset dengan nilai NaN dan Infinity
library.uns.ac.id digilib.uns.ac.id

Feature pada dataset akan dihapus dan untuk data noise akan dihapus juga,
sehingga dimensi pada data telah berubah. Dimana sekarang telah memiliki 79 feature dan
jumlah data secara keseluruhan menjadi 4476493 data. Untuk melihat dimensi dataset akan
digunakan fungsi shape dengan menampilkan ukuran dimensi berupa jumlah baris beserta
kolom dataset. Sedangkan untuk mengetahui jumlah kategori pada label dapat
menggunakan fungsi value_counts() dengan mengembalikan nilai berupa jumlah data pada
tiap kategori label. Proses pencarian tersebut seperti pada Gambar 4.5.

Gambar 4.5. Dimensi dataset dan value_counts() pada label

Pada Tabel 4.6 memuat rangkuman perubahan dimensi dataset dengan nilai data
Benign, SYN Attack, UDP Attack, dan informasi baris & kolom pada saat sebelum
preprocessing dan setelah preprocessing.

Tabel 4.6. Data trafik paket jaringan sebelum dan setelah preprocessing

Sebelum Preprocessing Setelah Preprocessing

Benign 2549 2508

SYN 1582289 1379983

UDP 3134645 3094002

Total (Baris x Kolom) 4719483 x 88 4476493 x 79

Setelah proses penghapusan, label akan diubah menjadi format tipe integer dengan
label Benign menjadi 0, SYN menjadi 1, UDP menjadi 2, dengan tujuan mempermudah
perhitungan dan penampilan data pada Confusion Matrix seperti pada gambar 4.6.

Gambar 4.6. Perubahan penamaan label


library.uns.ac.id digilib.uns.ac.id

4.2. Seleksi Fitur Information Gain


Setelah diperoleh data yang baru, selanjutnya akan dilakukan perhitungan untuk
diperoleh nilai Information Gain. Dengan menggunakan bantuan library python
mutual_info_classif diperoleh hasil seperti pada Tabel 4.7 dengan menunjukkan nilai
Information Gain pada tiap feature.

Tabel 4.7. Nilai Information Gain tiap feature

No. Feature IG No. Feature IG.


1 Source Port 0,2591 40 Bwd Packets/s 0,0621
2 Destination Port 0,0216 41 Min Packet Length 0,7378
3 Protocol 0,8146 42 Max Packet Length 0,7401
Packet Length
4 Flow Duration 0,2303 43 Mean 0,7241
5 Total Fwd Packets 0,2875 44 Packet Length Std 0,2463
Total Backward Packet Length
6 Packets 0,0659 45 Variance 0,1796
Total Length of Fwd
7 Packets 0,6915 46 FIN Flag Count 0,0000
Total Length of Bwd
8 Packets 0,0023 47 SYN Flag Count 0,0003
Fwd Packet Length
9 Max 0,7494 48 RST Flag Count 0,0009
Fwd Packet Length
10 Min 0,7382 49 PSH Flag Count 0,0000
Fwd Packet Length
11 Mean 0,7240 50 ACK Flag Count 0,6594
Fwd Packet Length
12 Std 0,2446 51 URG Flag Count 0,0017
Bwd Packet Length
13 Max 0,0023 52 ECE Flag Count 0,0002
Bwd Packet Length
14 Min 0,0016 53 Down/Up Ratio 0,0476
Bwd Packet Length
15 Mean 0,0024 54 Average Packet Size 0,7176
Bwd Packet Length Avg Fwd Segment
16 Std 0,0010 55 Size 0,7241
library.uns.ac.id digilib.uns.ac.id

No. Feature IG No. Feature IG.


Avg Bwd Segment
17 Flow Bytes/s 0,6693 56 Size 0,0026
Fwd Avg
18 Flow Packets/s 0,3556 57 Bytes/Bulk 0,0000
Fwd Avg
19 Flow IAT Mean 0,2333 58 Packets/Bulk 0,0000
20 Flow IAT Std 0,2212 59 Fwd Avg Bulk Rate 0,0000
Bwd Avg
21 Flow IAT Max 0,2297 60 Bytes/Bulk 0,0000
Bwd Avg
22 Flow IAT Min 0,0189 61 Packets/Bulk 0,0000
23 Fwd IAT Total 0,2119 62 Bwd Avg Bulk Rate 0,0000
Subflow Fwd
24 Fwd IAT Mean 0,2126 63 Packets 0,2877
25 Fwd IAT Std 0,1947 64 Subflow Fwd Bytes 0,6916
Subflow Bwd
26 Fwd IAT Max 0,2123 65 Packets 0,0659
27 Fwd IAT Min 0,0202 66 Subflow Bwd Bytes 0,0023
Init_Win_bytes_for
28 Bwd IAT Total 0,0531 67 ward 0,6637
Init_Win_bytes_bac
29 Bwd IAT Mean 0,0529 68 kward 0,0623
30 Bwd IAT Std 0,0062 69 act_data_pkt_fwd 0,7354
min_seg_size_forw
31 Bwd IAT Max 0,0527 70 ard 0,1887
32 Bwd IAT Min 0,0508 71 Active Mean 0,0371
33 Fwd PSH Flags 0,0009 72 Active Std 0,0264
34 Bwd PSH Flags 0,0000 73 Active Max 0,0369
35 Fwd URG Flags 0,0000 74 Active Min 0,0366
36 Bwd URG Flags 0,0000 75 Idle Mean 0,0371
37 Fwd Header Length 0,2858 76 Idle Std 0,0357
38 Bwd Header Length 0,0611 77 Idle Max 0,0371
39 Fwd Packets/s 0,3584 78 Idle Min 0,0372
library.uns.ac.id digilib.uns.ac.id

Lalu pada Gambar 4.7 menunjukkan grafik urutan nilai information gain tiap
feature pada serangan SYN dan UDP dimulai dari nilai tertinggi hingga nilai terendah.
Nilai tersebut kemudian diambil untuk melalui proses lebih lanjut dengan tujuan
mendapatkan tingkat pentingnya fitur (feature importance), sehingga dapat mengurangi
beban kerja mesin dan memperoleh informasi yang lebih bermakna untuk pengolahan
selanjutnya.

Gambar 4.7. Grafik information gain pada SYN dan UDP attack

Untuk menentukan jumlah feature yang diseleksi, pada penelitian ini akan dicari
nilai akurasi yang diperoleh pada tiap feature dengan percobaan 1 feature, 2 feature, 3
feature, dan seterusnya hingga keseluruhan feature.

4.3. Cross Validation, Random Forest, dan Analisis


Sebelum proses pembuatan model, akan dilakukan pemisahan pada dataset yang
akan digunakan sebagai data latih dan data uji. Pada informasi dari Gambar 4.1, dataset
terlihat timpang antara jumlah data normal dan data serangan akan mempengaruhi proses
pemodelan karena persebaran data yang tidak merata. Sehingga untuk mengatasi
permasalahan ini akan dilakukan metode Cross Validation agar data dapat digunakan
secara merata.

Menurut peneliti (Kohavi, Ron. 1995), metode Cross Validation konvensional tidak
dapat memberikan hasil yang optimal terhadap dataset imbalance. Penelitian tersebut
memberikan hasil bahwa untuk proses Cross Validation pada dataset yang imbalance dapat
library.uns.ac.id digilib.uns.ac.id

menggunakan metode Stratified K-Fold dan menghasilkan hasil yang optimal. Sehingga
pada penelitian kali akan digunakan metode Stratified K-Fold Validation dengan nilai k-10
sebagai splitting index.

Proses splitting dan pemodelan akan dilakukan dengan langkah-langkah sebagai


berikut:

1. Splitting dataset menggunakan Stratified K-Fold dengan 10 splitting dengan


rata-rata splitting data adalah 90% untuk training dan 10% untuk testing.
2. Tiap data yang telah dibagi (splitting) akan dilakukan pemodelan dengan Random
Forest secara looping pada tiap data split sehingga diperoleh model , dan model
akan disimpan untuk dapat digunakan sebagai prediksi.
3. Model yang telah diperoleh akan digunakan sebagai prediksi testing data, sehingga
dapat dihitung nilai performa Confusion Matrix.
Hasil percobaan pada tiap feature ditunjukkan pada Gambar 4.8, dengan
keseluruhan menunjukkan grafik naik atau cenderung stabil ketika feature lebih dari 8.
Sehingga pada penelitian ini akan digunakan batasan feature yang akan digunakan yaitu
dengan 8 feature. Dengan feature yang akan digunakan ditunjukkan dengan Tabel 4.8.

Gambar 4.8. Grafik akurasi pada tiap penggunaan feature

Tabel 4.8. Daftar 8 feature yang digunakan.

No. Feature Importance No. Feature Importance

1. Protocol 5. Fwd Packets/s


2. Fwd Packet Length Max 6. Flow Packets/s
3. Max Packet Length 7. Subflow Fwd Packets
4. Fwd Packet Length Min 8. Total Fwd Packets
library.uns.ac.id digilib.uns.ac.id

Detail hasil yang diperoleh dengan 8 feature ditampilkan pada Gambar 4.9 - 4.18
berupa nilai Confusion Matrix pada tiap fold dengan penjelasan representasi untuk tiap
label adalah data dengan tipe Benign adalah 0, SYN attack adalah 1, dan UDP attack
adalah 2.

Gambar 4.9. Fold-1 Gambar 4.10. Fold-2 Gambar 4.11. Fold-3

Gambar 4.12. Fold-4 Gambar 4.13. Fold-5 Gambar 4.14. Fold-6

Gambar 4.15. Fold-7 Gambar 4.16. Fold-8 Gambar 4.17. Fold-9

Gambar 4.18. Fold-10


library.uns.ac.id digilib.uns.ac.id

Hasil dari confusion matrix kemudian akan dicari nilai accuracy, precision, recall,
dan f-measure dengan berdasar pada rata-rata pada tiap fold. Sehingga diperoleh nilai
accuracy, precision, recall, dan f-measure seperti pada Tabel 4.9 dengan secara
keseluruhan untuk nilai accuracy yang diperoleh adalah 0.99.

Tabel 4.9. Nilai accuracy, precision, recall, f-measure

Precision Recall F-Measure

Benign 0.99176 0.99636 0.99034

SYN 0.99970 0.99959 0.99937

UDP 0.99911 0.99993 0.99991

Accuracy 0.99995

Selanjutnya, dengan menggunakan proses yang sama akan dilakukan untuk


menghitung perbedaan waktu proses antara proses menggunakan seleksi fitur dan tidak
menggunakan seleksi fitur untuk mengetahui perbedaan dalam performa waktu. Hasil
waktu yang diperoleh seperti tertampil pada Gambar 4.20.

Gambar 4.19. Perbedaan waktu komputasi Gambar 4.20. Grafik Perbedaan waktu
komputasi

Terlihat jelas melalui analisis grafik yang ada bahwa dengan menerapkan metode
seleksi fitur, kita dapat secara signifikan mempercepat waktu komputasi yang dibutuhkan
dalam proses pelatihan dan pengujian model. Dengan mengurangi jumlah fitur yang
digunakan dalam analisis, kita dapat mengurangi beban komputasi yang diperlukan oleh
algoritma.
Sedangkan untuk nilai accuracy, precision, recall, dan f-measure dengan berdasar
pada rata-rata pada tiap fold pada data tanpa seleksi fitur ditunjukkan pada Tabel 4.10.
library.uns.ac.id digilib.uns.ac.id

Tabel 4.10. Nilai accuracy, precision, recall, f-measure tanpa seleksi fitur.

Precision Recall F-Measure

Benign 0.99903 0.99990 0.99966

SYN 0.99956 0.99984 0.99382

UDP 0.99897 0.99391 0.99981

Accuracy 0.99994

Berdasarkan hasil yang diperoleh, terlihat bahwa nilai accuracy antara sebelum dan
sesudah diterapkannya Information Gain memberikan peningkatan nilai meskipun tidak
begitu signifikan. Akan tetapi dengan menggunakan seleksi fitur proses komputasi yang
dilakukan baik fase pelatihan maupun pengujian memberikan dampak pengurangan waktu
komputasi. Sehingga meskipun dengan fitur yang berkurang, dapat memberikan hasil akhir
yang tetap optimal.

Pada penelitian kali ini juga dilakukan percobaan dengan menggunakan jenis
algoritma klasifikasi lainnya seperti yang dilakukan pada penelitian (Naveen Bindra, Manu
Sood. 2019) yaitu untuk algoritma Naive Bayes, KNN, Logistic Regression. Dengan
proses yang sama seperti Metode Penelitian, hasil yang diperoleh ditunjukkan seperti pada
Tabel 4.11. dengan nilai tertinggi ada pada Random Forest dengan jumlah tree 100.
Tabel 4.11. Perbedaan hasil accuracy beberapa algoritma
Algoritma Accuracy
RF n_est=20 99,994
RF n_est=100 99,995
Naive Bayes 71,98
KNN neighbors=5 99,9
Logistic Regression 96,93

Pada Tabel 4.12 ditunjukkan perbedaan hasil yang diperoleh dibandingkan dengan
penelitian sebelumnya dengan perbandingan parameter pada jenis algoritma klasifikasi dan
dataset yang digunakan. Dengan menunjukkan bahwa hasil akurasi pada penelitian yang
diajukan memiliki nilai akurasi yang tinggi dari penelitian sebelumnya.
library.uns.ac.id digilib.uns.ac.id

Tabel 4.12. Perbedaan hasil yang diperoleh dibandingkan dengan penelitian sebelumnya.
No Nama Judul Klasifikasi Dataset Akurasi
Detecting DDoS Attacks Using
Naveen Bindra, Machine Learning Techniques
CICIDS2017 96,2 %
Manu Sood (2019) and Contemporary Intrusion Random
1 Detection Dataset Forest
Santos, R., Souza, D., NSL-KDD
Santo, W., Ribeiro, (dari KDD99),
98,9 %
A., & Moreno, E. Machine learning algorithms to Random dengan
2 (2020) detect DDoS attacks in SDN Forest improvement
Deteksi distributed denial of
Damar Adyun
service menggunakan random Random CICIDS2017 99.87%
Muhamad (2020)
3 forest Forest
Yini Chen, Jun Hou,
Qianmu Li, Huaqiu DDoS Attack Detection Based on Random DARPA 97 %
4 Long (2021) Random Forest Forest
Analisa Performa Penggunaan
Budiman, S., Feature Selection untuk
Sunyoto, A., & Mendeteksi Intrusion Detection UNSW-NB15 95,24 %
Nasiri, A. (2021) Systems dengan Algoritma Random
5 Random Forest Classifier Forest
Seleksi Fitur dengan Information
Kurniabudi, Abdul
Gain untuk Meningkatkan Deteksi
Harris, Abdul Rahim CICIDS2017 99.99%
Serangan DDoS Menggunakan Random
(2020)
6 Random Forest Forest
Fauzi, A., Utami, E., Penerapan Random Forest dan
CICDDoS
& Hartanto, A. D. Adaboost untuk Klasifikasi Random 99 %
2019
7 (2023) Serangan DDoS Forest
Purba, R., Lestari, W.
CICDDoS
S., & Ulina, M. Deteksi Serangan DDoS Deep 96,26%
2019
8 (2022). Mengunakan Deep Q-Network Q-Network.
Analisis Serangan DDoS
Ridho, M. A., & Menggunakan Metode Jaringan Neural DARPA 95%
9 Arman, M. (2020) Saraf Tiruan Network
Penerapan Metode Support Vector
Jacobus, A., & Machine pada Sistem Deteksi KDD99 86,38 %
10 Winarko, E. (2014) Intrusi secara Real-time SVM
library.uns.ac.id digilib.uns.ac.id

4.4. Pengujian model terhadap Metasploit dan Low Orbit Ion Cannon (LOIC)

Pada penelitian ini, akan dilakukan pengujian dengan melakukan serangan kepada
sebuah server yang telah ditentukan. Setelah itu, dilakukan analisa pendeteksian serangan
dengan menggunakan model yang telah diperoleh sebelumnya. Tujuan dari pengujian ini
adalah untuk menguji keefektifan model dalam mendeteksi dan melawan berbagai metode
serangan terhadap server yang diserang.

4.4.1. Kebutuhan Perangkat

a. Spesifikasi Perangkat Keras


- Sistem Operasi: Ubuntu
- Processor: AMD Athlon 300U 64 Bit, 4 Core
- RAM: 5,7 GiB
- Storage: 512GB NVMe disk

b. Spesifikasi Perangkat Lunak


- Google Colaboratory
- RAM: 35,2 GB
- Processor: Intel Xeon CPU with 2 vCPUs
- Storage: 225,8 GB
- Runtime Type: Python 3 TPU
- Virtualbox
- Kali Linux 2023
- Processor: 1 CPU
- RAM: 1024 MB
- Software: Metasploit
- Windows 8
- Processor: 1 CPU
- RAM: 1024 MB
- Software: Low Orbit Ion Cannon (LOIC)
- Ubuntu Desktop 22.04
- Processor: 1 CPU
- RAM: 1024 MB
- Software: Wireshark, CICFlowmeter-V4
library.uns.ac.id digilib.uns.ac.id

4.4.2. Konfigurasi Hacking LAB

Konfigurasi LAB yang dilakukan pada penelitian kali ini menerapkan metode LAB
seperti pada penelitian sebelumnya (Damar Adyun Muhamad. 2020 & Hafid, M. H. 2019)
dengan berbasis Virtualbox dan konfigurasi jaringan Host-only Adapter. Pada proses ini
akan digunakan sebuah mesin penyerang berupa mesin Kali Linux (Metasploit) dan
Windows 8 (LOIC), dengan sebuah server target Ubuntu Desktop 22.04 pada sebuah
lingkungan Lab jaringan berbasis VirtualBox. Lab pada VirtualBox akan dirancang sebuah
skema jaringan dengan menggunakan Host-Only adapter agar mempermudah dalam proses
analisa jaringan. Dengan topologi seperti pada Gambar 4.21.

Gambar 4.21. Topologi Jaringan LAB Hacking


4.4.2.1. Konfigurasi VirtualBox

VirtualBox adalah sebuah perangkat lunak virtualisasi yang memungkinkan


pengguna untuk menjalankan sistem operasi tambahan di dalam sistem operasi yang sudah
ada. Dengan menggunakan VirtualBox, pengguna dapat membuat "mesin virtual" yang
berfungsi seperti komputer mandiri dengan sistem operasi sendiri. VirtualBox juga
menyediakan fitur seperti pengaturan jaringan virtual, berbagi file antara mesin fisik dan
mesin virtual, serta snapshot untuk mengelola dan mengamankan lingkungan virtual.
(Oracle VM virtualbox. Retrieved July 13, 2023). Mesin yang akan diujikan akan diimport
kedalam Virtualbox seperti pada Gambar 4.22.
library.uns.ac.id digilib.uns.ac.id

Gambar 4.22. Tampilan antar muka Virtualbox

Tahap pertama dalam konfigurasi VirtualBox adalah mengatur jenis jaringan yang
akan digunakan. Pada penelitian kali ini akan digunakan jenis jaringan Host-Only Adapter.
Host-Only Adapter memungkinkan interaksi jaringan hanya antara Host dan Mesin
Virtualbox, sehingga akan memudahkan dalam proses analisa jaringan. Langkah
konfigurasi jaringan dapat dilakukan dengan membuka menu Files > Tools > Network
Manager, masuk ke tab Host-Only Adapter, lalu konfigurasi network address sesuai seperti
pada topologi (Gambar 4.23).

Gambar 4.23. Konfigurasi jaringan Host-Only Adapter

4.4.2.2. Konfigurasi Kali Linux 2023

Langkah pertama dalam konfigurasi mesin Kali Linux adalah mengatur jaringan
dengan menggunakan Host-Only Adapter. Proses konfigurasi dilakukan pada antar muka
Virtualbox (Gambar 4.24). Langkah konfigurasi adalah dengan membuka pengaturan pada
mesin, lalu masuk pada tab Network, pilih Adapter 1, lalu pilih attached to ke Host-Only
Adapter
library.uns.ac.id digilib.uns.ac.id

Gambar 4.24. Konfigurasi Virtualbox jaringan Kali Linux


Setelah konfigurasi jaringan pada menu Virtualbox, selanjutnya adalah konfigurasi
IP Statis di dalam mesin Kali Linux. Prosesnya adalah pertama buka Advanced Network
Configuration terlebih dahulu. Lalu konfigurasi jaringan sesuai pada topologi (Gambar
4.20). Hasil konfigurasi tertampil seperti pada Gambar 4.25.

Gambar 4.25. Hasil konfigurasi jaringan pada Kali Linux

Selanjutnya, pada mesin Kali Linux akan diberi perangkat hacking metasploit
untuk melakukan simulasi DDoS SYN Attack. Metasploit adalah sebuah framework yang
digunakan untuk menguji keamanan sistem komputer dan jaringan, dikembangkan oleh
Rapid7, metasploit menyediakan kumpulan alat dan sumber daya yang digunakan untuk
melakukan uji penetrasi (penetration testing), pengujian kerentanan (vulnerability
assessment), dan eksploitasi kelemahan pada sistem (Metasploit. Metasploit. Retrieved
July 13, 2023). Pada mesin Kali Linux, metasploit telah terpasang secara default, sehingga
hanya perlu melakukan konfigurasi pada tahap penyerangan. Proses pertama adalah
dengan membuka tools terminal dalam mode super user, lalu ketikkan msfconsole,
sehingga tampil seperti pada Gambar 4.26.
library.uns.ac.id digilib.uns.ac.id

Gambar 4.26. Tampilan antar muka Metasploit

4.4.2.3. Konfigurasi Windows 8

Langkah pertama dalam konfigurasi mesin Windows 8 adalah mengatur jaringan


dengan menggunakan Host-Only Adapter. Proses konfigurasi yang dilakukan sama seperti
saat konfigurasi pada mesin Kali Linux.

Setelah konfigurasi jaringan pada menu Virtualbox, selanjutnya adalah konfigurasi


IP Statis di dalam mesin Windows 8. Prosesnya adalah pertama buka Network and Sharing
Center terlebih dahulu. Lalu konfigurasi jaringan sesuai pada topologi (Gambar 4.21).
Hasil konfigurasi tertampil seperti pada Gambar 4.27.

Gambar 4.27. Hasil konfigurasi jaringan pada Windows 8

Selanjutnya, pada mesin Windows 8 akan diberi perangkat hacking LOIC untuk
melakukan simulasi DDoS SYN dan UDP Attack. Low Orbit Ion Cannon (LOIC) adalah
program open source yang dibangun dengan bahasa C# oleh Praetox Technologies untuk
keperluan Network Stress Testing yang memungkinkan berbagai “user” untuk membanjiri
target sehingga dapat menimbulkan crash pada target. Program LOIC memiliki
kemampuan untuk membanjiri berdasarkan IP maupun URL, dengan jenis serangan yang
library.uns.ac.id digilib.uns.ac.id

dimiliki adalah SYN attack, UDP attack, dan HTTP attack. (Encyclopedia of Cyber
Warfare. 2017). Tampilan antar muka program LOIC seperti tertampil pada Gambar 4.28.

Gambar 4.28. Tampilan antar muka program LOIC

4.4.2.4. Konfigurasi Ubuntu Desktop 22.04

Langkah pertama dalam konfigurasi mesin Ubuntu Desktop 22.04 adalah mengatur
jaringan dengan menggunakan Host-Only Adapter. Proses konfigurasi yang dilakukan
sama seperti saat konfigurasi pada mesin Kali Linux dan Windows 8.

Setelah konfigurasi jaringan pada menu Virtualbox, selanjutnya adalah konfigurasi


IP Statis di dalam mesin Ubuntu Desktop 22.04. Prosesnya adalah pertama buka terminal
terlebih dahulu dengan mode super user. Lalu ubah isi file
/etc/netplan/00-installer-config.yaml seperti pada Gambar 4.29.

Gambar 4.29. Hasil konfigurasi jaringan pada Ubuntu Desktop 22.04

Selanjutnya, pada mesin Ubuntu Desktop akan dipasang wireshark dan


CICFlowmeter-V4. Proses instalasi wireshark dapat dilakukan dengan cara sederhana,
yaitu sudo apt-get install wireshark. Sedangkan untuk CICFlowmeter dapat diunduh
dari github repository https://github.com/ahlashkari/CICFlowMeter. Pada penelitian kali
ini, CICFlowmeter akan dijalankan dengan menggunakan bantuan perangkat tambahan
library.uns.ac.id digilib.uns.ac.id

yaitu Eclipse IDE, dengan langkah-langkah instalasi dan konfigurasi seperti yang telah
dijelaskan di dalam panduan github repository. Tampilan antar muka CICFlowmeter
seperti tertampil pada Gambar 4.30.

Gambar 4.30. Tampilan antar muka CICFlowmeter-V4

4.4.3. Simulasi Serangan DDoS

Pada tahap ini akan dilakukan simulasi serangan DDoS seperti yang telah
disampaikan pada poin 4.4. Untuk tahap simulasi pada penelitian kali ini akan menerapkan
tahapan seperti pada penelitian sebelumnya (Damar Adyun Muhamad. 2020) dimana
melakukan pemisahan antara proses normal dan serangan agar mempermudah proses
pelabelan. Sehingga, adapun untuk tahapan yang akan dilakukan adalah sebagai berikut:

1. Melakukan capture jaringan dengan aktivitas normal (tanpa serangan).


2. Simulasi serangan dari software Metasploit ke mesin Ubuntu Desktop 22.04.
3. Simulasi serangan dari software LOIC ke mesin Ubuntu Desktop 22.04.
4. Simpan hasil capture jaringan (pcap) pada tiap-tiap tahap 1, 2 dan 3.
5. Ekstrak hasil capture jaringan menggunakan CICFlowmeter-V4, dan akan
tersimpan dalam file format CSV.

Pada tahap pertama, proses capturing dilakukan dengan melakukan aktivitas


jaringan normal atau tanpa serangan. Aktivitas jaringan yang dilakukan hanya membiarkan
jaringan pada mesin melakukan proses normal seperti DNS, seperti tertampil pada Gambar
4.31.
library.uns.ac.id digilib.uns.ac.id

Gambar 4.31. Capture trafik jaringan Benign pada wireshark

Tahap kedua yang akan dilakukan adalah simulasi serangan dari software
Metasploit ke mesin Ubuntu Desktop 22.04. Proses diawali dengan membuka program
Metasploit terlebih dahulu dengan menggunakan mode super user. Selanjutnya, proses
serangan SYN Attack akan menggunakan modul yang telah tersedia pada Metasploit yaitu
auxiliary/dos/tcp/synflood. Selanjutnya atur pengaturan sehingga proses serangan
mengarah ke target serangan. Hal yang akan dikonfigurasi adalah interface (eth0) dan
RHOST / IP target (172.16.200.4). Proses konfigurasi seperti tertampil pada Gambar 4.32.

Gambar 4.32. Konfigurasi target serangan pada Metasploit

Setelah dilakukan exploit, program akan melakukan proses serangan DDoS SYN
Attack ke arah mesin target. Sehingga ketika trafik jaringan diamati pada mesin target akan
terlihat trafik jaringan SYN yang membanjiri target (Gambar 4.33)
library.uns.ac.id digilib.uns.ac.id

Gambar 4.33. Capture trafik jaringan serangan SYN dengan Metasploit.

Terlihat juga bahwa ketika terjadi serangan DDoS, performa CPU pada target akan
mengalami peningkatan seperti tertampil pada Gambar 4.34.

Gambar 4.34. Performa CPU ketika terjadi serangan SYN

Pada tahapan ini, terdapat catatan bahwa trafik yang tercatat hanya berasal dari satu
alamat penyerang, namun dalam rangka menguji keandalan sistem dalam menghadapi
serangan DDoS, diperlukan simulasi dengan menggunakan berbagai alamat penyerangan.
Oleh karena itu, dalam penelitian ini, akan dilakukan simulasi serangan DDoS dengan
melibatkan tiga penyerang yang menggunakan metode serangan Metasploit. Dengan
melibatkan multiple penyerang, penelitian ini bertujuan untuk menguji kapabilitas sistem
dalam menghadapi serangan yang lebih kompleks dan melibatkan sumber daya yang
berbeda.

Selanjutnya, untuk menggambarkan situasi serangan yang realistis, penelitian ini


akan menetapkan durasi penyerangan selama 5 menit. Hal ini dipilih dengan pertimbangan
bahwa serangan yang berlangsung dalam waktu yang cukup lama dapat menimbulkan
library.uns.ac.id digilib.uns.ac.id

dampak yang signifikan terhadap sistem yang diserang. Dengan melakukan serangan
selama 5 menit, penelitian ini akan dapat mengamati bagaimana sistem bertahan dan
merespons serangan dalam jangka waktu yang lebih panjang.

Tahap ketiga yang akan dilakukan adalah simulasi serangan dari software LOIC ke
mesin Ubuntu Desktop 22.04. Proses diawali dengan membuka program LOIC terlebih
dahulu. Selanjutnya ubah target serangan dengan menggunakan IP Address target, lalu
ubah Method menjadi TCP atau UDP seperti tertera pada Gambar 4.35. Waktu proses
penyerangan yang dilakukan sama seperti pada tahap sebelum nya, yaitu menggunakan
durasi kurang lebih 5 menit.

Gambar 4.35. Konfigurasi target serangan pada LOIC

Hasil capture dari proses serangan dengan menggunakan LOIC pada serangan
SYN tertera pada Gambar 4.36 dan untuk UDP tertera pada Gambar 4.37.

Gambar 4.36. Capture trafik jaringan serangan SYN dengan LOIC


library.uns.ac.id digilib.uns.ac.id

Gambar 4.37. Capture trafik jaringan serangan UDP dengan LOIC


Tahap keempat yang akan dilakukan adalah menyimpan hasil capture jaringan
(pcap) pada tiap-tiap tahap 1 dan 2. File yang diperoleh dimulai dari tahap satu tahap dua
adalah file normal.pcap, syn_attack_metasploit.pcap, syn_attack_LOIC.pcap, dan
UDP_attack_LOIC.pcap seperti pada Gambar 4.38.

Gambar 4.38. Hasil capture serangan.


Tahap kelima atau tahap terakhir adalah melakukan ekstraksi fitur terhadap file
yang telah diperoleh menggunakan CICFlowmeter-V4. Langkah pertama adalah membuka
Eclipse IDE terlebih dahulu, lalu program CICFlowmeter-V4 dijalankan dengan Run pada
file App.java seperti tertera pada Gambar 4.39.

Gambar 4.39. Proses ekstraksi fitur menggunakan CICFlowmeter-V4


library.uns.ac.id digilib.uns.ac.id

Proses ekstraksi dilakukan pada tiap file. Setelah menekan tombol OK,
CICFlowmeter-V4 akan melakukan ekstraksi fitur, dengan hasil ekstraksi akan disimpan
kedalam file CSV dengan sufiks “_Flow.csv”. Pada percobaan ini, diperoleh hasil ekstraksi
fitur seperti tertera pada Gambar 4.40 untuk ekstraksi jaringan benign, Gambar 4.41 untuk
ekstraksi serangan SYN pada metasploit, Gambar 4.42 untuk ekstraksi serangan SYN pada
LOIC, dan Gambar 4.43 untuk ekstraksi serangan UDP pada LOIC.

Gambar 4.40. Hasil ekstraksi fitur jaringan Gambar 4.41. Hasil ekstraksi fitur
benign serangan SYN pada Metasploit

Gambar 4.42. Hasil ekstraksi fitur Gambar 4.43. Hasil ekstraksi fitur
serangan SYN pada LOIC serangan UDP pada LOIC

Pada Tabel 4.13, terdapat rangkuman informasi yang diperoleh pada tahap
sebelumnya, dengan menunjukkan jumlah trafik jaringan yang tercatat untuk setiap file
yang telah diperoleh, serta jumlah aliran yang berhasil dilakukan proses ekstraksi dengan
menggunakan program CICFlowMeter-V4. Berdasarkan peneliti (Lashkari, A. et al),
perbedaan banyaknya jumlah ekstraksi tergantung pada seberapa banyak jumlah trafik
jaringan yang masuk tiap periode waktu yang bersamaan.
library.uns.ac.id digilib.uns.ac.id

Tabel 4.13. Jumlah trafik jaringan dan hasil ekstraksi feature

Jumlah trafik ter-capture Jumlah aliran terekstrak

File Benign 2587 648

File syn_attack_metasploit 305543 108788

File syn_attack_LOIC 91481 104

File udp_attack_LOIC 981503 20

4.4.4. Analisa
Pada tahap analisa, akan dilakukan proses yang hampir sama seperti pada Metode
Penelitian dengan menerapkan beberapa perubahan tahapan. Proses analisa pada penelitian
kali ini memiliki perbedaan dengan penelitian sebelumnya (Damar Adyun Muhamad. 2020
& Hafid, M. H. 2019), yang mana pada penelitian tersebut melakukan modelling dan juga
testing data pada tiap dataset (data primer dan sekunder), sedangkan pada penelitian kali
ini akan dilakukan prediksi testing pada data primer yang diperoleh dari proses Hacking
LAB, dengan menggunakan model yang berasal dari data sekunder (CICDDoS2019).
Adapun untuk tahapannya adalah sebagai berikut:

1. File hasil ekstraksi akan dilakukan pelabelan sesuai dengan kategori pada
masing-masing tahap.
2. Memperbaiki perbedaan penamaan feature pada feature CICFlowmeter-V4 dengan
feature pada CICDDoS2019.
3. Mengambil feature dengan Seleksi Fitur yang telah terpilih pada tahap pengolahan
dataset CICDDoS2019.
4. Melakukan pembersihan data dengan menghilangkan data bertipe NaN dan infinity
jika ada.
5. Melakukan prediksi terhadap data serangan yang telah diolah dengan menggunakan
model yang telah diperoleh dari proses pengolahan dataset CICDDoS2019.
6. Melakukan penghitungan nilai Confusion Matrix dengan menghitung nilai accuracy,
precision, recall, dan f-measure.

Langkah pertama yaitu dengan melakukan pelabelan pada file ekstraksi fitur pada
file CSV yang telah diperoleh sebelumnya. Untuk file benign.pcap_Flow.csv akan diberi
label 0 (Benign), untuk file syn_attack_metasploit.pcap_Flow.csv akan diberi label 1
library.uns.ac.id digilib.uns.ac.id

(SYN), untuk file syn_attack_LOIC.pcap_Flow.csv akan diberi label 1 (SYN), dan


UDP_attack_LOIC.pcap_Flow.csv akan diberi label 2 (UDP). Proses pemberian label
seperti pada Gambar 4.44 untuk Benign, Gambar 4.45 untuk SYN pada Metasploit,
Gambar 4.46 untuk SYN pada LOIC, Gambar 4.47 untuk UDP pada LOIC.

Gambar 4.44. Pemberian label data Bengin Gambar 4.45. Pemberian label data SYN
serangan Metasploit

Gambar 4.46. Pemberian label data SYN


serangan LOIC
Gambar 4.47. Pemberian label data UDP
serangan LOIC

Langkah kedua yaitu memperbaiki perbedaan penamaan feature pada feature


CICFlowmeter-V4 dengan feature pada CICDDoS2019. Pada Tabel 4.14 ditampilkan
perbedaan penulisan nama feature pada dataset CICDDoS2019 dengan hasil ekstraksi yang
telah dilakukan.

Tabel 4.14. Perbedaan penulisan nama feature pada tiap dataset


CICDDoS2019 Normal SYN Metasploit SYN LOIC UDP LOIC
Flow ID Flow ID Flow ID Flow ID Flow ID
Source IP Src IP Src IP Src IP Src IP
Source Port Src Port Src Port Src Port Src Port
Destination IP Dst IP Dst IP Dst IP Dst IP
library.uns.ac.id digilib.uns.ac.id

CICDDoS2019 Normal SYN Metasploit SYN LOIC UDP LOIC


Destination Port Dst Port Dst Port Dst Port Dst Port
Protocol Protocol Protocol Protocol Protocol
Timestamp Timestamp Timestamp Timestamp Timestamp
Flow Duration Flow Duration Flow Duration Flow Duration Flow Duration
Total Fwd Packets Total Fwd Packet Tot Fwd Pkts Tot Fwd Pkts Tot Fwd Pkts
Total Backward
Packets Total Bwd packets Tot Bwd Pkts Tot Bwd Pkts Tot Bwd Pkts
Total Length of Fwd Total Length of Fwd
Packets Packet TotLen Fwd Pkts TotLen Fwd Pkts TotLen Fwd Pkts
Total Length of Total Length of
Bwd Packets Bwd Packet TotLen Bwd Pkts TotLen Bwd Pkts TotLen Bwd Pkts
Fwd Packet Length Fwd Packet Length
Max Max Fwd Pkt Len Max Fwd Pkt Len Max Fwd Pkt Len Max
Fwd Packet Length Fwd Packet Length
Min Min Fwd Pkt Len Min Fwd Pkt Len Min Fwd Pkt Len Min
Fwd Packet Length Fwd Packet Length
Mean Mean Fwd Pkt Len Mean Fwd Pkt Len Mean Fwd Pkt Len Mean
Fwd Packet Length Fwd Packet Length
Std Std Fwd Pkt Len Std Fwd Pkt Len Std Fwd Pkt Len Std
Bwd Packet Length Bwd Packet Length
Max Max Bwd Pkt Len Max Bwd Pkt Len Max Bwd Pkt Len Max
Bwd Packet Length Bwd Packet Length
Min Min Bwd Pkt Len Min Bwd Pkt Len Min Bwd Pkt Len Min
Bwd Packet Length Bwd Packet Length
Mean Mean Bwd Pkt Len Mean Bwd Pkt Len Mean Bwd Pkt Len Mean
Bwd Packet Length Bwd Packet Length
Std Std Bwd Pkt Len Std Bwd Pkt Len Std Bwd Pkt Len Std
Flow Bytes/s Flow Bytes/s Flow Byts/s Flow Byts/s Flow Byts/s
Flow Packets/s Flow Packets/s Flow Pkts/s Flow Pkts/s Flow Pkts/s
Flow IAT Mean Flow IAT Mean Flow IAT Mean Flow IAT Mean Flow IAT Mean
Flow IAT Std Flow IAT Std Flow IAT Std Flow IAT Std Flow IAT Std
Flow IAT Max Flow IAT Max Flow IAT Max Flow IAT Max Flow IAT Max
Flow IAT Min Flow IAT Min Flow IAT Min Flow IAT Min Flow IAT Min
Fwd IAT Total Fwd IAT Total Fwd IAT Tot Fwd IAT Tot Fwd IAT Tot
Fwd IAT Mean Fwd IAT Mean Fwd IAT Mean Fwd IAT Mean Fwd IAT Mean
Fwd IAT Std Fwd IAT Std Fwd IAT Std Fwd IAT Std Fwd IAT Std
Fwd IAT Max Fwd IAT Max Fwd IAT Max Fwd IAT Max Fwd IAT Max
Fwd IAT Min Fwd IAT Min Fwd IAT Min Fwd IAT Min Fwd IAT Min
Bwd IAT Total Bwd IAT Total Bwd IAT Tot Bwd IAT Tot Bwd IAT Tot
Bwd IAT Mean Bwd IAT Mean Bwd IAT Mean Bwd IAT Mean Bwd IAT Mean
Bwd IAT Std Bwd IAT Std Bwd IAT Std Bwd IAT Std Bwd IAT Std
Bwd IAT Max Bwd IAT Max Bwd IAT Max Bwd IAT Max Bwd IAT Max
Bwd IAT Min Bwd IAT Min Bwd IAT Min Bwd IAT Min Bwd IAT Min
Fwd PSH Flags Fwd PSH Flags Fwd PSH Flags Fwd PSH Flags Fwd PSH Flags
library.uns.ac.id digilib.uns.ac.id

CICDDoS2019 Normal SYN Metasploit SYN LOIC UDP LOIC


Bwd PSH Flags Bwd PSH Flags Bwd PSH Flags Bwd PSH Flags Bwd PSH Flags
Fwd URG Flags Fwd URG Flags Fwd URG Flags Fwd URG Flags Fwd URG Flags
Bwd URG Flags Bwd URG Flags Bwd URG Flags Bwd URG Flags Bwd URG Flags
Fwd Header Length Fwd Header Length Fwd Header Len Fwd Header Len Fwd Header Len
Bwd Header Length Bwd Header Length Bwd Header Len Bwd Header Len Bwd Header Len
Fwd Packets/s Fwd Packets/s Fwd Pkts/s Fwd Pkts/s Fwd Pkts/s
Bwd Packets/s Bwd Packets/s Bwd Pkts/s Bwd Pkts/s Bwd Pkts/s
Min Packet Length Packet Length Min Pkt Len Min Pkt Len Min Pkt Len Min
Max Packet Length Packet Length Max Pkt Len Max Pkt Len Max Pkt Len Max
Packet Length Packet Length
Mean Mean Pkt Len Mean Pkt Len Mean Pkt Len Mean
Packet Length Std Packet Length Std Pkt Len Std Pkt Len Std Pkt Len Std
Packet Length Packet Length
Variance Variance Pkt Len Var Pkt Len Var Pkt Len Var
FIN Flag Count FIN Flag Count FIN Flag Cnt FIN Flag Cnt FIN Flag Cnt
SYN Flag Count SYN Flag Count SYN Flag Cnt SYN Flag Cnt SYN Flag Cnt
RST Flag Count RST Flag Count RST Flag Cnt RST Flag Cnt RST Flag Cnt
PSH Flag Count PSH Flag Count PSH Flag Cnt PSH Flag Cnt PSH Flag Cnt
ACK Flag Count ACK Flag Count ACK Flag Cnt ACK Flag Cnt ACK Flag Cnt
URG Flag Count URG Flag Count URG Flag Cnt URG Flag Cnt URG Flag Cnt
CWE Flag Count CWR Flag Count CWE Flag Count CWE Flag Count CWE Flag Count
ECE Flag Count ECE Flag Count ECE Flag Cnt ECE Flag Cnt ECE Flag Cnt
Down/Up Ratio Down/Up Ratio Down/Up Ratio Down/Up Ratio Down/Up Ratio
Average Packet Size Average Packet Size Pkt Size Avg Pkt Size Avg Pkt Size Avg
Avg Fwd Segment Fwd Segment Size
Size Avg Fwd Seg Size Avg Fwd Seg Size Avg Fwd Seg Size Avg
Avg Bwd Segment Bwd Segment Size
Size Avg Bwd Seg Size Avg Bwd Seg Size Avg Bwd Seg Size Avg
Fwd Header
Length.1 (not support) (not support) (not support) (not support)
Fwd Avg Fwd Bytes/Bulk
Bytes/Bulk Avg Fwd Byts/b Avg Fwd Byts/b Avg Fwd Byts/b Avg
Fwd Avg Fwd Packet/Bulk
Packets/Bulk Avg Fwd Pkts/b Avg Fwd Pkts/b Avg Fwd Pkts/b Avg
Fwd Avg Bulk Rate Fwd Bulk Rate Avg Fwd Blk Rate Avg Fwd Blk Rate Avg Fwd Blk Rate Avg
Bwd Avg Bwd Bytes/Bulk
Bytes/Bulk Avg Bwd Byts/b Avg Bwd Byts/b Avg Bwd Byts/b Avg
Bwd Avg Bwd Packet/Bulk
Packets/Bulk Avg Bwd Pkts/b Avg Bwd Pkts/b Avg Bwd Pkts/b Avg
Bwd Avg Bulk Rate Bwd Bulk Rate Avg Bwd Blk Rate Avg Bwd Blk Rate Avg Bwd Blk Rate Avg
Subflow Fwd Subflow Fwd
Packets Packets Subflow Fwd Pkts Subflow Fwd Pkts Subflow Fwd Pkts
Subflow Fwd Bytes Subflow Fwd Bytes Subflow Fwd Byts Subflow Fwd Byts Subflow Fwd Byts
library.uns.ac.id digilib.uns.ac.id

CICDDoS2019 Normal SYN Metasploit SYN LOIC UDP LOIC


Subflow Bwd Subflow Bwd
Packets Packets Subflow Bwd Pkts Subflow Bwd Pkts Subflow Bwd Pkts
Subflow Bwd Bytes Subflow Bwd Bytes Subflow Bwd Byts Subflow Bwd Byts Subflow Bwd Byts
Init_Win_bytes_for FWD Init Win
ward Bytes Init Fwd Win Byts Init Fwd Win Byts Init Fwd Win Byts
Init_Win_bytes_bac
kward Bwd Init Win Bytes Init Bwd Win Byts Init Bwd Win Byts Init Bwd Win Byts
act_data_pkt_fwd Fwd Act Data Pkts Fwd Act Data Pkts Fwd Act Data Pkts Fwd Act Data Pkts
min_seg_size_forw
ard Fwd Seg Size Min Fwd Seg Size Min Fwd Seg Size Min Fwd Seg Size Min
Active Mean Active Mean Active Mean Active Mean Active Mean
Active Std Active Std Active Std Active Std Active Std
Active Max Active Max Active Max Active Max Active Max
Active Min Active Min Active Min Active Min Active Min
Idle Mean Idle Mean Idle Mean Idle Mean Idle Mean
Idle Std Idle Std Idle Std Idle Std Idle Std
Idle Max Idle Max Idle Max Idle Max Idle Max
Idle Min Idle Min Idle Min Idle Min Idle Min
SimillarHTTP (not support) (not support) (not support) (not support)
Inbound (not support) (not support) (not support) (not support)
Label Label Label Label Label

Terlihat pada Tabel diatas, terdapat perbedaan penulisan nama feature antara
dataset CICDDoS2019 dengan hasil ekstraksi feature, antara penamaan feature SYN
metasploit, SYN LOIC, UDP LOIC telah sama, tetapi untuk Benign dan CICDDoS2019
memiliki beberapa penulisan nama faeture yang berbeda. Dan juga terdapat beberapa
feature yang tidak support atau tidak terdapat pada hasil ekstraksi dengan CICDDoS2019.

Pada tahap tiga, akan dilakukan seleksi fitur dengan hanya mengambil fitur yang
diperlukan sesuai pada Tabel 4.8. Proses pengambilan feature seperti tertampil pada
Gambar 4.48.

Gambar 4.48. Pengambilan feature sesuai Information Gain


library.uns.ac.id digilib.uns.ac.id

Pada tahap keempat, akan dilakukan pembersihan data NaN dan Infinity jika ada.
Seperti pada pembahasan sebelumnya dimana data NaN dan Infinity akan mempengaruhi
proses perhitungan oleh algoritma sehingga diperlukan pembersihan berupa menghapus
data dengan tipe NaN dan Infinity. Proses penghapusan data NaN dan Infinity terdapat pada
Gambar 4.49.

Gambar 4.49. Proses penghapusan data NaN dan Infinity

Pada tahap kelima, akan dilakukan prediksi terhadap data serangan yang telah
diolah dengan menggunakan model yang telah diperoleh dari proses pengolahan dataset
CICDDoS2019. Proses prediksi dilakukan dengan kode program sebagai berikut:
X = df[column]
Y = df[label]

predict = []
for i in 10:
model = load_dataset[i]
y_pred = model.predict(X)
predict.append(y_pred)
predict_by_mode = []
for i in range(len(predict[0])):
md = mode([arr[i] for arr in predict])
predict_by_mode.append(md)

Seperti yang telah dijelaskan sebelumnya, proses analisa prediksi dilakukan secara
terpisah pada tiap file, karena terdapat 2 serangan yang sama (SYN) yang dilakukan
dengan metode/program yang berbeda. Oleh karena itu, pada penelitian kali ini juga akan
mencari tahu perbedaan hasil yang diperoleh meskipun dengan serangan yang sama tetapi
menggunakan metode yang berbeda.

Dikarenakan pada penelitian kali ini menggunakan file dataset primer yang telah
berlabel dengan terpisah pada tiap file, dan akan mencari nilai yang diprediksi benar
terhadap keseluruhan data sebenarnya yang benar, maka hasil perhitungan akan difokuskan
library.uns.ac.id digilib.uns.ac.id

terhadap hasil recall. Hasil prediksi terhadap data trafik normal (kode 0) dengan
menggunakan model yang diperoleh sebelumnya adalah untuk nilai recall sebesar
0.012346 (Gambar 4.51).

Gambar 4.51. Nilai performa terhadap data trafik


Gambar 4.50. Hasil Confusion normal
Matrix uji trafik normal
Sedangkan untuk hasil prediksi terhadap data trafik serangan SYN (kode 1) dengan
menggunakan tools Metasploit menghasilkan nilai recall sebesar 0.0 (Gambar 4.53).
Untuk hasil prediksi terhadap data trafik serangan SYN (kode 1) dengan menggunakan
tools LOIC menghasilkan nilai recall sebesar 0.0 (Gambar 4.55).

Gambar 4.53. Nilai performa terhadap data


trafik serangan SYN Metasploit

Gambar 4.52. Hasil Confusion Matrix uji


trafik SYN Metasploit

Gambar 4.55. Nilai performa terhadap data


trafik serangan SYN LOIC

Gambar 4.54. Hasil Confusion Matrix uji


trafik SYN LOIC
library.uns.ac.id digilib.uns.ac.id

Dan untuk hasil prediksi terhadap data trafik serangan UDP (kode 2) dengan
menggunakan tools Metasploit menghasilkan nilai recall sebesar 0.05 (Gambar 4.57).

Gambar 4.57. Nilai performa terhadap data


trafik serangan UDP LOIC

Gambar 4.56. Hasil Confusion Matrix uji


trafik UDP LOIC

Berdasarkan hasil yang diperoleh, terlihat bahwa nilai recall hampir semua
memiliki persentase mendekati 0.00, yang artinya keberhasil model dan dataset yang
digunakan untuk menemukan kembali informasi yang benar pada serangan Metasploit dan
LOIC sangat rendah. Dan proses serangan yang dilakukan dengan menggunakan metode
yang telah dijelaskan sebelumnya tidak memberikan hasil yang diharapkan. Hal tersebut
dapat terjadi karena perbedaan metode penyerangan antara penelitian sebelumnya
(Sharafaldin, I. et al. 2019) dengan penelitian kali ini. Dan juga dapat berarti bahwa
penggunaan Metasploit dan LOIC yang pada zaman sekarang dengan spesifikasi mesin
yang telah berkembang dapat dianggap sebuah kasus tidak serangan.

Anda mungkin juga menyukai