Skip to content

Machine Learning Based Botnet Detection is a tool to classify network traffic as being botnet affected or not based on the network traffic flows. It involves various classifiers including Neural Networks, Decision Tree, SVM, Naive Bayes, Logistic Regression, k-Nearest Neighbours.

Notifications You must be signed in to change notification settings

ixiaozhuai/Machine-Learning-Based-Botnet-Detection

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Machine-Learning-Based-Botnet-Detection

Machine Learning Based Botnet Detection is a tool to classify network traffic as being botnet intruded or not based on the network traffic flows. It involves various machine learning classifiers including Neural Networks, Decision Tree, Naive Bayes, Logistic Regression, k-Nearest Neighbours.

Objective

This project implements a novel method to detect botnet based network intrusion using various Machine Learning based classifiers. Unlike traditional methods based on packet analysis which are inaccurate and time-consuming, this method is robust and highly accurate. This project involves the following machine learning classifiers:

  1. Neural Networks
  2. Decision Tree
  3. Logistic Regression
  4. SVM
  5. Gaussian Naive Bayes
  6. K Nearest Neighbours.

I am also currently working on a paper reflecting my works on this project. I would soon publish it here.

Dataset Used

This project uses the CTU-13 dataset which involves 13 scenarios of lablled network traffic data with normal and botnet traffic. This project uses the scenario 1 to train and test the various models.

Dependencies

This project requires set of the following python modules:

  1. scipy
  2. numpy
  3. theano
  4. scikit-learn
  5. keras

Testing the Model

To test the model, run the script.py file in the Machine-Learning-Based-Botnet-Detection/src using the following commands

cd src
python gui_develop.py

Credits

I am thankful to Infosys for providing me the opportunity to excel in this internship based project through the InStep Global Internship Program. I would also like to thank my mentor Vijayaraghavan Varadharajan for providing helpful insights into this project.

About

Machine Learning Based Botnet Detection is a tool to classify network traffic as being botnet affected or not based on the network traffic flows. It involves various classifiers including Neural Networks, Decision Tree, SVM, Naive Bayes, Logistic Regression, k-Nearest Neighbours.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%