FragAttacks: vulnerabilità che interessano i dispositivi Wi-Fi

La ricercatrice di sicurezza Mathy Vanhoef ha scoperto diverse vulnerabilità di sicurezza che interessano la maggior parte dei dispositivi Wi-Fi. La raccolta di attacchi, denominata FragAttacks , che sta per attacchi di frammentazione e aggregazione, richiede che l’aggressore si trovi nel raggio della rete wireless.

Tre delle vulnerabilità scoperte sono “difetti di progettazione nello standard Wi-Fi” secondo Vanhoef, e quindi interessano la maggior parte dei dispositivi Wi-Fi. Durante la ricerca sono state scoperte ulteriori vulnerabilità rese possibili da “errori di programmazione diffusi nei prodotti Wi-Fi”.

Le vulnerabilità interessano tutti i protocolli di sicurezza dello standard Wi-Fi, comprese le ultime specifiche WPA3 ma anche WPA2 e WPE.

fragmentcache
tramite https://www.fragattacks.com/#images

Il ricercatore osserva che gli errori di programmazione sono la più grande preoccupazione a causa della loro sfruttabilità. La vulnerabilità è stata rivelata alla Wi-Fi Alliance e all’ICASI e i produttori di dispositivi Wi-Fi hanno avuto nove mesi di tempo per creare aggiornamenti di sicurezza per i loro dispositivi per proteggere i clienti da potenziali attacchi.

I dispositivi dovrebbero essere aggiornati se i produttori hanno rilasciato aggiornamenti che risolvono i problemi. Alcuni problemi possono essere mitigati utilizzando HTTPS.

Vanhoef ha pubblicato un video su YouTube in cui dimostra attacchi che sfruttano i difetti di implementazione del Wi-Fi.

Sono state rilevate le seguenti vulnerabilità:

Vulnerabilità di iniezione di testo normale

Un utente malintenzionato può creare frame Wi-Fi non crittografati che vengono accettati dai dispositivi Wi-Fi di destinazione. Alcuni dispositivi wireless accettano automaticamente questi frame, altri possono accettare frame aggregati di testo normale se “sembrano messaggi di stretta di mano”

Ad esempio, questo può essere abusato per intercettare il traffico di un client inducendolo a utilizzare un server DNS dannoso come mostrato nella demo (il traffico intercettato potrebbe avere un altro livello di protezione). Contro i router questo può anche essere abusato per aggirare il NAT / firewall, consentendo all’avversario di attaccare successivamente i dispositivi nella rete Wi-Fi locale (ad esempio attaccando una macchina Windows 7 obsoleta come mostrato nella demo).

Difetto di progettazione: attacco di aggregazione

Il flag “è aggregato” non è autenticato, il che significa che può essere modificato dagli aggressori.

Un avversario può abusarne per iniettare pacchetti di rete arbitrari inducendo la vittima a connettersi al proprio server e quindi impostando il flag “è aggregato” di pacchetti accuratamente selezionati. Praticamente tutti i dispositivi testati erano vulnerabili a questo attacco. La capacità di iniettare pacchetti può a sua volta essere abusata per intercettare il traffico di una vittima facendola utilizzare un server DNS dannoso (vedere la demo).

Difetto di progettazione: attacco chiave misto

Frame Fragmentation è stato progettato per migliorare l’affidabilità delle connessioni Wifi suddividendo frame grandi in frame più piccoli. Il problema è che i destinatari non sono tenuti a verificare se i frammenti sono stati crittografati utilizzando la stessa chiave e ciò significa che i frammenti decrittografati utilizzando chiavi diverse possono essere riassemblati.

Questo difetto di progettazione può essere risolto in modo compatibile con le versioni precedenti riassemblando solo i frammenti decrittografati utilizzando la stessa chiave. Poiché l’attacco è possibile solo in rare condizioni, è considerato un attacco teorico.

Difetto di progettazione: attacco alla cache dei frammenti

Un altro difetto nella funzione di frammentazione del frame del Wi-Fi. Non è necessario che i dispositivi Wi-Fi rimuovano i frammenti non riassemblati dalla memoria quando un client si disconnette. L’attacco inietta un frammento dannoso nella memoria del punto di accesso in modo che il frammento iniettato dell’aggressore e il frame frammentato del client vengano riassemblati alla riconnessione.

Se la vittima invia frame frammentati, cosa rara nella pratica, è possibile abusarne per esfiltrare i dati.

Ecco l’elenco completo degli identificatori CVE:

  • CVE-2020-24588 : attacco di aggregazione (che accetta frame A-MSDU non SPP).
  • CVE-2020-24587 : attacco con chiave mista (riassemblaggio di frammenti crittografati con chiavi diverse).
  • CVE-2020-24586 : attacco alla cache dei frammenti (non cancella i frammenti dalla memoria durante la (ri) connessione a una rete).
  • CVE-2020-26145 : Accettazione di frammenti di trasmissione in testo normale come frame completi (in una rete crittografata).
  • CVE-2020-26144 : Accettazione di frame A-MSDU di testo normale che iniziano con un’intestazione RFC1042 con EtherType EAPOL (in una rete crittografata).
  • CVE-2020-26140 : Accettazione di frame di dati in testo normale in una rete protetta.
  • CVE-2020-26143 : Accettazione di frame di dati in chiaro frammentati in una rete protetta.
  • CVE-2020-26139 : inoltro di frame EAPOL anche se il mittente non è ancora autenticato (dovrebbe interessare solo gli AP).
  • CVE-2020-26146 : riassemblaggio di frammenti crittografati con numeri di pacchetti non consecutivi.
  • CVE-2020-26147 : riassemblaggio di frammenti misti crittografati / di testo normale.
  • CVE-2020-26142 : elaborazione di frame frammentati come frame completi.
  • CVE-2020-26141 : non verifica il TKIP MIC dei frame frammentati.

È disponibile un documento di ricerca con ulteriori dettagli.