Skip to content

Latest commit

 

History

History
63 lines (42 loc) · 2.6 KB

README.md

File metadata and controls

63 lines (42 loc) · 2.6 KB

Correlation-aware Ubiquitous Detection of DDoS in IoT Systems

This repository presents the source code for the paper Demo Abstract- CUDDoS: Correlation-aware Ubiquitous Detection of DDoS in IoT Systems.

Instruction for running the code

Executing the code requires sudo access on both the Client Node and the Control Server. After cloning the repository, navigate to the respective directory and install the necessary libraries to run the code.

cd ./MiniTest
sudo pip3 install -r requirements.txt

If you fail to install scapy or pcapy, please run the following command.

sudo ./install_lib.sh

It should be noted that the Tensorflow and shap are required but are not included in the requirements.txt, and it is necessary to run the inference script on the Client nodes. The version information is shown below:

virtualenv==20.24.2
shap==0.42.1
tensorflow==2.13.0

Real time traffic generation

On the client IoT node, execute the following command prior to initiating the Control Server.

sudo ./main_client.py

Once the client IoT node is operational, proceed to execute the corresponding command on the Control Server side.

sudo ./main.py

DDoS detection

To detect botnet with our LSTM/MM-WC model, please use the following command to run the inference.py:

source tftest/bin/activate
cd ./MiniTest
./inference.py

Before executing the script, ensure that the requisite model is located in the folder /Source Code/MiniTest/model. By default, model 138 is employed. Should you wish to utilize alternative models, execute the following command:

./inference.py --model {}

Please make sure that the tensorflow environment is correctly installed and activated before running the inference script.

Training neural network and generate performance results

The LSTM/MM-WC model extends from our previous work, Correlation Aware DDoS Detection In IoT Systems, The codebase for model training is publicly available in the repository here. A pre-print version of the original paper can be accessed here .

The code necessary for training the LSTM/MM-WC model is located in the folder /Source Code/MiniTest/inference/source_code. For further details on model training, please consult the repository documentation in our prior work.