This repository contains the complete implementation of our paper "AdvBiTrans", a robust and accurate deep learning framework for botnet detection in Industrial Internet of Things (IIoT) environments.
AdvBiTrans_experiment/ β βββ CIC-DDoS2019/ β βββ 1.Data_Preprocessing.ipynb β βββ 2.Feature_Selection_PCCS.ipynb β βββ 3.Mult_Model_xx.ipynb β βββ Picture/ β βββ N-BaIoT/ β βββ 1.Data_Resaving.ipynb β βββ 2.Data_Preprocessing.ipynb β βββ 3.Feature_Selection_PCCS.ipynb β βββ 4.Mult_Model_xx.ipynb β βββ Picture/ β βββ requirements.txt βββ README.md
The project includes:
- π Data preprocessing for CIC-DDoS2019 and N-BaIoT datasets
- π§ͺ Feature selection using Pearson Correlation Coefficient Strategy (PCCS)
- π€ Model training and evaluation for AdvBiTrans, 1D-CNN, MLP, LightGBM, TabNet, and XGBoost
- π Adversarial training using PGD (Projected Gradient Descent)
- π Performance metrics including Accuracy, F1, Inference Time, Memory Usage, FLOPs Note: Mult_Model_xx is named according to the number of features to train the model, the model and parameters are consistent.
Run the following to install the required Python packages:
pip install -r requirements.txt
## π Datasets
The foundational datasets utilized in this paper are publicly accessible. The N-BaIoT dataset can be obtained from the official repository at
http://archive.ics.uci.edu/ml/datasets/detection_of_IoT_botnet_attacks_N_BaIoT.
The CIC-DDoS2019 dataset is available at https://www.unb.ca/cic/datasets/ddos-2019.html.
## π§ͺ Run Experiment
You can open and execute each .ipynb notebook in order using Jupyter Notebook or VSCode with Python extension.