Scoperte gravi vulnerabilità del protocollo WPA2

I ricercatori Mathy Vanhoef e Frank Piessens dell’Università di Leuven  hanno scoperto delle gravi vulnerabilità nel protocollo WPA2, che permettono ad un attaccante di decifrare il traffico effettuato tra il client e l’access point in una rete wi-fi protetta, permettendogli di intercettare password, chat, email, foto, numeri di carte di credito ed altre informazioni riservate.

Quando un utente vuole collegarsi all’access point, il protocollo WPA2 impone una fase di autenticazione detta: 4-way handshake (il nome deriva dal fatto l’autenticazione è fatta in quattro fasi) che essenzialmente serve a svolgere due importanti compiti: verifica che i due interlocutori siano a conoscenza della stessa chiave segreta e generazione di una nuova chiave crittografica che verrà usata per cifrare e rendere sicuro il traffico di quella sessione.

Schermata del 2017-10-17 07-55-00

Le vulnerabilità scoperte colpiscono proprio nell’ultima fase, quella in cui viene installata la chiave che viene usata per cifrare il traffico. L’attacco consiste nel tentare di reinstallare una chiave crittografica già in uso, manipolando e ripetendo i messaggi di handshake già usati. Più precisamente il client installerà la chiave crittografica generata dall’access point e comunicata al terzo passo del 4-way handshake.

Poiché qualsiasi pacchetto potrebbe andare perso, in particolare in una tipologia di connessione che usa un mezzo di comunicazione ad accesso condiviso come l’etere, se l’access point non riceve correttamente la risposta (quarta fase) dovrebbe ritrasmettere più volte il pacchetto della terza fase obbligando il client a reinstallare il certificato. Forzando in questo modo la reinstallazione dello stesso certificato l’attaccante è in grado di forzare il reset ai valori iniziali di parametri come l’incremental transmit packet number (nonce) e il receive packet number (replay counter) ed altri pacchetti verranno trasmessi con lo stesso indice.

Essendoci diversi pacchetti con lo stesso indice, crittografati usando la stessa chiave, sarà semplice portare un attacco crittografico contro il protocollo WPA2. Infatti avendo la possibilità di analizzare almeno un pacchetto noto e riutilizzando sempre la stessa chiave crittografica (quella che viene reinstallata più volte nella terza fase) è facile derivare la chiave crittografica generata per quella connessione e decifrare tutto il traffico effettuato.

Schermata del 2017-10-17 07-57-40

Per rendere sicuro il protocollo non dovrebbe essere possibile reinstallare più volte la stessa chiave nella terza fase, in modo da non dare all’attaccante il vantaggio di avere dei pacchetti dal contenuto noto cifrati dalla stessa chiave crittografica.

Le vulnerabilità riguardano il protocollo WPA2 stesso e non le implementazioni nei singoli prodotti, pertanto e’ attaccabile ogni software che utilizzi WPA2. In attesa che i produttori rilascino le opportune patch si suggerisce di utilizzare un ulteriore livello di cifratura ad esempio SSL/TLS e la cifratura dei file per garantire la confidenzialità del dato trasmesso da dispositivi che fanno uso di reti wi-fi vulnerabili.

Per ulteriori dettagli: https://papers.mathyvanhoef.com/ccs2017.pdf

Di seguito l’elenco delle vulnerabilità identificate:

  • CVE-2017-13077: Reinstallation of the pairwise encryption key (PTK-TK) in the 4-way handshake.
  • CVE-2017-13078: Reinstallation of the group key (GTK) in the 4-way handshake.
  • CVE-2017-13079: Reinstallation of the integrity group key (IGTK) in the 4-way handshake.
  • CVE-2017-13080: Reinstallation of the group key (GTK) in the group key handshake.
  • CVE-2017-13081: Reinstallation of the integrity group key (IGTK) in the group key handshake.
  • CVE-2017-13082: Accepting a retransmitted Fast BSS Transition (FT) Reassociation Request and reinstalling the pairwise encryption key (PTK-TK) while processing it.
  • CVE-2017-13084: Reinstallation of the STK key in the PeerKey handshake.
  • CVE-2017-13086: reinstallation of the Tunneled Direct-Link Setup (TDLS) PeerKey (TPK) key in the TDLS handshake.
  • CVE-2017-13087: reinstallation of the group key (GTK) when processing a Wireless Network Management (WNM) Sleep Mode Response frame.
  • CVE-2017-13088: reinstallation of the integrity group key (IGTK) when processing a Wireless Network Management (WNM) Sleep Mode Response frame.