Published on

Machine Learning for the Detection of Network Attacks

Authors

For my undergraduate dissertation (supervised by Ildiko Pete), I researched Machine Learning methods to detect Network Attacks. I investigated both supervised and unsupervised models on the CICIDS2017 dataset. I then selected the best performing model (Random Forest) to implement into my own Intrusion Detection System built using Python. I then performed final testing by simulating network attacks myself using tools available in Kali Linux. The detection occurred in real-time and also included several attacks that had not been seen in the training phase to test the model's generalisation.

I used the CICIDS2017 dataset to apply machine learning-based techniques to be able to detect network attacks and work towards a final model by evaluating several different algorithms. The aim was to then implement an intrusion detection system, to sniff traffic and in real- time classify whether or not the traffic is benign or adverse.

Using a random forest classifier I achieved 99.91% accuracy and a 97.59% F1 Score.

View it on GitHub here