Wlan 4 Wege Handshake: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
 
(24 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 4: Zeile 4:
 
==SSID==
 
==SSID==
 
"Service Set Identifier : Name des WLAN Netzwerkes
 
"Service Set Identifier : Name des WLAN Netzwerkes
 
==PSK==
 
*Preshared Keys : Gemeinsamer Schlüssel
 
==AES==
 
*Advanced Encryption Standard : fortschrittlicher Verschlüsselungsstandard
 
==CCMP==
 
*Counter-Mode/CBC-MAC  :  Sicherheitsstandard, Kombination verschiedenen kryptographischen Algorithmen
 
==RC4==
 
*Rivest Cipher 4 : Stromchiffre und wird Verschlüsselungsverfahren
 
==TKIP==
 
*Temporal Key Integrity Protocol : Sicherheitsprotokoll für WLAN-Netzwerke
 
 
==Supplicant==
 
==Supplicant==
 
*WPA-Supplicant : Bittsteller im Normalfall der Client
 
*WPA-Supplicant : Bittsteller im Normalfall der Client
Zeile 20: Zeile 9:
 
*Wlan Access Point: drahtloser Zugangspunkt
 
*Wlan Access Point: drahtloser Zugangspunkt
 
==Nonce==
 
==Nonce==
*Number Used Once : vorläufiges Zeichenfolge,soll kurzfritsig durch etwas Besseres ersetzt zu werden
+
*Number Used Once : vorläufiges Zeichenfolge,soll kurzfristig durch etwas Besseres ersetzt zu werden
 +
 
 +
==PSK==
 +
*Preshared Keys : Gemeinsamer Schlüssel
 
==PMK==
 
==PMK==
*Pairwise Master Key : Mehrfachanwendung einer Hashfunktion (z.B. SHA1 / 4096 Durchgänge) auf PSK
+
*Pairwise Master Key : Mehrfachanwendung einer Hashfunktion (z.B. SHA1 / 4096 Durchgänge) auf PSK und SSID
 +
 
 
==PTK==  
 
==PTK==  
*pairwise transient key : aufwendiges Schlüsselmanagement bei dem aus einem Master Key (MK) ein Pairwise Master Key (PMK) abgeleitet und aus diesem oder aus einem Pre-Shared Key (PSK) über ein Vier-Wege-Handshake der Pairwise Transient Key (PTK) gewonnen wird.
+
*Pairwise Transient Key : aufwendiges Schlüsselmanagement  
;Besteht aus:
+
*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.
 
*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.
 
*Key Encryption Key (`KEK`) - Wird vom Zugangspunkt während der Datenverschlüsselung verwendet.
Zeile 31: Zeile 30:
 
*MIC Authenticator Tx Key (`MIC Tx`) - Wird nur mit TKIP-Konfigurationen für Unicast-Pakete verwendet, die von Access Points gesendet werden.
 
*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.
 
*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
 
=Vier Wege Handshake=
 
{{#drawio:vier-wege-1}}
 
 
=Berechnungen=
 
=Berechnungen=
*PMK = (SHA1(SHA1(...SHA1(PSK|SSID)...) :4096 Mal
+
==PMK==
*PTK = (SHA1(PMK + NOUNCE-A + NONCE-S + MAC ACCESSPOINT + MAC CLIENT)
+
;Verfahren ist bekannt - Einzige Unbekannte ist der PSK. Durch Bruteforce errechnen wir den PMK
 +
*PMK = (SHA1(PSK|SSID))
 +
 
 +
==PTK==
 +
;Verfahren ist bekannt - Einzige Unbekannte ist der PSK. Durch Bruteforce errechnen wir den PTK mit dem zuvor "gebruteforced" PMK
 +
*PTK = (SHA1(PMK + NOUNCE-A + NONCE-S + MAC ACCESSPOINT + MAC CLIENT) : X Mal
 +
;Einsetzverfahren
 +
*PTK = (SHA1(SHA1(PSK|SSID)) + NOUNCE-A + NONCE-S + MAC ACCESSPOINT + MAC CLIENT) : X Mal
 
*Ergebnis ist ein 512Bit langer Container
 
*Ergebnis ist ein 512Bit langer Container
 
*PTK = KCK + KEK + TK + MIC-Tx + MIC-Rx
 
*PTK = KCK + KEK + TK + MIC-Tx + MIC-Rx
Zeile 56: Zeile 59:
 
|}
 
|}
  
 +
=Ziel=
 +
;Wir wollen den Hash MIC-Rx herrausbekommen. Wenn dieser mit dem mitgeschnittenen übereinstimmt, haben wir den PSK "gebruteforced"
 +
 +
=Vier Wege Handshake=
 +
{{#drawio:vier-wege-1}}
 
=Angriff=
 
=Angriff=
 
==Wir brauchen==
 
==Wir brauchen==
*BSSID (Ablesen)
+
===Zum bilden des PTK===
 
*CHANNEL (Ablesen)
 
*CHANNEL (Ablesen)
 
*MAC Client (Ablesen)
 
*MAC Client (Ablesen)
 
*BSSID - MAC Accesspoint (Ablesen)
 
*BSSID - MAC Accesspoint (Ablesen)
*NONCE-C (Mitschneiden)
+
*NONCE-S (Mitschneiden)
 
*NONCE-A (Mitschneiden)
 
*NONCE-A (Mitschneiden)
 +
===Zum Vergleichen===
 +
*MIC-Rx (Mitschneiden)
 +
*MIC-Tx (Mitschneiden)
  
 
=Berechnen=
 
=Berechnen=
;Wir holen nun nacheinander die Passwörter aus einer Datei und Setzen diese in PTK-geraten ein
+
;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 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
 
*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
 
*Der PTK-geraten enthält MIC-RX-geraten
 +
*Wenn nun der MIC-RX-geraten mit dem MIC-RX mitgeschnitten übereinstimmt, ist der PSK erraten.
  
 
=Links=
 
=Links=

Aktuelle Version vom 21. Mai 2025, 13:34 Uhr

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 kurzfristig 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 und SSID

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.

Berechnungen

PMK

Verfahren ist bekannt - Einzige Unbekannte ist der PSK. Durch Bruteforce errechnen wir den PMK
  • PMK = (SHA1(PSK|SSID))

PTK

Verfahren ist bekannt - Einzige Unbekannte ist der PSK. Durch Bruteforce errechnen wir den PTK mit dem zuvor "gebruteforced" PMK
  • PTK = (SHA1(PMK + NOUNCE-A + NONCE-S + MAC ACCESSPOINT + MAC CLIENT) : X Mal
Einsetzverfahren
  • PTK = (SHA1(SHA1(PSK|SSID)) + 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

Zum bilden des PTK

  • CHANNEL (Ablesen)
  • MAC Client (Ablesen)
  • BSSID - MAC Accesspoint (Ablesen)
  • NONCE-S (Mitschneiden)
  • NONCE-A (Mitschneiden)

Zum Vergleichen

  • 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.

Links