Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
PacketPatch — Generación práctica de paquetes adversariales de caja negra contra la clasificación de tráfico cifrado con sobrecarga mínima y recuperabilidad total de paquetes. | Kitploit
Herramientas/GitHubGitHub/xuyw-seu/packetpatch
Sniffing y Análisis de PaquetesHerramientas de Cifrado/DescifradoSeguridad de RedesPrivacidadAprendizaje AutomáticoPapers e InvestigaciónAprendizaje y EducaciónSeguridad de IAAtaque Adversario
GitHubxuyw-seu/packetpatch

PacketPatch

Generación práctica de paquetes adversariales de caja negra contra la clasificación de tráfico cifrado con sobrecarga mínima y recuperabilidad total de paquetes.

7136hace 4 mesesAún no revisado
Ver Repositorio

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

PacketPatch: Generación y despliegue prácticos de paquetes adversariales para la clasificación de tráfico cifrado basada en características de bytes

Artículo: PacketPatch: Practical Generation and Deployment of Adversarial Packets for Byte-Feature-Based Encrypted Traffic Classification Autores: Yuwei Xu, Yuanyuan Xu, Yunpeng Bai, Jiahui Chen, Kehui Song, Jie Cao, Qiao Xiang, Guang Cheng Afiliación: Southeast University, Purple Mountain Laboratories, Tiangong University, Queen's University, Xiamen University Estado: Aceptado/En revisión (Elsevier)

Visión general

PacketPatch es un esquema práctico para generar paquetes de red adversariales contra modelos de clasificación de tráfico cifrado basada en características de bytes (B-ETC), con el objetivo de proteger la privacidad del usuario. A diferencia de los métodos existentes que dependen de suposiciones poco realistas de caja blanca o introducen una sobrecarga excesiva, PacketPatch opera bajo condiciones estrictas de caja negra manteniendo un rendimiento en tiempo real y la usabilidad de los paquetes.

Características principales

  • Operación en caja negra: no requiere acceso a los gradientes, parámetros ni datos de entrenamiento del modelo objetivo
  • Independiente del usuario: la generación de perturbaciones se basa únicamente en las características actuales del paquete, sin historial de comportamiento del usuario
  • Eficiencia en tiempo real: generación con una sola pasada hacia adelante, latencia media de ~10 ms por paquete
  • Sobrecarga de ancho de banda controlable: longitud de la perturbación ≤ 10% del tamaño del paquete original
  • Validez y recuperabilidad de los paquetes: la arquitectura de proxy simétrica garantiza que los paquetes superen las comprobaciones de integridad y puedan restaurarse perfectamente en el receptor

Arquitectura

Arquitectura

Flujo de trabajo de PatchGenerator

  1. Preparación de entrada: separa la cabecera del paquete de la carga útil; prepara tokens [MASK] (longitud = 10% del tamaño del paquete)
  2. Construcción de secuencia: ensambla [CLS] + cabecera + Pad1 + [SEP] + random_header(hr) + Pad2 + carga útil
  3. Generación de perturbación: una sola pasada hacia adelante de BERT → distribuciones de probabilidad sobre el vocabulario
    • Pad1 → arg min (maximiza la disrupción de las características originales)
    • Pad2 → arg max (genera características alineadas con la cabecera aleatoria)
  4. Ensamblaje del vector: perturbación final v = Pad1 + hr + Pad2

Estructura del repositorio

PacketPatch/
├── README.md                          # Project overview (this file)
├── LICENSE                            # MIT License
├── requirements.txt                   # Python dependencies
├── bert_base_config.json              # BERT model configuration (12 layers, 768-dim, 12 heads)
│
├── packet_adv/                        # ★ Core experimental code
│   ├── README.md                      # Usage guide for core modules
│   ├── adv_fine_tuning_cls.py         # Step 1: Train PatchGenerator (SpanBERT)
│   ├── generate.py                    # Step 2: Generate adversarial packets
│   └── gen_onnx.py                    # Step 3 (optional): ONNX/TensorRT acceleration
│
├── uer/                               # UER (Universal Encoder Representations) framework
│   ├── README.md                      # Framework documentation
│   ├── encoders/                      # Encoder implementations (Transformer, RNN, CNN)
│   ├── layers/                        # Network layers (Embedding, Attention, FFN)
│   ├── targets/                       # Training targets (MLM, NSP, Span-MBM, etc.)
│   ├── models/                        # Model definition
│   ├── utils/                         # Utilities (tokenizers, optimizers, data loading)
│   ├── model_builder.py               # Model construction
│   ├── model_loader.py                # Pretrained weight loading
│   ├── model_saver.py                 # Model checkpoint saving
│   ├── trainer.py                     # Training loop implementation
│   └── opts.py                        # CLI argument definitions
│
├── dataset/                           # Dataset documentation
│   └── README.md                      # Dataset descriptions, download links, preprocessing
│
├── image/                             # Architecture and result figures
│   └── README.md                      # Figure descriptions
│
└── tools/                             # Utility tools
    └── README.md                      # Tool descriptions and usage

Inicio rápido

1. Configuración del entorno

# Clone this repository
git clone https://github.com/your-org/PacketPatch.git
cd PacketPatch

# Install dependencies
pip install -r requirements.txt

Requisitos:

  • Python 3.7+
  • GPU NVIDIA con ≥6GB de VRAM (recomendado: RTX 3080 o superior)
  • 32GB+ de memoria del sistema

2. Preparar el modelo preentrenado y los conjuntos de datos

PacketPatch está construido sobre ET-BERT. Descarga lo siguiente del repositorio de ET-BERT:

  • pretrained_model.bin — pesos preentrenados de ET-BERT
  • encryptd_vocab.txt — archivo de vocabulario para la codificación por pares de bytes

Conjuntos de datos: Evaluamos con tres conjuntos de datos públicos. Consulta dataset/README.md para los enlaces de descarga y las instrucciones de preprocesamiento.

Conjunto de datosClasesEscenario
ISCX-TOR16Tráfico anónimo de Tor
ISCX-VPN11Túneles VPN cifrados
USTC20Tráfico de malware y benigno

3. Entrenar PatchGenerator

cd packet_adv

# Edit adv_fine_tuning_cls.py first:
#   - Update dataset paths (lines 47-50)
#   - Update pretrained model path (lines 73-75)
#   - Set correct num_classes (line 56)
#   - Set correct training set size (line 878)

python adv_fine_tuning_cls.py

El checkpoint entrenado se guardará en el directorio de registro especificado (p. ej., span_2seg_cls_log/).

4. Generar paquetes adversariales

cd packet_adv

# Edit generate.py first:
#   - Update test data paths (lines 42-44)
#   - Update --load_model_path to your trained checkpoint (line 68-69)
#   - Set BWO (bandwidth overhead ratio, line 60, default 0.1)
#   - Choose generation strategy via 'fun' parameter (line 50)

python generate.py

5. (Opcional) Aceleración del modelo con TensorRT

cd packet_adv

# Edit gen_onnx.py first:
#   - Update model checkpoint path (line 132)
#   - Update output paths (lines 145, 207)
#   - Select precision mode: 'fp16' or 'int8' (line 21)

python gen_onnx.py

Parámetros de configuración clave

Descargar herramienta