Apollon_MAB_IDS is an advanced Intrusion Detection System (IDS) designed to defend against adversarial machine learning (AML) attacks. The system leverages a Multi-Armed Bandit (MAB) approach with Thompson Sampling to dynamically select the optimal classifier for each input, thereby enhancing the resilience of the IDS in adversarial environments.
This research-grade system is developed and evaluated on real-world intrusion detection datasets, incorporating both standard and adversarially generated traffic data.
- Adversarial Robustness: Mitigates adversarial attacks by diversifying classifier selection using the MAB framework.
- Multi-Classifier Strategy: Includes a set of ML classifiers, increasing unpredictability and reducing vulnerability.
- Multi-Dataset Evaluation: Validated on CIC-IDS-2017, CSE-CIC-IDS-2018, and CIC-DDoS-2019 datasets.
- Adversarial Data Integration: Supports generation of adversarial traffic data using RelevaGAN and ADVGAN.
git clone https://github.com/doanmanhducz/Apollon_MAB_IDS.git
cd Apollon_MAB_IDS#(Optional but recommended) Create a virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activateTo train and evaluate the IDS using Multi-Armed Bandit (Thompson Sampling):
Open and run: Apollon_MAB_Detection.ipynbThis notebook performs:
- Dataset preprocessing
- Classifier training
- MAB-based model selection
- Performance evaluation (including under adversarial conditions)
The repository includes two methods for generating adversarial network traffic using GANs.
- Clone the official RelevaGAN repository:
git clone https://github.com/rhr407/relevagan.git- Copy the contents from:
fixing_version/RelevanGAN/- Open and run:
RelevaGAN.ipynbThis notebook will generate adversarial network traffic using the integrated RelevaGAN model.
- Clone the official ADVGAN repository:
git clone https://github.com/dongtsi/TrafficManipulator.git- Copy the contents from:
fixing_version/ADVGAN_Trafficmanipulator/- Open and run:
advgan-trafficmanipulator-ml4secids.ipynbThis notebook will generate adversarial traffic samples using the adjusted ADVGAN framework.