Published June 5, 2025
| Version v2
Software
Open
USENIX Security'25 CertTA
Authors/Creators
Description
This repository contains the artifacts of paper CertTA: Certified Robustness Made Practical for Learning-Based Traffic Analysis, which has been accepeted by USENIX Security 2025.
A Github repository is hosted synchronously at https://github.com/InspiringGroup-Lab/CertTA to facilitate the use of these artifacts.
Repository Overview
Our artifact includes the following directories:
dataset/contains the CICDOH20 and TIISSRC23 datasets, including the processed json files and original PCAP files of flow samples.model/contains the implementations of six supervised traffic analysis systems (i.e., kFP, Kitsune (supervised), Whisper (supervised), DFNet, YaTC and TrafficFormer) and three unsupervised anomaly detection systems (i.e., KMeans, Kitsune, Whisper).certification/contains the implementations of CertTA's multi-modal smoothing mechanism and the functions for solving CertTA's robustness region against multi-modal adversarial perturbations.attack/contains the implementations of three multi-modal adversarial attacks (i.e., Blanket, Amoeba, Prism).BARS/contains the implementations of a baseline certification method BARS.evaluation/contains the source codes for training and evaluating certified traffic analysis models. Our framework supports both CertTA and baseline certification methods (i.e., VRS, BARS and RS-Del) for building certified traffic analysis models.integration/contains the source codes for building and evaluating the integrated system of anomaly detectors and certified traffic analysis models.
Environment Setup
To ensure the proper functioning of our artifacts, please follow the commands below:
- Ensure that you have
condainstalled on your system. If you do not haveconda, you can install it as part of the Anaconda distribution or Miniconda. - Open a terminal or command prompt.
- Create a new conda environment with the name of your choice (e.g.,
CertTA) and intall all the required packages listed inenvironment.yml:conda create -n CertTA -f environment.yml - Once the environment is created, activate it by running:
conda activate CertTA. This will switch your command line environment to use the newly created conda environment with all the necessary packages.
This implementation has been successfully tested in Ubuntu 20.04 server with Python 3.8.18.
Step-by-Step Instructions
- In
evaluation/README.md, we privide step-by-step instructions of implementing the original traffic analysis models and the certified traffic anlaysis models with different certification methods. - In
integration/README.md,we privide step-by-step instructions of implementing the integrated system of anomaly detectors and certified traffic analysis models. - In
attack/README.md, we privide step-by-step instructions of generating adversarial flows based on different attack methods.
Unless otherwise specified, the codes should be run in the root directory of this repository (i.e., the
CertTA_publicdirectory) to properly import dependency files.Please post an issue in our Github repository or send an email to yanjz22@mails.tsinghua.edu.cn if you have any questions.
Have fun!
Credit
Cite our paper as follows if you find this code repository is useful to you.
The implementations of traffic analysis models (kFP, Kitsune, Whisper, DFNet, YaTC, TrafficFormer), baseline certification methods (VRS, BARS, RS-Del) and adversarial attacks (Blanket, Amoeba, Prism) are based on their open-source repositories. The original PCAP files of the CICDOH20 and TIISSRC23 datasets are obtained from their open-source websites. Many thanks to the authors.
Files
CertTA_public.zip
Files
(1.8 GB)
| Name | Size | Download all |
|---|---|---|
|
md5:de2a5a40391ceca9abb0c41485ef808b
|
1.8 GB | Preview Download |
Additional details
Software
- Repository URL
- https://github.com/InspiringGroup-Lab/CertTA
- Programming language
- Python
- Development Status
- Active