Evil Twin EAP-TLS

Reading time: 4 minutes

tip

Impara e pratica l'Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica l'Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)

Supporta HackTricks

A un certo punto ho avuto bisogno di utilizzare la soluzione proposta dal post qui sotto, ma i passaggi in https://github.com/OpenSecurityResearch/hostapd-wpe non funzionavano più su kali moderno (2019v3).
Comunque, è facile farli funzionare.
È sufficiente scaricare il hostapd-2.6 da qui: https://w1.fi/releases/ e prima di ricompilare nuovamente hostapd-wpe installare: apt-get install libssl1.0-dev

Analyzing and Exploiting EAP-TLS in Wireless Networks

Background: EAP-TLS in Wireless Networks

EAP-TLS è un protocollo di sicurezza che fornisce autenticazione reciproca tra client e server utilizzando certificati. La connessione viene stabilita solo se sia il client che il server autenticano i certificati dell'altro.

Challenge Encountered

Durante una valutazione, è stato riscontrato un errore interessante quando si utilizzava lo strumento hostapd-wpe. Lo strumento ha rifiutato la connessione del client a causa del certificato del client firmato da un'Autorità di Certificazione (CA) sconosciuta. Questo indicava che il client non si fidava del certificato del server falso, evidenziando configurazioni di sicurezza poco rigorose sul lato client.

Objective: Setting Up a Man-in-the-Middle (MiTM) Attack

L'obiettivo era modificare lo strumento per accettare qualsiasi certificato del client. Questo avrebbe consentito di stabilire una connessione con la rete wireless malevola e abilitare un attacco MiTM, potenzialmente catturando credenziali in chiaro o altri dati sensibili.

Solution: Modifying hostapd-wpe

L'analisi del codice sorgente di hostapd-wpe ha rivelato che la validazione del certificato del client era controllata da un parametro (verify_peer) nella funzione OpenSSL SSL_set_verify. Cambiando il valore di questo parametro da 1 (convalida) a 0 (non convalidare), lo strumento è stato reso in grado di accettare qualsiasi certificato del client.

Execution of the Attack

  1. Environment Check: Usa airodump-ng per monitorare le reti wireless e identificare i target.
  2. Set Up Fake AP: Esegui il hostapd-wpe modificato per creare un Access Point (AP) falso che imita la rete target.
  3. Captive Portal Customization: Personalizza la pagina di accesso del captive portal per apparire legittima e familiare all'utente target.
  4. De-authentication Attack: Facoltativamente, esegui un attacco di de-auth per disconnettere il client dalla rete legittima e collegarlo al fake AP.
  5. Capturing Credentials: Una volta che il client si connette al fake AP e interagisce con il captive portal, le sue credenziali vengono catturate.

Observations from the Attack

  • Su macchine Windows, il sistema potrebbe connettersi automaticamente al fake AP, presentando il captive portal quando si tenta di navigare sul web.
  • Su un iPhone, all'utente potrebbe essere chiesto di accettare un nuovo certificato e poi presentato con il captive portal.

Conclusion

Sebbene EAP-TLS sia considerato sicuro, la sua efficacia dipende fortemente dalla corretta configurazione e dal comportamento cauto degli utenti finali. Dispositivi mal configurati o utenti ignari che accettano certificati non autorizzati possono compromettere la sicurezza di una rete protetta da EAP-TLS.

Per ulteriori dettagli controlla https://versprite.com/blog/application-security/eap-tls-wireless-infrastructure/

References

tip

Impara e pratica l'Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica l'Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)

Supporta HackTricks