Makine öğrenmesi yöntemiyle ağ ataklarının tespiti
Detection of network attacks with machine learning method
Yazar: FEYZAN SARUHAN ÖZDAĞ
Danışman: YRD. DOÇ. DR. DERYA YILTAŞ KAPLAN
İstanbul Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı / Bilgisayar Mühendisliği Bilim Dalı
Derece: Yüksek Lisans, 2017
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control

Özet:
Saldırı Tespit Sistemleri (STS), sürekli gelişen ağ yapıları içerisinde ağ güvenliğini tehdit eden unsurlara karşı kullanılan önemli araçlardan biridir. Gelişen teknolojiyle birlikte güçlü STS'lerin tasarlanması ve bunların ağ sistemleri içerisine entegre edilmesi gereklilik haline gelmiştir. Makine öğrenmesi, bilgisayarlara öğrenme olanağı sağlayan bir yapay zeka türüdür. Analitik model oluşturma işlemi otomatikleştirilerek yeni veri girişleri sonrasında sistemin karar vermesini sağlayacak bilgisayar programlarının geliştirilmesi hedeflenmektedir. Model oluşturma sürecinde, veri aracılığıyla problemi öğrenen algoritmalar kullanılır. Makine öğrenmesi algoritmaları çoğunlukla denetimli öğrenme ve denetimsiz öğrenme olarak ikiye ayrılmaktadır. Denetimli öğrenme algoritmaları, geçmişte öğrendiklerini yeni verilere uygulayarak, denetimsiz öğrenme algoritmaları ise veri kümelerinden çıkarımlar yaparak öğrenme işlemini gerçekleştirmektedir.

Makine öğrenmesi algoritmalarının performanslarının arttırılması için çeşitli yöntemler kullanılmaktadır. Veri kümesi içerisindeki özelliklerin ilişkilerini bularak, ilişkili olmayan verileri analiz dışında bırakmak hem zaman hem de sonuçların doğruluğu açısından olumlu etkiler yaratmaktadır. Bu çalışma kapsamında özellik seçim yöntemi olarak bilgi kazanımı ve özellik çıkarım yöntemi olarak da temel bileşen analizi kullanılarak doğruluk oranları üzerindeki etkileri gözlemlenmiştir.

Saldırı tespiti için makine öğrenmesi algoritmalarından Yapay Bağışıklık Sistemi (YBS) kullanılmıştır. YBS, insan bağışıklık sisteminden esinlenerek oluşturulmuş ve saldırı tespiti için oldukça etkili çalışan bir algoritmadır. YBS'nin öğrenme sürecinde efektifliğini arttırmak için geleneksel detektör üretim tekniklerine ek olarak genetik algoritma kullanılarak hibrid bir çözüm geliştirilmiştir.

YBS ile geliştirilmiş modelin, eğitim ve test aşamalarında KDD Cup 99 veri seti kullanılmıştır. STS'lerle ilgili yapılan çalışmaların çok büyük bir kısmında bu veri kümesi kullanılmaktadır. Çalışma kapsamında geliştirilen sistemin test sonuçlarının yanısıra WEKA aracılığıyla makine öğrenmesi algoritmalarından birkaçı kullanılarak elde edilmiş sonuçlar da paylaşılmıştır. Sonuç olarak temel bileşen sayısının YBS üzerindeki etkileri ve diğer algoritmalardan daha iyi çalıştığı gözlemlenmiştir.

Abstract:
Intrusion detection systems are one of the most important tools used against the threats to network security in ever-evolving network structures. Along with evolving technology, it has become a necessity to design powerful intrusion detection systems and integrate them into network systems. Machine learning is a type of artificial intelligence that enables computers to learn. It is aimed to develop the computer programs that will enable the system to decide after the new data entry by automating the analytical model building process. In the modeling process, algorithms that learn the problem through data are used. Machine learning algorithms are mostly divided into supervised and unsupervised learning. Supervised algorithms perform learning process by applying what they learned in the past to new data and unsupervised algorithms by making inferences from datasets.

Different methods are used to improve the performance of machine learning algorithms. Finding relationships among features in the dataset and excluding non-related data from analysis creates positive effects both in terms of time and accuracy of results. Within the scope of this study, effects on accuracy rates were observed by using information gain as feature selection method and principal component analysis as feature extraction method.

Artificial Immune System was used as machine learning algorithm for intrusion detection. The artificial immune system is an algorithm that is inspired by the human immune system and works very efficiently for intrusion detection. In order to increase the effectiveness of the artificial immune system learning process, a hybrid solution has been developed using genetic algorithm in addition to traditional detector production techniques.

KDD CUP'99 dataset was used in the training and test phases of the model developed with artificial immune system. Most of the studies on intrusion detection systems use this dataset. In addition to the test results of the system developed in the study, the results obtained by using a few of the machine learning algorithms via WEKA are also shared. As a result, it has been observed that the effect of principal components numbers on the artificial immune system algorithm and the artificial immune system algorithm works better than the other algorithms.