Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
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é.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
WPAxFuzz — Un fuzzer Wi-Fi open-source complet | Kitploit
Outils/GitHubGitHub/efchatz/wpaxfuzz
Audit Wi-FiAnalyse des VulnérabilitésExploitationFuzzingSécurité Sans Fil
GitHubefchatz/wpaxfuzz

WPAxFuzz

Un fuzzer Wi-Fi open-source complet

Voir le dépôt
21023il y a 2 moisVérifié par Kitploit

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

Contributors Stargazers Forks Issues MIT License


Logo

Un fuzzer Wi-Fi complet


Signaler un bug · Demander une fonctionnalité

Table des matières
  1. À propos du projet
  2. Fuzzing des trames de gestion, de contrôle et de données
    • Prérequis et dépendances
    • Description
  3. Fuzzing de l'échange SAE
  4. Module d'attaque DoS
    • Description
  5. Vulnérabilités
  6. Travaux connexes
  7. Licence
  8. Contact
  9. Remerciements

À propos du projet

Cet outil est capable de fuzzer soit toute trame de gestion, de contrôle ou de données du protocole 802.11, soit l'échange SAE. Pour les trames de gestion, de contrôle ou de données, vous pouvez choisir le mode « standard », où toutes les trames transmises ont des valeurs de taille valides, ou le mode « aléatoire », où la valeur de taille est aléatoire. L'opération de fuzzing SAE nécessite un point d'accès (AP) supportant WPA3. Le fuzzing des trames de gestion, de contrôle ou de données peut être exécuté contre n'importe quel AP (WPA2 ou WPA3). Enfin, un vecteur d'attaque DoS est implémenté, exploitant les résultats du fuzzing des trames de gestion, de contrôle ou de données. Globalement, WPAxFuzz offre les options suivantes :

root@kitploit:~
    1) Fuzz Management Frames
    2) Fuzz SAE exchange
    3) Fuzz Control Frames
    4) Fuzz Data Frames (BETA)
    5) DoS attack module

Vous pouvez exécuter l'outil avec la commande ci-dessous :

root@kitploit:~
    sudo python3 fuzz.py

Fuzzing des trames de gestion, de contrôle et de données

Prérequis et dépendances

  1. Assurez-vous d'avoir préinstallé les éléments ci-dessous. D'autres versions de Scapy et Python devraient également fonctionner.

    Python Scapy Nmap Blab

    De plus, aircrack-ng doit être installé sur votre système.

  2. Avant d'initialiser l'outil, l'utilisateur doit sonder le réseau local pour découvrir les cibles potentielles, c'est-à-dire les STAs et APs.

root@kitploit:~
    nmap -sP {ip_prefix}.*
  1. Si le test de fuzzing est exécuté sur une machine virtuelle (VM) et que la STA ciblée se trouve également sur la machine hôte, cela peut conduire à des conclusions erronées. Il est recommandé de placer la STA et l'opération de fuzzing sur des machines physiques différentes.
  2. Si la STA ciblée est une machine Windows, il peut être nécessaire de modifier le pare-feu pour autoriser le « ping » sur le réseau local. Cela permet au mode de surveillance de vérifier l'activité de la STA associée.
  3. La méthode find_LAN_prefix dans AlivenessCheck.py repose sur l'extraction de la première adresse IP renvoyée par hostname -I, ce qui peut conduire à une détection incorrecte du sous-réseau lorsque plusieurs interfaces réseau sont présentes, car l'IP de l'interface souhaitée peut ne pas être la première de la liste. Assurez-vous que l'adresse IP du sous-réseau souhaité est la première dans la sortie de hostname -I (un correctif est en cours).
  4. Concernant l'outil Blab (génération de graines), en raison d'incohérences entre systèmes d'exploitation, vous devez placer le binaire de Blab dans le répertoire principal du projet de fuzzer. Ainsi, le fuzzer sera compatible quel que soit le système d'exploitation hôte.
root@kitploit:~
    git clone https://haltp.org/git/blab.git
    cd blab/
    make
    cd {binary directory, where Blab is saved}                    ex. cd /bin/blab/bin
    cp blab {fuzzer directory}                                    ex. cp blab /home/kali/Desktop/WPAxFuzz

Description

ÉTAPE 1 : Mettez à jour le fichier de configuration (src/config.json) avec (i) les adresses MAC de l'AP ciblé et de la STA associée, (ii) le SSID de l'AP, et (iii) le nom de l'interface sans fil.
ÉTAPE 2 : Passez l'interface WNIC en mode moniteur :

root@kitploit:~
    sudo airmon-ng
    sudo airmon-ng check
    sudo airmon-ng check kill
    sudo airmon-ng start {NOM_DE_L_INTERFACE}

ÉTAPE 3 : Réglez le canal de votre WNIC sur celui de l'AP ciblé :

root@kitploit:~
    sudo airodump-ng {NOM_DE_L_INTERFACE} \\ pour trouver le canal sur lequel l'AP ciblé émet
    sudo iw {NOM_DE_L_INTERFACE} set channel {CANAL_AP} HT20 \\ pour régler le canal de votre WNIC

ÉTAPE 4 : Choisissez l'option (1), (3) ou (4), à savoir :

root@kitploit:~
    1) Fuzz management frames
    3) Fuzz Control Frames
    4) Fuzz Data Frames (BETA)

ÉTAPE 5 : Choisissez l'un des modes suivants :

root@kitploit:~
    Standard : Tous les champs de la trame, y compris ceux produits par « Blab »,  
    ont une longueur de valeur conforme à la norme 802.11. Ainsi, la trame ne risque pas  
    d'être considérée comme malformée et rejetée.  
    
    Aléatoire : Les champs produits par le générateur de graines ont une longueur de valeur aléatoire,  
    qui peut être inférieure ou supérieure à celle définie par la norme 802.11.  

ÉTAPE 7 : À partir de ce point, la seule interaction avec l'utilisateur a lieu en cas d'interruption de connexion ou de détection d'une trame de déauthentification/dissociation. Dans ce cas, il est demandé à l'utilisateur de reconnecter la STA et de reprendre le processus de fuzzing.
ÉTAPE 8 : Quittez le processus de fuzzing avec deux Ctrl+c consécutifs.

Fuzzing de l'échange SAE

Ce module se concentre sur les trames d'authentification dites SAE Commit et SAE Confirm, échangées lors du handshake SAE. Selon la norme 802.11, ces deux trames transportent l'algorithme d'authentification (3), la séquence d'authentification (1 pour Commit et 2 pour Confirm) et un code de statut, c'est-à-dire une valeur entre 0 et 65535, 0 signifiant « Réussi ». Notez que les valeurs de code de statut comprises entre 1 et 129 (sauf 4, 8, 9, 20, 21, 26, 29, 36, 48, 66, 69-71, 90-91, 116, 124 et 127) correspondent à différentes causes d'échec, tandis que les autres sont réservées par le protocole.

Plus en détail, le module actuel, sélectionné via l'interface en ligne de commande de WPAxFuzz, utilise optionnellement le mode d'envoi en rafale, c'est-à-dire qu'il envoie plusieurs trames (128) simultanément vers l'AP cible. Il comprend quatre cercles différents : (i) transmettre des trames SAE (d'authentification) sur le canal radio où opère la STA cible, (ii) transmettre des trames SAE sur un canal radio différent de celui de la/des STA cible(s), et (iii) l'un ou l'autre des précédents, mais avec le mode rafale activé. En outre, chaque cycle de fuzzing est exécuté sur sept variantes différentes basées sur l'approche sans état de la procédure d'authentification WPA3-SAE, comme suit :

  1. Une trame d'authentification SAE vide.
  2. Une trame SAE-Commit valide (bien formée) suivie de (1).
  3. Une trame SAE-Commit valide, suivie d'une trame SAE-Confirm dont le champ Send-Confirm est mis à 0. Rappelons que le champ Send-Confirm contient le compteur des trames Confirm déjà envoyées, agissant ainsi comme un compteur anti-rejeu.
  4. Comme (3), mais la valeur du champ Send-Confirm est mise à 2. Cette valeur spécifique (2) a été choisie : avec une valeur entre 2 et 65 534 pour ce champ, « l'AP déconnectait la STA cible après 20 secondes en moyenne ».
  5. Une trame SAE-Commit valide.
  6. Une trame SAE-Confirm valide avec le champ Send-Confirm égal à 0.
  7. Comme (6), mais la valeur du champ Send-Confirm est mise à 2.

Comme pour le module des trames de gestion, celui-ci utilise la même logique de surveillance et est divisé en deux types de procédures de fuzzing : Standard et Extensive. Par exemple, le champ de l'algorithme d'authentification est fuzzé en utilisant des valeurs spécifiques choisies, notamment 0, 1, 2 et 200, et non des valeurs aléatoires générées par Blab ou autre. En revanche, le mode Extensive se concentre sur le test exhaustif de chaque combinaison valide de champs SAE, c'est-à-dire chaque valeur possible dans la plage de 0 à 65535, ce qui le rend bien plus long que le mode Standard.

Module d'attaque DoS

Ce module lance une attaque DoS basée sur les données (fichiers journaux) collectées lors du processus de fuzzing. Il ne peut être exécuté que contre le même AP et la même STA utilisés pendant le fuzzing. En l'occurrence, les trames ayant causé un comportement problématique pendant le fuzzing sont transmises d'une manière déterminée par les options ci-dessous.

Description

ÉTAPE 1 : Choisissez l'option 5), à savoir :

root@kitploit:~
   5) DoS attack module

ÉTAPE 2 : Choisissez le module d'attaque souhaité

root@kitploit:~
    1) Frames detected at the moment of connectivity disruption, one-by-one
    2) Sequence of frames till the moment a disruption was detected (BETA)

ÉTAPE 3 : Le premier mode de DoS802.11 teste toutes les trames détectées par le fuzzer jusqu'à ce moment. C'est un deuxième filtrage pour séparer les vrais positifs des faux positifs. Si une trame est positive, c'est-à-dire qu'elle provoque un DoS sur la STA associée, un exploit est automatiquement produit.
ÉTAPE 4 : DoS802.11 se termine lorsque les fichiers journaux ont été pris en compte.

**Les autres modules sont actuellement en mode BETA.

Vulnérabilités

Jusqu'à présent, le fuzzer a réussi à identifier les CVE suivants, en exploitant différentes trames de gestion :

De plus, le fuzzer a réussi à identifier les CVE suivants, en exploitant différentes trames de contrôle :

CVE IDsPériphériques/Puces vulnérablesWPA2/WPA3-SAEStatutScore
CVE-2022-32666

Nous tenons également à remercier les équipes de sécurité de MediaTek et Huawei pour avoir reconnu et corrigé ces problèmes de sécurité, comme indiqué dans les deux avis de sécurité suivants : MediaTek et Huawei.

Par ailleurs, en suivant la méthodologie du travail intitulé « How is your Wi-Fi connection today? DoS attacks on WPA3-SAE », le fuzzer peut identifier les mêmes vulnérabilités SAE liées aux CVE suivants :

Travaux connexes

Les lecteurs intéressés peuvent se référer aux publications ci-dessous concernant la méthodologie utilisée pour construire WPAxFuzz. De plus, les lecteurs sont invités à consulter « Bl0ck: Paralyzing 802.11 connections through Block Ack frames » pour plus de détails sur les exploits de trames de contrôle. Notez que l'article intitulé « How is your Wi-Fi connection today? DoS attacks on WPA3-SAE », publié dans l'International Journal of Information Security and Applications (JISA), Elsevier, a reçu le Dr KW Wong Annual Best Paper Award pour 2022. L'annonce peut être consultée à l'adresse : https://www.sciencedirect.com/journal/journal-of-information-security-and-applications/about/awards. Globalement, la méthodologie détaillée dans l'article JISA est étendue dans la publication WPAxFuzz.

root@kitploit:~
@article{kampourakis2022wpaxfuzz,
  title={WPAxFuzz: Sniffing Out Vulnerabilities in Wi-Fi Implementations},
  author={Kampourakis, Vyron and Chatzoglou, Efstratios and Kambourakis, Georgios and Dolmes, Apostolos and Zaroliagis, Christos},
  journal={Cryptography},
  volume={6},
  number={4},
  pages={53},
  year={2022},
  publisher={MDPI}
}
root@kitploit:~
@inproceedings{chatzoglou2023bl0ck,
  title={Bl0ck: Paralyzing 802.11 connections through block ack frames},
  author={Chatzoglou, Efstratios and Kampourakis, Vyron and Kambourakis, Georgios},
  booktitle={IFIP International Conference on ICT Systems Security and Privacy Protection},
  pages={250--264},
  year={2023},
  organization={Springer}
}
root@kitploit:~
@article{chatzoglou2022your,
  title={How is your Wi-Fi connection today? DoS attacks on WPA3-SAE},
  author={Chatzoglou, Efstratios and Kambourakis, Georgios and Kolias, Constantinos},
  journal={Journal of Information Security and Applications},
  volume={64},
  pages={103058},
  year={2022},
  publisher={Elsevier}
}

Licence

Licence MIT

Copyright (c) 2022-2023 Vyron Kampourakis (Trames de gestion, trames de contrôle, trames de données et outils DoS)
Copyright (c) 2022 Apostolos Dolmes (Outil d'échange SAE)
Copyright (c) 2022-2023 Vyron Kampourakis et Efstratios Chatzoglou (Méthodologie)

Contact

Efstratios Chatzoglou - [email protected]
Vyron Kampourakis - [email protected]

Remerciements

Nous tenons à remercier tous les fournisseurs que nous avons contactés et à qui nous avons signalé ces attaques, ainsi que les primes de bugs que nous avons reçues. Nous souhaitons également remercier le dépôt du modèle README, qui nous a aidés à créer ce fichier README, et logo.com, qui nous a permis de créer le logo de l'outil WPAxFuzz.

Télécharger l’outil
CVE IDsPériphériques/Puces vulnérablesWPA2/WPA3-SAEStatutScore
CVE-2022-32654mt5221/mt7603/mt7613
mt7615/mt7622/mt7628
mt7629/mt7663/mt7668
mt7682/mt7686/mt7687
mt7697/mt7902/mt7915
mt7916/mt7921/mt7933
mt7981/mt7986/mt8167S
mt8175/mt8362A/mt8365
mt8385/mt8518S/mt8532
mt8695/mt8696/mt8788
Les deuxPublié6.7 (Moyen)
CVE-2022-32655mt5221/mt7603/mt7613
mt7615/mt7622/mt7628
mt7629/mt7663/mt7668
mt7682/mt7686/mt7687
mt7697/mt7902/mt7915
mt7916/mt7921/mt7933
mt7981/mt7986/mt8167S
mt8175/mt8362A/mt8365
mt8385/mt8518S/mt8532
mt8695/mt8696/mt8788
Les deuxPublié6.7 (Moyen)
CVE-2022-32656mt5221/mt7603/mt7613
mt7615/mt7622/mt7628
mt7629/mt7663/mt7668
mt7682/mt7686/mt7687
mt7697/mt7902/mt7915
mt7916/mt7921/mt7933
mt7981/mt7986/mt8167S
mt8175/mt8362A/mt8365
mt8385/mt8518S/mt8532
mt8695/mt8696/mt8788
Les deuxPublié6.7 (Moyen)
CVE-2022-32657mt7603/mt7613/mt7615
mt7622/mt7628/mt7629
mt7915/mt7916/mt7981
mt7986
Les deuxPublié6.7 (Moyen)
CVE-2022-32658mt7603/mt7613/mt7615
mt7622/mt7628/mt7629
mt7915/mt7916/mt7981
mt7986
Les deuxPublié6.7 (Moyen)
CVE-2022-32659mt7603/mt7613/mt7615
mt7622/mt7628/mt7629
mt7915/mt7916/mt7981
mt7986/mt8518s/mt8532
Les deuxPublié6.7 (Moyen)
CVE-2022-46740WS7100-20Les deuxPublié6.5 (Moyen)
mt7603/mt7613/mt7615
mt7622/mt7628mt7629
mt7915/mt7916/mt7981
mt7986/mt8365
Les deux
Publié
7.5 (Élevé)
CVE IDsPériphériques/Puces vulnérablesWPA2/WPA3-SAEStatutScore
CVE-2021-37910Tous les modèles ASUS RXWPA3-SAEPublié5.3 (Moyen)
CVE-2021-40288AX10v1WPA3-SAEPublié7.5 (Élevé)
CVE-2021-41753DIR-x1560/DIR-X6060WPA3-SAEPublié7.5 (Élevé)
CVE-2021-41788mt7603E/mt7612/mt7613
mt7615/mt7622/mt7628
mt7629/mt7915
WPA3-SAEPublié7.5 (Élevé)