There is a newer version of the record available.

Published June 5, 2025 | Version v2
Software Open

USENIX Security'25 CertTA

  • 1. ROR icon Tsinghua University
  • 2. ROR icon Shanghai Jiao Tong University
  • 3. ROR icon National University of Defense Technology

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:
  1. Ensure that you have conda installed on your system. If you do not have conda, you can install it as part of the Anaconda distribution or Miniconda.
  2. Open a terminal or command prompt.
  3. Create a new conda environment with the name of your choice (e.g., CertTA) and intall all the required packages listed in environment.ymlconda create -n CertTA -f environment.yml
  4. 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_public directory) 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.
 
@inproceedings{yan2025certta, title={{CertTA: Certified Robustness Made Practical for Learning-Based Traffic Analysis}}, author={Yan, Jinzhu and Liu, Zhuotao and Yuyang Xie and Shiyu Liang and Lin Liu and Ke Xu}, booktitle={34th USENIX Security Symposium}, year={2025}}
 
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