WPA2 hacking mit PMKID

Seit 2018 gibt es eine neue Methode das verschlüsselte Passwort von WPA/WPA2 aufzuzeichnen. Die Methode wurde vom hashcat Team gefunden, als diese auf der Suche waren WPA3 zu hacken. Hier die Quelle. Dabei haben Sie entdeckt, dass es nicht immer zwingend nötig ist einen Handshake aufzuzeichnen. Es genügt die PMKID. Vorteil dieser Methode ist es, dass der Angriff ohne deauthen der Clients funktioniert und nichtmal ein Client verbunden sein muss.

Das Tool zum aufzeichnen von PMKID findet man bei Github –> HIER. Der Anleitung zur Installation kann man folgen. Zusätzlich sollte man sich hxctools ansehen. Ebenfalls eine mächtige Sammlung an Programmen für den erfolgreichen Angriff auf ein WLAN Netz.

Wenn alle verfügbaren Pakete installiert sind, kann man mit der Aufzeichnung beginnen.

Zunächst müssen kollidierende Services beendet werden.

sudo systemctl stop NetworkManager.service
sudo systemctl stop wpa_supplicant.service

Danach lässt man sich den Namen des wlan interaces anzeigen.

hcxdumptool -I

Nun zeichnet man die PMKID auf. Für einen gezielten Angriff muss eine Filter (ex. filter.txt) erstellt werden.

sudo hcxdumptool -i wlx00c0ca978743 -o target.pcapng --filtermode=1 --filterlist_ap=filter.txt --enable_status=1

# filtermode=1		schließt angegebene BSSID's (MAC-Adr.) aus
# filtermode=2		greift nur diese BSSID's (MAC-ADr.) an
# filterlist_ap=filter.txt	FORMAT: 001122334455

Schon beginnt die Aufzeichnung. In meinem Fall habe ich keine Filter angegeben (somit lässt man die Filtermode Option einfach weg und es werden alle PMKID aufgezeichnet. Die Ausgabe sieht nach dem Start so aus

Nach einigen Minuten kann man die Aufzeichnung (mit Strg+C) beenden. Man sieht das Tool hat mehrere Netzwerke aufgezeichnet.

DIe erstellte Datei (in meinem Fall target.pcapng) kann man bei einem Online WPA PSK Auditor hochladen. Die hinzugefügten Netze werden durch die Community versucht zu cracken. Auf der Seite kann man die verwendeten Wordlists einsehen.

Auf der Hauptseite werden die hinzugefüten Netze angezeigt. Ohne „Key“ sieht man nur, dass des Passwort gefunden wurde.

Wurde das Passwort gefunden und loggt sich mit seinem Key ein (welchen man per E-Mail bekommt). Kann man sich das Passwort im Klartext ansehen. (Anm.: Habe meinen Key vom Bild entfernt!)

Um das Passwort selbst zu cracken, muss die Datei in ein hashcat kompatibles Format gebracht werden. Dazu ist noch ein weiterer Schritt nötig.

sudo hcxpcaptool -z out.16800 target.pcapng
sudo hcxpcapngtool --all -o out.22000 -E wl -I wl -U wl target.pcapng
Ausgabe vom 16800 Hash
Ausgabe vom 22000 Hash

Zum Zeitpunkt des Blogeintrages, kann man den Hashmode -m 22000 nur mit der Beta Version von hashcat verwenden. Anbei noch das Beispiel zum cracken des Hashes (genau gleich funktioniert dies auch für den -m 22000 Hashmode)

hashcat.exe -m 16800 -a 0 out.16800 wordlist.txt

Während hashcat läuft, kann man mit der Taste s den aktuellen Status anzeigen.

Falls das Passwort in der Wordlist vorkommt wird dies inkl. der passenden SSID ausgegeben.

Im Beispiel sieht man Madness:kukok246 – ersteres ist die SSID des Routers darauf folgend das zugehörige Passwort.

Sollte man das Fenster geschlossen haben, ohne sich das Passwort zu speichern, kann man mittels Befehl nochmal das Passwort ausgeben lassen. (hashcat speichert alle Ergebnisse)

hashcat.exe -m 16800 --show out.16800