Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

This project showcases a Network Intrusion Detection System (NIDS) designed to bolster cybersecurity defenses against evolving threats

Notifications You must be signed in to change notification settings

imharshag/NIDS-using-ML

Open more actions menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

10 Commits
ย 
ย 

Repository files navigation

Network Intrusion Detection System using Machine Learning ๐Ÿ›ก๏ธ

Note ๐Ÿšจ: The source code for this project is available in the README file. The project was developed using Google Colab due to restrictions of the XGBoost classifier, which cannot be executed directly on a local system.

Overview

๐ŸŒ In today's interconnected world, cybersecurity threats pose significant challenges to individuals and organizations alike. A crucial aspect of defending against these threats is the ability to detect and respond to network intrusions effectively. A Network Intrusion Detection System (NIDS) plays a vital role in this regard by monitoring network traffic for suspicious activity and alerting administrators to potential security breaches.

๐Ÿ›ก๏ธ In this project, we focus on building a NIDS using the nSL KDD dataset, a widely used benchmark dataset in the field of intrusion detection research. The dataset comprises a vast amount of network traffic data captured from various network activities, including both normal and malicious behavior. With around 1.5 lakh instances and 23 labels representing different types of network attacks, the NSL KDD dataset presents a challenging yet realistic scenario for developing intrusion detection systems.

Preprocessing ๐Ÿ› ๏ธ

  • Label encoding and one-hot encoding for categorical data conversion.
  • Recursive Feature Elimination (RFE) for feature selection with Random Forest Classifier.

Implemented Classifiers ๐Ÿค–

  1. Random Forest
  2. K-Nearest Neighbors (KNN)
  3. Support Vector Machine (SVM)
  4. Principal Component Analysis (PCA)
  5. Ensemble Voting Classifier
  6. Gaussian Naive Bayes (NB)
  7. XGBoost

Implementation Details ๐Ÿ“

I have implemented each classifier using Python and relevant libraries such as scikit-learn, XGBoost, Matplotlib etc. The code is available in a Google Colab notebook due to the requirement of executing XGBoost, which cannot be done directly on a local system.

Related Documents and Reports ๐Ÿ“„

The project documentation provides a comprehensive overview of the methodologies employed, analyses conducted, and results obtained throughout the development of the Network Intrusion Detection System, offering valuable insights into the intricacies of network security and machine learning integration. Click here for Project Documentation

Source Code ๐Ÿ’ป

The source code for this project is available in the following Google Colab notebook: Link to Source code

Contact ๐Ÿ“ฌ

For any inquiries or feedback, please contact Harsha G

Contributions ๐Ÿค

Contributions to this project are welcome! You can contribute by:

  • Improving the efficiency of implemented classifiers.
  • Enhancing the preprocessing techniques.
  • Optimizing the feature selection process.
  • Providing insights and suggestions for further improvements.

License ๐Ÿ“œ

This project is licensed under the General Public License (GPL).

Releases

No releases published

Packages

No packages published
Morty Proxy This is a proxified and sanitized view of the page, visit original site.