Ağ saldırılarının sınıflandırılmasında karar ağaçlarına dayalı arttırma (boosting) algoritmalarının karşılaştırılması
Comparison of the decision tree based boosting algorithms in classification of network attacks
Yazar: KORAY ÇOŞKUN
Danışman: DR. ÖĞR. ÜYESİ GÜRCAN ÇETİN
Muğla Sıtkı Koçman Üniversitesi / Fen Bilimleri Enstitüsü / Bilişim Sistemleri Mühendisliği Ana Bilim Dalı
Derece: Yüksek Lisans, 2020
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control

Özet:
Son yıllarda bilişim kaynaklarının güvenliğini sağlama oldukça önemli bir konu haline gelmiştir. Özellikle internet erişimi sağlayan ağ yapısı ulusal ve uluslarası birçok konumdan gelen saldırıların hedefi olabilmekte ve bu ağ yapısını kullanan kurumlarda kayıplara neden olabilmektedir. Birçok kaynakta saldırı tespit sistemleri olarak da anılan anomali tespit sistemleri de bu tür ağlarda oluşan düzensizlikleri tespit etmeyi hedeflerler. Ancak saldırı tespit sistemlerinin başarısı bu yazılımların arka planda kullandıkları algoritmalar ve öğrenme kapasiteleri ile sınırlıdır. Bu tez çalışmasında, topluluk öğrenmesi algoritmalarından arttırma (boosting) yönteminin zararlı ağ trafiğini belirlemedeki başarım oranı araştırılmıştır. Bu bağlamda AdaBoost, CatBoost, Gradyan Arttırma, LightGBM ve XGBoost algoritmaları Google Colab üzerinde modellenmiş ve CICID2017 veri kümesi üzerinde uygulanmıştır. Ayrıca, tez çalışmasında, CICIDS2017 veri kümesindeki etiketlenmiş ağ saldırılarının tespit edilmesinde Karar Ağaçları yöntemi, arttırma algoritmalarının başarımını karşılaştırmak amacıyla kullanılmıştır. Eğitilen ve test edilen sınıflandırıcıların performansları doğruluk, kesinlik, duyarlılık, F1 değeri, Kappa değeri ve ROC eğrisi gibi performans değerlendirme ölçütleri ile incelenmiştir. Bunlar haricinde başka bir değerlendirme ölçütü olarak da algoritmaların öğrenme süreleri de kullanılmıştır. Çalışma sonucunda F1 değeri açısından en iyi sonucu %99.89 ile XGBoost algoritmasının verdiği ve ayrıca AUC değerlerinin de 0.9989 ile 1'e çok yakın olduğu belirlenmiştir. Ancak bunun yanında yüksek başarım elde edilen diğer arttırma algoritmalarının yanında XGBoost algoritmasının işlem süresinin daha uzun sürdüğü görülmüştür. Hesaplamalarda 0.9773 değerini veren LightGBM algoritması eğitim süresi bakımından incelendiğinde 4.5 dakikalık bir süreyle Karar Ağaçları algoritmasının ardından en hızlı ikinci algoritma olarak tespit edilmiştir.

Abstract:
In recent years, securing IT resources has become a very important issue. Especially, the network structure providing internet access can be the target of attacks coming from many national and international locations and it may cause losses in the institutions using this network structure. Anomaly detection systems, also known as intrusion detection systems in many sources, aim to detect anomalies in such networks. However, the success of intrusion detection systems is limited by the algorithms and learning capacities that this software use in the background. In this thesis, the success rate of the boosting method, which is one of the community learning algorithms, in determining the harmful network traffic has been investigated. In this context, AdaBoost, CatBoost, Gradient Boosting, LightGBM and XGBoost algorithms are modeled on Google Colab and implemented on CICID2017 dataset. In addition, in the thesis, the Decision Trees method was used to compare the performance of boosting algorithms in detecting labeled network attacks in the CICIDS2017 dataset. The performances of the trained and tested classifiers were examined with performance evaluation criteria such as accuracy, precision, sensitivity, F1 value, Kappa value and ROC curve. Apart from these, the learning times of the algorithms were also used as another evaluation criterion. As a result of the study, it was determined that the best result in terms of F1 value was given by XGBoost algorithm with 99.89% and also AUC values were very close to 1.0 with 0.9989. However, it has been observed that the processing time of the XGBoost algorithm takes longer, in addition to other boosting algorithms with high performance. When the LightGBM algorithm, which gives the value of 0.9773 in the calculations, is examined in terms of training time, it was determined as the second fastest algorithm after the Decision Trees algorithm for a period of 4.5 minutes.