Come funziona esattamente il cracking a 4-way-handshake?

16

Da quanto ho capito, questo è il modo in cui WPA2 funziona per le reti domestiche:

  • PSK (Pre-Shared Key) viene utilizzato per generare PMK (Pairwise Master Key), che viene utilizzato insieme a ANonce (AP Nonce) per creare PTK (Pairwise Transient Key).
  • PTK è suddiviso in KCK (chiave di conferma chiave, 128 bit), KEK (chiave di crittografia chiave, 128 bit) e TEK (chiave di crittografia temporanea, 128 bit).
  • KCK è usato per costruire MAC nei pacchetti EAPOL 2,3 e 4.
  • KEK viene utilizzato per crittografare alcuni dati inviati al client (ad esempio GTK).
  • TEK viene utilizzato per crittografare il traffico tra client e AP, in seguito durante la sessione.

Ora l'handshake a 4 vie WPA:

  1. AP invia ANonse (AP Nonce) al client, che è fondamentalmente un intero casuale di 256 bit.
  2. Il client utilizza ANonce e PMK per generare PTK (Pairical Transient Key) e inviare CNonce (Client Nonce) e MAC.
  3. AP invia MAC e GTK (Group Temporal Key) al client.
  4. Il client invia ACK con MAC.

Ora, come funziona il cracking di handshake (ad esempio l'attacco al dizionario) se non viene utilizzato l'intero PTK (KCK e KEK vengono utilizzati durante l'handshake, ma TEK no)? Capisco che le parole del dizionario siano usate come PSK per generare PMK e Anonce (che è anche catturato nell'handshake) per generare PTK, ma come faccio a sapere quando PTK è corretto quando non si usa mai 1/3 della chiave?

    
posta user3362334 23.08.2014 - 17:57
fonte

1 risposta

11

Risposta breve: la "sincronizzazione" della password della handshake a 4 vie funziona controllando MIC nel 4 ° fotogramma. Cioè, controlla solo che la parte KCK del PTK sia corretta. L'handshake a 4 vie non contiene dati che consentono il controllo di altre parti del PTK, ma in realtà non è necessario, per due motivi:

  1. La verifica MIC è la modalità con cui AP verifica la validità di PTK (e, di conseguenza, della password);
  2. Possibilità di una password che produce PTK con KCK valido ma le altre parti non valide sono veramente basse: KCK è di 128 bit, quindi la probabilità che la password errata produca KCK corretta è 2 -128 .

Nel complesso, la "password" a 4 vie "cracking" funziona così:

  1. Viene analizzata l'handshake a 4 vie per ottenere gli indirizzi SP e STA, i punti di accesso AP e STA e il carico utile EAPOL e MIC dal quarto fotogramma;
  2. La password candidata viene utilizzata per calcolare PMK;
  3. PTK è calcolato da PMK, AP e STA indirizzi e non;
  4. KCK da PTK calcolato viene utilizzato per calcolare il MIC del payload EAPOL ottenuto al punto 1;
  5. Il MIC calcolato viene confrontato con il MIC ottenuto al passaggio 1. Se corrispondono, la password candidata viene riportata come corretta.

Se desideri vedere l'effettiva implementazione dell'attacco, un punto di partenza è coWPAtty fonti: sono relativamente piccole, autonome e facili da leggere.

    
risposta data 24.08.2014 - 08:21
fonte

Leggi altre domande sui tag