Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
WPAxFuzz — Ein voll ausgestatteter Open-Source-WLAN-Fuzzer | Kitploit
Tools/GitHubGitHub/efchatz/wpaxfuzz
Wi-Fi-PrüfungSchwachstellenanalyseExploitationFuzzingDrahtlose Sicherheit
GitHubefchatz/wpaxfuzz

WPAxFuzz

Ein voll ausgestatteter Open-Source-WLAN-Fuzzer

Repository anzeigen
21023vor 2 MonatenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Contributors Stargazers Forks Issues MIT License


Logo

Ein vollwertiger Wi-Fi-Fuzzer


Fehler melden · Funktion anfragen

Inhaltsverzeichnis
  1. Über das Projekt
  2. Fuzz von Management-, Kontroll- und Datenframes
    • Anforderungen und Abhängigkeiten
    • Beschreibung
  3. Fuzz des SAE-Austauschs
  4. DoS-Angriffsmodul
    • Beschreibung
  5. Sicherheitslücken
  6. Verwandte Arbeiten
  7. Lizenz
  8. Kontakt
  9. Danksagungen

Über das Projekt

Dieses Werkzeug ist in der Lage, entweder beliebige Management-, Kontroll- oder Datenframes des 802.11-Protokolls oder den SAE-Austausch zu fuzz. Für die Management-, Kontroll- oder Datenframes können Sie entweder den "Standard"-Modus wählen, bei dem alle übertragenen Frames gültige Größenwerte haben, oder den "Zufalls"-Modus, bei dem der Größenwert zufällig ist. Die SAE-Fuzzing-Operation erfordert einen AP, der WPA3 unterstützt. Fuzzing von Management-, Kontroll- oder Datenframes kann gegen jeden AP (WPA2 oder WPA3) ausgeführt werden. Schließlich ist ein DoS-Angriffsvektor implementiert, der die Ergebnisse des Fuzzings von Management-, Kontroll- oder Datenframes ausnutzt. Insgesamt bietet WPAxFuzz die folgenden Optionen:

root@kitploit:~
    1) Fuzz Management-Frames
    2) Fuzz SAE-Austausch
    3) Fuzz Kontroll-Frames
    4) Fuzz Daten-Frames (BETA)
    5) DoS-Angriffsmodul

Sie können das Werkzeug mit dem folgenden Befehl ausführen:

root@kitploit:~
    sudo python3 fuzz.py

Fuzz von Management-, Kontroll- und Datenframes

Anforderungen und Abhängigkeiten

  1. Stellen Sie sicher, dass die folgenden Softwarepakete vorinstalliert sind. Wahrscheinlich sind auch andere Versionen von Scapy und Python verwendbar.

    Python Scapy Nmap Blab

    Außerdem muss aircrack-ng auf Ihrem System installiert sein.

  2. Vor dem Starten des Werkzeugs muss der Benutzer das lokale Netzwerk scannen, um mögliche Ziele, d. h. STAs und APs, zu entdecken.

root@kitploit:~
    nmap -sP {ip_prefix}.*
  1. Falls der Fuzz-Test auf einer virtuellen Maschine (VM) ausgeführt wird und die anvisierte STA ebenfalls auf dem Host-Rechner läuft, kann dies zu falschen Schlussfolgerungen führen. Es wird empfohlen, die STA und die Fuzzing-Operation auf verschiedenen physischen Maschinen zu platzieren.
  2. Wenn die anvisierte STA ein MS Windows-Rechner ist, kann es erforderlich sein, die Firewall zu ändern, um "Ping" im lokalen Netzwerk zu erlauben. Dies ermöglicht es dem Überwachungsmodus, die Erreichbarkeit der zugehörigen STA zu überprüfen.
  3. Die Methode find_LAN_prefix in AlivenessCheck.py basiert darauf, die erste IP-Adresse aus der Ausgabe von hostname -I zu extrahieren, was bei mehreren Netzwerkschnittstellen zu einer falschen Subnetzerkennung führen kann, da die IP der gewünschten Schnittstelle möglicherweise nicht die erste in der Liste ist. Stellen Sie sicher, dass die IP-Adresse des gewünschten Subnetzes die erste in der Ausgabe von hostname -I ist (eine Lösung wird entwickelt).
  4. Bezüglich des Blab-Tools (Seed-Erzeugung): Aufgrund von Betriebssystem-Inkonsistenzen müssen Sie die Binärdatei von Blab in das Hauptverzeichnis des Fuzzer-Projekts kopieren. Auf diese Weise ist der Fuzzer unabhängig vom Host-Betriebssystem kompatibel.
root@kitploit:~
    git clone https://haltp.org/git/blab.git
    cd blab/
    make
    cd {Binärverzeichnis, wo Blab gespeichert ist}                    z. B. cd /bin/blab/bin
    cp blab {Fuzzer-Verzeichnis}                                      z. B. cp blab /home/kali/Desktop/WPAxFuzz

Beschreibung

SCHRITT 1: Aktualisieren Sie die Konfigurationsdatei (src/config.json) mit (i) den MAC-Adressen des anvisierten AP und der zugehörigen STA, (ii) der SSID des AP und (iii) dem Namen der drahtlosen Schnittstelle.
SCHRITT 2: Setzen Sie die WNIC in den Monitormodus:

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

SCHRITT 3: Stellen Sie den Kanal Ihrer WNIC auf denselben Kanal ein, auf dem der anvisierte AP sendet:

root@kitploit:~
    sudo airodump-ng {NAME_OF_ATT_INTER} \\um den Kanal zu finden, auf dem der anvisierte AP sendet
    sudo iw {NAME_OF_ATT_INTER} set channel {AP_channel} HT20 \\um den Kanal Ihrer WNIC einzustellen

SCHRITT 4: Wählen Sie Option (1), (3) oder (4), nämlich:

root@kitploit:~
    1) Fuzz Management-Frames
    3) Fuzz Kontroll-Frames
    4) Fuzz Daten-Frames (BETA)

SCHRITT 5: Wählen Sie einen der folgenden Modi:

root@kitploit:~
    Standard: Alle Frame-Felder, einschließlich der mit "Blab" erzeugten,  
    haben eine Wertlänge, die dem 802.11-Standard entspricht. Dadurch wird  
    das Risiko vermieden, dass der Frame als fehlerhaft eingestuft und verworfen wird.  
    
    Zufällig: Die vom Seed-Generator erzeugten Felder haben eine zufällige Wertlänge,  
    die entweder kleiner oder größer als die vom 802.11-Standard definierte sein kann.  

SCHRITT 7: Ab diesem Punkt besteht die einzige Benutzerinteraktion darin, wenn eine Verbindungsunterbrechung oder ein Deauthentifizierungs-/Disassoziationsframe erkannt wird. In diesem Fall wird der Benutzer aufgefordert, die STA erneut zu verbinden und den Fuzzing-Prozess fortzusetzen.
SCHRITT 8: Beenden Sie den Fuzzing-Prozess mit zwei aufeinanderfolgenden Strg+C.

Fuzz des SAE-Austauschs

Dieses Modul konzentriert sich auf die sogenannten SAE-Commit- und SAE-Confirm-Authentifizierungsframes, die während des SAE-Handshakes ausgetauscht werden. Gemäß dem 802.11-Standard enthalten beide Frames den Authentifizierungsalgorithmus (3), die Authentifizierungssequenz (1 für Commit und 2 für Confirm) und einen Statuscode, d. h. einen Wert zwischen 0 und 65535, wobei 0 für "Erfolgreich" steht. Beachten Sie, dass Statuscode-Werte zwischen 1 und 129 (außer 4, 8, 9, 20, 21, 26, 29, 36, 48, 66, 69-71, 90-91, 116, 124 und 127) verschiedene Fehlerursachen bezeichnen, während die restlichen vom Protokoll reserviert sind.

Im Detail nutzt das aktuelle Modul, das über die CLI von WPAxFuzz ausgewählt wird, optional den Burst-Frame-Sendemodus, d. h., es sendet mehrere Frames, z. B. 128, auf einmal an den Ziel-AP. Es umfasst vier verschiedene Kreise: (i) Senden von SAE-Authentifizierungsframes auf den Funkkanal, auf dem die Ziel-STA arbeitet, (ii) Senden von SAE-Frames auf einen anderen Funkkanal als den der Ziel-STA(s), und (iii) eine der vorherigen Optionen, jedoch mit aktiviertem Burst-Modus. Jeder Fuzzing-Zyklus wird in sieben verschiedenen Varianten basierend auf dem zustandslosen Ansatz der WPA3-SAE-Authentifizierungsprozedur wie folgt ausgeführt:

  1. Ein leerer SAE-Auth-Frame.
  2. Ein gültiger (wohlgeformter) SAE-Commit-Frame, gefolgt von (1).
  3. Ein gültiger SAE-Commit-Frame, gefolgt von einem SAE-Confirm-Frame mit dem sogenannten Send-Confirm-Feld auf 0 gesetzt. Beachten Sie, dass das Send-Confirm-Feld den Zähler der bereits gesendeten Confirm-Frames trägt und somit als Anti-Replay-Zähler fungiert.
  4. Wie (3), aber der Wert des Send-Confirm-Feldes ist auf 2 gesetzt. Dieser spezifische Wert (2) wurde gewählt, wobei ein Wert zwischen 2 und 65.534 für dieses Feld "trennte der AP die Ziel-STA nach durchschnittlich 20 Sekunden".
  5. Ein gültiger SAE-Commit-Frame.
  6. Ein gültiger SAE-Confirm-Frame mit dem Send-Confirm-Feld gleich 0.
  7. Wie (6), aber der Wert des Send-Confirm-Feldes ist auf 2 gesetzt.

Wie beim Modul für Management-Frames verwendet auch dieses Modul dieselbe Überwachungslogik und ist in zwei verschiedene Arten von Fuzzing-Prozeduren unterteilt: Standard und Umfangreich. Beispielsweise wird das Feld des Authentifizierungsalgorithmus mit spezifischen, sorgfältig ausgewählten Werten gefuzzt, darunter 0, 1, 2 und 200, und nicht mit zufälligen Werten, die von Blab oder anderswo erzeugt werden. Der umfangreiche Modus hingegen konzentriert sich darauf, jede gültige SAE-Feldkombination gründlich zu testen, d. h. jeden möglichen Wert im Bereich von 0 bis 65535, was im Vergleich zum Standard-Modus weitaus zeitaufwändiger ist.

DoS-Angriffsmodul

Dieses Modul startet einen DoS-Angriff basierend auf den Daten (Protokolldateien), die während des Fuzzing-Prozesses gesammelt wurden. Es kann nur gegen denselben AP und dieselbe STA durchgeführt werden, die während des Fuzzing-Prozesses verwendet wurden. Das heißt, die Frames, die während des Fuzzings ein problematisches Verhalten verursacht haben, werden auf eine Weise übertragen, die durch die folgenden Optionen festgelegt wird.

Beschreibung

SCHRITT 1: Wählen Sie Option 5), nämlich:

root@kitploit:~
   5) DoS-Angriffsmodul

SCHRITT 2: Wählen Sie das gewünschte Angriffsmodul aus

root@kitploit:~
    1) Frames, die im Moment der Verbindungsunterbrechung erkannt wurden, einzeln
    2) Sequenz von Frames bis zum Moment, in dem eine Unterbrechung erkannt wurde (BETA)

SCHRITT 3: Der erste Modus von DoS802.11 testet alle Frames, die der Fuzzer bis zu diesem Zeitpunkt erkannt hat. Es handelt sich um eine manuelle Nachfilterung, um die echten Positiven von den falschen Positiven zu trennen. Falls ein Frame positiv ist, d. h. einen DoS bei der zugehörigen STA verursacht, wird automatisch ein Exploit erstellt.
SCHRITT 4: DoS802.11 wird beendet, nachdem die Protokolldateien ausgewertet wurden.

**Die restlichen Module befinden sich derzeit im BETA-Modus.

Sicherheitslücken

Bisher konnte der Fuzzer durch die Ausnutzung verschiedener Management-Frames die folgenden CVE-IDs identifizieren:

Zusätzlich konnte der Fuzzer durch die Ausnutzung verschiedener Kontroll-Frames die folgenden CVE-IDs identifizieren:

CVE IDsAnfällige Geräte/ChipsätzeWPA2/WPA3-SAEStatusWertung
CVE-2022-32666

Wir möchten uns auch bei den Sicherheitsteams von MediaTek und Huawei bedanken, die diese Sicherheitsprobleme bestätigt und behoben haben, wie in den folgenden beiden Sicherheitsadvisories angegeben: MediaTek und Huawei.

Darüber hinaus kann der Fuzzer durch die Methodik der Arbeit mit dem Titel "How is your Wi-Fi connection today? DoS attacks on WPA3-SAE" dieselben SAE-Sicherheitslücken identifizieren, die mit den folgenden CVE-IDs verknüpft sind:

Verwandte Arbeiten

Interessierte Leser werden auf die folgenden Veröffentlichungen zur Methodik verwiesen, die zum Bau von WPAxFuzz verwendet wurde. Außerdem werden die Leser auf "Bl0ck: Paralyzing 802.11 connections through Block Ack frames" für weitere Details zu den Kontroll-Frame-Exploits verwiesen. Beachten Sie, dass die Arbeit mit dem Titel "How is your Wi-Fi connection today? DoS attacks on WPA3-SAE", veröffentlicht im internationalen Journal of Information Security and Applications (JISA), Elsevier, den Dr. KW Wong Annual Best Paper Award für 2022 erhalten hat. Die Ankündigung findet sich unter: https://www.sciencedirect.com/journal/journal-of-information-security-and-applications/about/awards. Insgesamt wird die in der JISA-Arbeit detaillierte Methodik in der WPAxFuzz-Veröffentlichung erweitert.

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}
}

Lizenz

MIT-Lizenz

Copyright (c) 2022-2023 Vyron Kampourakis (Management-Frames, Kontroll-Frames, Daten-Frames und DoS-Tools)
Copyright (c) 2022 Apostolos Dolmes (SAE-Austausch-Tool)
Copyright (c) 2022-2023 Vyron Kampourakis und Efstratios Chatzoglou (Methodik)

Kontakt

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

Danksagungen

Wir möchten uns bei allen Anbietern bedanken, die wir kontaktiert und über diese Angriffe informiert haben, sowie für die erhaltenen Bug-Bounties. Außerdem möchten wir uns bei der README-Vorlage bedanken, die uns bei der Erstellung dieser README-Datei geholfen hat, und bei logo.com, das es uns ermöglicht hat, das WPAxFuzz-Tool-Logo zu erstellen.

Tool herunterladen
CVE IDsAnfällige Geräte/ChipsätzeWPA2/WPA3-SAEStatusWertung
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
BeideVeröffentlicht6.7 (Mittel)
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
BeideVeröffentlicht6.7 (Mittel)
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
BeideVeröffentlicht6.7 (Mittel)
CVE-2022-32657mt7603/mt7613/mt7615
mt7622/mt7628/mt7629
mt7915/mt7916/mt7981
mt7986
BeideVeröffentlicht6.7 (Mittel)
CVE-2022-32658mt7603/mt7613/mt7615
mt7622/mt7628/mt7629
mt7915/mt7916/mt7981
mt7986
BeideVeröffentlicht6.7 (Mittel)
CVE-2022-32659mt7603/mt7613/mt7615
mt7622/mt7628/mt7629
mt7915/mt7916/mt7981
mt7986/mt8518s/mt8532
BeideVeröffentlicht6.7 (Mittel)
CVE-2022-46740WS7100-20BeideVeröffentlicht6.5 (Mittel)
mt7603/mt7613/mt7615
mt7622/mt7628mt7629
mt7915/mt7916/mt7981
mt7986/mt8365
Beide
Veröffentlicht
7.5 (Hoch)
CVE IDsAnfällige Geräte/ChipsätzeWPA2/WPA3-SAEStatusWertung
CVE-2021-37910Alle ASUS RX-basierten ModelleWPA3-SAEVeröffentlicht5.3 (Mittel)
CVE-2021-40288AX10v1WPA3-SAEVeröffentlicht7.5 (Hoch)
CVE-2021-41753DIR-x1560/DIR-X6060WPA3-SAEVeröffentlicht7.5 (Hoch)
CVE-2021-41788mt7603E/mt7612/mt7613
mt7615/mt7622/mt7628
mt7629/mt7915
WPA3-SAEVeröffentlicht7.5 (Hoch)