Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
LUCX_network_traffic_parser — Un framework pour l'analyse du trafic réseau et l'extraction de caractéristiques. | Kitploit
Outils/GitHubGitHub/doriguzzi/lucx_network_traffic_parser
Sniffing et Analyse de PaquetsCriminalistique RéseauSécurité RéseauApprentissage AutomatiqueDétection d'IntrusionArticles et RechercheDétection d'AnomaliesAnalyse de Journaux
GitHubdoriguzzi/lucx_network_traffic_parser

LUCX_network_traffic_parser

Un framework pour l'analyse du trafic réseau et l'extraction de caractéristiques.

4115il y a 1 moisPas encore vérifié
Voir le dépôt

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

LUCX : parseur de trafic réseau LUCID étendu

LUCX (LUCID network traffic parser eXtended) est un parseur de trafic réseau qui fonctionne à la fois avec des traces de trafic préenregistrées au format pcap et avec du trafic réseau capturé en direct depuis une interface réseau. LUCX est une version étendue du parseur du jeu de données LUCID (https://github.com/doriguzzi/lucid-ddos). Comme la version originale, LUCX produit des observations de trafic cohérentes avec celles collectées dans les systèmes en ligne existants, où les algorithmes de détection doivent gérer des segments de flux de trafic collectés sur des fenêtres temporelles prédéfinies. De plus, LUCX extrait davantage de caractéristiques (par exemple, des caractéristiques spécifiques à TLS) dans deux formats différents : au niveau des paquets et statistique, décrits ci-dessous dans ce README.

Les opérations de prétraitement du trafic sont divisées en deux étapes distinctes : la première extrait les caractéristiques des paquets et les organise en flux et en fenêtres temporelles, la seconde effectue la normalisation des caractéristiques, le remplissage (ou l'aplatissement, selon le format de sortie souhaité) et enregistre les ensembles d'entraînement, de validation et de test au format hdf5.

Le système de détection d'intrusion réseau (NIDS) d'exemple, fourni dans ce dépôt sous forme de notebook Jupyter, peut être utilisé pour entraîner et évaluer des modèles d'apprentissage profond (plus précisément un perceptron multicouche (MLP) ou un réseau de neurones convolutif (CNN)) en utilisant les représentations de trafic réseau au niveau des paquets et statistiques générées par LUCX.

Installation

LUCX est implémenté en Python v3.X, Numpy et Pyshark. LUCX nécessite l'installation d'un certain nombre d'outils et de bibliothèques Python. Cela peut être réalisé en utilisant l'environnement logiciel conda (https://docs.conda.io/projects/conda/en/latest/). Nous suggérons l'installation de miniconda, une version légère de conda. miniconda est disponible pour MS Windows, MacOSX et Linux et peut être installé en suivant les directives disponibles à l'adresse https://docs.conda.io/en/latest/miniconda.html#. MS Windows 10 version 2004 et supérieure (Build 19041 et supérieure) ou Windows 11 sont requis. Sous MS Windows, installez d'abord le sous-système Windows pour Linux depuis la ligne de commande : wsl.exe —install (voir ici pour plus d'informations). Cette commande installera un système d'exploitation Ubuntu Linux sur votre ordinateur. Vous pouvez accéder à la ligne de commande Linux en exécutant l'application WSL depuis le menu Windows, puis suivez les directives pour le système d'exploitation Linux ci-dessous.

Ouvrez un terminal, exécutez l'une des commandes suivantes (selon votre système d'exploitation) et suivez les instructions à l'écran :

bash Miniconda3-latest-Linux-x86_64.sh (on Linux operating systems)
bash Miniconda3-latest-MacOSX-x86_64.sh (on macOS)

Créez ensuite un nouvel environnement conda (nommé python313) basé sur Python 3.13.5 :

conda create -n python313 python=3.13.5

Activez le nouvel environnement python313 :

conda activate python313

Et configurez l'environnement avec l'installation de quelques paquets supplémentaires :

(python39)$ pip install scikit-learn h5py pyshark matplotlib graphviz pandas scikeras pydot seaborn

Pyshark est utilisé pour le prétraitement des données. Ce n'est qu'un wrapper Python pour tshark, ce qui signifie que tshark doit également être installé. Sur un OS basé sur Ubuntu, utilisez la commande suivante :

sudo apt install tshark

Sous macOS, il suffit de télécharger Wireshark depuis ici et de l'installer.

Veuillez noter que le code actuel du parseur fonctionne avec wireshark/tshark version 4.4.9 ou supérieure.

Représentations des caractéristiques du trafic

LUCX considère les flux de trafic réseau bidirectionnels, définis comme des groupes de paquets qui partagent le même identifiant 5‑tuple ou son 5‑tuple transposé. Le 5‑tuple est un moyen courant de caractériser de manière unique un flux de communication dans les réseaux IP, et il se compose de :

  • Adresse IP source
  • Adresse IP de destination
  • Numéro de port source
  • Numéro de port de destination
  • Protocole de transport (par exemple, TCP, UDP)

Lorsque des paquets ont des valeurs identiques pour ces cinq champs, ils sont considérés comme faisant partie du même flux. Le concept de 5‑tuple transposé tient compte de la communication bidirectionnelle : si les adresses/ports source et destination sont inversés mais que le protocole reste le même, les paquets sont toujours considérés comme faisant partie du même flux. Cela garantit que les deux directions d'une conversation (client → serveur et serveur → client) sont regroupées.

Exemple : Supposons qu'un client à l'adresse IP 192.168.1.10 envoie une requête TCP à un serveur web à l'adresse IP 203.0.113.5 sur le port 80. Le client utilise le port source 54321.

  • Direction aller (client → serveur) :
    • IP source : 192.168.1.10
    • IP de destination : 203.0.113.5
    • Port source : 54321
    • Port de destination : 80
    • Protocole : TCP
  • Direction inverse (serveur → client) :
    • IP source : 203.0.113.5
    • IP de destination : 192.168.1.10
    • Port source : 80
    • Port de destination : 54321
    • Protocole : TCP

Les deux ensembles de paquets appartiennent au même flux de trafic car la direction inverse correspond au 5‑tuple transposé de la direction aller. De plus, LUCX divise chaque flux de trafic extrait des traces de trafic réseau d'un jeu de données (ou du trafic réseau entrant) en sous‑flux basés sur des fenêtres temporelles. Cette segmentation simule des scénarios réels dans lesquels le trafic est collecté dans des fenêtres temporelles statiques ou dynamiques, puis transmis à un classificateur pour analyse. Ce faisant, le système reproduit les pratiques opérationnelles des systèmes de détection d'intrusion (IDS), qui s'appuient souvent sur une agrégation de paquets limitée dans le temps pour identifier des comportements à court terme et détecter des attaques.

Une fois les paquets regroupés en flux et les flux divisés en sous‑flux, LUCX convertit les sous‑flux en échantillons pouvant être utilisés pour entraîner, valider et tester des classificateurs basés sur le ML. Deux formats de sortie sont possibles : des tableaux (comme dans LUCID) ou des vecteurs. Le premier format préserve les caractéristiques extraites directement des paquets, tandis que le second produit des représentations statistiques des caractéristiques au niveau des paquets. Ces deux modes opérationnels sont respectivement appelés caractéristiques au niveau des paquets et caractéristiques statistiques.

Télécharger l’outil