Project Description: Utilizing CICDDOS-2019 Dataset for Deep Learning Model Training and Real-world Application with CICFlowMeter-V3 (IE105-FinalProject)
This project, a course project at the University of Information Technology - VNUHCM, aims to develop a deep learning-based system to detect Distributed Denial of Service (DDoS) attacks using the CICDDOS-2019 dataset. The project involves training an Artificial Neural Network (ANN) model and deploying it for real-time DDoS detection using CICFlowMeter-V3.
The CICDDOS-2019 dataset, created by the Canadian Institute for Cybersecurity, contains comprehensive records of network traffic, including both benign and DDoS attack traffic. It features a variety of attack types, such as UDP Flood, TCP SYN Flood, and ICMP Flood, providing a rich set of data for training and evaluation.
- Deep Learning Framework: TensorFlow/Keras
- Data Processing: Pandas, NumPy
- Visualization: Matplotlib, Seaborn
- Real-time Flow Analysis: CICFlowMeter-V3
- Load the CICDDOS-2019 dataset.
- Clean the data by handling missing values and converting categorical values to numerical.
- Normalize the feature values to ensure efficient model training.
- Split the data into training and testing sets.
- Select relevant features that contribute most to distinguishing between benign and malicious traffic.
- Use domain knowledge and statistical methods to enhance feature selection.
- Define the architecture of the ANN model using Keras. The model consists of:
- An input layer corresponding to the number of features.
- Two hidden layers with ReLU activation functions.
- A dropout layer to prevent overfitting.
- An output layer with a sigmoid activation function for binary classification (benign or DDoS).
- Compile the model with the Adam optimizer and binary cross-entropy loss function.
- Train the model on the training data and validate it using the testing data.
- Assess the model's performance using metrics such as accuracy, precision, recall, and F1-score.
- Plot the training and validation loss/accuracy to visualize the model's learning process and identify potential overfitting or underfitting issues.
- Integrate the trained model with CICFlowMeter-V3 to enable real-time flow analysis and DDoS detection.
- CICFlowMeter-V3 captures live network traffic and extracts features similar to those in the CICDDOS-2019 dataset.
- The extracted features are fed into the ANN model to predict whether the traffic is benign or malicious.
- Implement a notification or mitigation system to alert administrators or take automatic action in case of a detected DDoS attack.
- Deploy the system in a real-world network environment to monitor traffic continuously.
- Evaluate the system's performance in detecting live DDoS attacks and reducing false positives/negatives.
- Continuously update the model with new data to improve its robustness and adaptability to evolving attack patterns.
This project demonstrates a comprehensive approach to developing a deep learning-based DDoS detection system using the CICDDOS-2019 dataset. By integrating the trained ANN model with CICFlowMeter-V3, the system can provide real-time protection against DDoS attacks, ensuring the security and availability of network resources in a real-world environment.