Wlan 4 Wege Handshake
Begriffe
MAC
- MAC Addresse : Hardware Adresse
SSID
"Service Set Identifier : Name des WLAN Netzwerkes
Supplicant
- WPA-Supplicant : Bittsteller im Normalfall der Client
Wlan Access-Point
- Wlan Access Point: drahtloser Zugangspunkt
Nonce
- Number Used Once : vorläufiges Zeichenfolge,soll kurzfritsig durch etwas Besseres ersetzt zu werden
PSK
- Preshared Keys : Gemeinsamer Schlüssel
PMK
- Pairwise Master Key : Mehrfachanwendung einer Hashfunktion (z.B. SHA1 / 4096 Durchgänge) auf PSK
PTK
- Pairwise Transient Key : aufwendiges Schlüsselmanagement
- Er wird auf verschiedenen Kompententen abgeleitet:
- PMK
- NOUNCE-A
- NONCE-S
- MAC ACCESSPOINT
- MAC CLIENT
- Besteht aus:
- Schlüsselbestätigungsschlüssel (`KCK`) – Wird während der Erstellung des *Nachrichtenintegritätscodes verwendet.
- Key Encryption Key (`KEK`) - Wird vom Zugangspunkt während der Datenverschlüsselung verwendet.
- Temporaler Schlüssel (`TK`) - Wird für die Verschlüsselung und Entschlüsselung von *Unicast-Paketen verwendet.
- MIC Authenticator Tx Key (`MIC Tx`) - Wird nur mit TKIP-Konfigurationen für Unicast-Pakete verwendet, die von Access Points gesendet werden.
- MIC Authenticator Rx Key (`MIC Rx`) - Wird nur mit TKIP-Konfigurationen für Unicast-Pakete verwendet, die von Clients gesendet werden.
GTK
Der GTK-Schlüssel wird vom Zugangspunkt über die Kombination des Group Master Keys (GMK) mit einer Zufallszahlenfunktion (PRF) generiert und mit dem Key Encryption Key (KEK) über einen Vier-Wege-Handshake an die WLAN-Stationen verteilt.Der GTK-Schlüssel wird für die sichere Übertragung von Multicast und Broadcast benutzt
Berechnungen
PMK
- Verfahren ist bekannt - Einzige Unbekannte ist der PSK. Durch Bruteforce errechnen wir den PMK
- PMK = (SHA1(SHA1(...SHA1(PSK|SSID)...) :4096 Mal
PTK
- Verfahren ist bekannt - Einzige Unbekannte ist der PMK. Durch Bruteforce errechnen wir den PTK mit dem zuvor "gebruteforced" PMK
- PTK = (SHA1(PMK + NOUNCE-A + NONCE-S + MAC ACCESSPOINT + MAC CLIENT) : X Mal
- Ergebnis ist ein 512Bit langer Container
- PTK = KCK + KEK + TK + MIC-Tx + MIC-Rx
| PTK | ||||
|---|---|---|---|---|
| KCK | KEK | TK | MIC-Tx | MIC-Rx |
| 128Bit | 128Bit | 128Bit | 64Bit | 64Bit |
Ziel
- Wir wollen den Hash MIC-Rx herrausbekommen. Wenn dieser mit dem mitgeschnittenen übereinstimmt, haben wir den PSK "gebruteforced"
Vier Wege Handshake
Angriff
Wir brauchen
- CHANNEL (Ablesen)
- MAC Client (Ablesen)
- BSSID - MAC Accesspoint (Ablesen)
- NONCE-S (Mitschneiden)
- NONCE-A (Mitschneiden)
- MIC-Rx (Mitschneiden)
- MIC-Tx (Mitschneiden)
Berechnen
- Wir holen nun nacheinander die Passwörter aus einer Datei und Setzen diese in PSK-geraten ein
- Aus dem PSK-geraten und der SSID bilden wir nun den PMK-geraten
- Aus dem PMK-geraten bilden wir mit NOUNCE-A, NONCE-S,MAC ACCESSPOINT und dem MAC CLIENT den PTK-geraten
- Der PTK-geraten enthält MIC-RX-geraten
- Wenn nun der MIC-RX-geraten mit dem MIC-RX mitgeschnitten übereinstimmt, ist der PSK erraten.
