Auditar contrasinal Wi-Fi WPA2-EAP con Wifite
LIMITACIÓN DE RESPONSABILIDADE
O autor do presente documento declina calquera responsabilidade asociada ao uso incorrecto e/ou malicioso que puidese realizarse coa información exposta no mesmo. Este documento foi xerado para uso didáctico e debe ser empregado en contornas privadas e virtuais controladas co permiso correspondente do administrador desas contornas.
O uso de Wifite ou calquera outra ferramenta de auditoría en redes Wi-Fi sen autorización expresa é ILEGAL.
1. Resumo
Esta práctica introduce WPA2-EAP (Enterprise), un sistema de autenticación baseado en servidor RADIUS que se emprega en contornas empresariais.
Verificaremos que Wifite NON pode auditar WPA2-EAP: wifite detecta automaticamente o tipo de cifrado WPA-E e salta o obxectivo sen nin sequera intentar o ataque, xa que é consciente de que este protocolo non é crackeable mediante os seus métodos.
Obxectivos de aprendizaxe:
- Configurar un escenario WPA2-EAP con FreeRADIUS + hostapd
- Comprender a diferenza entre autenticación PSK e EAP
- Verificar que wifite identifica e descarta automaticamente obxectivos WPA-Enterprise
- Comprender o fluxo de autenticación 802.1X/EAP/PEAP
- Identificar as limitacións de Wifite en contornas empresariais
2. Material necesario
Hardware/Software:
- Host alumnado · Máquina virtual GNU/Linux Kali amd64
- RAM ≥ 2048 MB · CPU ≥ 2 cores · PAE/NX habilitado
Ferramentas (xa instaladas en Kali):
wifite, hostapd, freeradius, wpa_supplicant, mac80211_hwsim, aircrack-ng, tshark
Referencias:
- [0] 2-Taller-HE-Practica-WiFi-1.pdf
- [1] FreeRADIUS documentation
- [2] IEEE 802.1X-2010
- [3] RFC 4017 - EAP para WLANs
3. Escenario e topoloxía
| Rol | Interface | Namespace | IP | Estado tras wifilabctl up |
|---|---|---|---|---|
AP WPA2-EAP (bridge br-radius) |
wlan0 |
wifi_ap_wlan0 |
192.168.50.10 |
✅ Automático (hostapd wpa-eap-corp.conf) |
| FreeRADIUS | — | (namespace principal) | 192.168.50.1 |
✅ Automático (bridge br-radius) |
Cliente EAP (sen ca_cert) |
wlan1 |
wifi_cliente_wlan1 |
(DHCP dnsmasq) | ✅ Automático (wpa_supplicant) |
| MITM preparado | wlan2 |
mitm_wlan2 |
192.168.50.100 |
⏳ NS listo, sen servizos (Práctica 2-3) |
| Monitor / Atacante (Wifite) | wlan3 |
(global) | — | ⏳ Interface libre |
SSID: EMPRESA-XYZ · Usuario EAP: ana · Contrasinal: 1234 · Canal: 6
RADIUS: 192.168.50.1:1812 · secret: testing123
[wlan1: Cliente PEAP] ----wireless----> [wlan0: AP WPA2-EAP]
|
[br-radius]
|
[FreeRADIUS :1812]
(namespace principal)
^
[wlan3mon: Wifite]
(captura handshake → NON crackeable)
💡
wifilabctl up eap_mitmlevanta automaticamente AP, FreeRADIUS e cliente. As terminais son para o ataque con Wifite e a análise posterior, non para configuración manual.
4. Procedemento
Resumo de terminais:
Terminal Rol 1 Arrancar o escenario e monitorizar logs 2 Executar Wifite e observar o rexeitamento automático de WPA-E 3 Análise de tráfico EAP con tshark (opcional)
Terminal 1 — Arrancar o escenario
# Arrancar o escenario WPA2-EAP con RADIUS
sudo wifilabctl up eap_mitm
# Verificar que AP, RADIUS e cliente están activos
sudo wifilabctl status
Saída esperada:
[*] Informe de Estado do Laboratorio
============================================================
NAMESPACE INTERFACE IP ESTADO
---------------------------------------------------------------------------
wifi_cliente_wlan1 wlan1 - UP
wifi_ap_wlan0 wlan0 192.168.50.10/24 UP
mitm_wlan2 wlan2 192.168.50.100/24 UP
---------------------------------------------------------------------------
Interfaces GLOBAIS / ATACANTE:
(global) wlan3 (host/monitor) LISTO
⚠️ FreeRADIUS executa no namespace principal (non illado), escoitando en
192.168.50.1:1812a través do bridgebr-radius. Os valores de BSSID e MAC obtéñense consudo wifilabctl status.
Opcionalmente, abrir os logs en tempo real para observar a autenticación PEAP:
# Logs en tempo real (deixar abertos durante o ataque)
sudo wifilabctl logs eap_mitm
# ou directamente:
tail -f /home/kali/wifiLab/run/eap_mitm/freeradius.log
tail -f /home/kali/wifiLab/run/eap_mitm/hostapd_ok.log
tail -f /home/kali/wifiLab/run/eap_mitm/wpa_supplicant.log
Terminal 2 — Ataque con Wifite e demostración do rexeitamento automático
Abrir unha segunda terminal e seguir os pasos:
Paso 1: Preparar o entorno
Paso 2: Lanzar Wifite
Paso 3: Avisos de procesos en conflito — non matar
[!] Conflicting processes: NetworkManager (PID 689), wpa_supplicant (PID 6303),
hostapd (PID 6609), wpa_supplicant (PID 6676), dhclient (PID 6704)
[!] If you have problems: kill -9 PID or re-run wifite with --kill
⚠️ Non matar eses procesos. Son o AP e o cliente do escenario. Ignorar e continuar.
Paso 4: Wifite activa o modo monitor automaticamente
Con mac80211_hwsim, Wifite detecta a interface dispoñible e activa o modo monitor sen intervención:
Interface PHY Driver Chipset
-----------------------------------------------------------------------
1. wlan3 phy3 ?????? non-mac80211 device? (report this!)
[+] Enabling monitor mode on wlan3... enabled!
💡 Wifite usa
wlan3directamente xa que é a única interface non asignada a un namespace illado. Non é necesario seleccionar manualmente.
Paso 5: Escaneo — WPA2-EAP aparece claramente como WPA-E
Wifite escaneará en modo monitor. WPA2-EAP identifícase de forma inequívoca como WPA-E, diferenciándose de WPA2 (PSK):
NUM ESSID CH ENCR PWR WPS CLIENT
--- ------------------------- --- ----- ---- --- ------
1 EMPRESA-XYZ 6 WPA-E 72db no
Premer Ctrl+C cando apareza EMPRESA-XYZ. Introducir 1 e premer Enter.
💡 Wifite si distingue WPA2-PSK de WPA2-EAP no escaneo: amosa
WPA2para PSK eWPA-Epara Enterprise.
Paso 6: Wifite descarta o obxectivo sen intentar ningún ataque (resultado esperado)
Ao seleccionar o obxectivo, Wifite non captura handshake, non lanza aircrack-ng, nin aplica wordlist. Descarta o obxectivo de inmediato:
[+] (1/1) Starting attacks against A2:94:69:2E:1F:47 (EMPRESA-XYZ)
[!] Skipping. Target is using WPA-Enterprise and can not be cracked.
[+] Finished attacking 1 target(s), exiting
[!] Note: Leaving interface in Monitor Mode!
[!] To disable Monitor Mode when finished: airmon-ng stop wlan3mon
⚠️ RESULTADO ESPERADO: Skipping. Target is using WPA-Enterprise and can not be cracked.
Wifite recoñece que WPA-Enterprise está completamente fóra das súas capacidades e remata sen realizar ningunha acción ofensiva.
5. Limitacións de Wifite con WPA2-EAP
Wifite NON pode auditar WPA2-EAP: identifica WPA-E no escaneo e descarta o obxectivo de inmediato con Skipping. Target is using WPA-Enterprise and can not be cracked. Sen capturar handshake nin lanzar ningún ataque.
wifite --help | grep -i "evil\|twin\|eap\|hostapd\|radius\|mitm\|mana\|proxy\|forward"
# (sen saída correspondente — Wifite NON soporta este tipo de ataque)
# Conclusión: Wifite NON soporta ataques Evil Twin, EAP nin hostapd, nin MITM.
⚠️ IMPORTANTE: Wifite está deseñado para auditoría pasiva (captura de handshakes), NON para ataques activos (Evil Twin, MITM, proxy RADIUS).
A única forma de capturar credenciais WPA2-EAP é mediante un Evil Twin (AP falso) que:
1. Suplante ao AP lexítimo (mesmo SSID)
2. Configure un servidor RADIUS falso (hostapd-wpe)
3. Aproveite que o cliente non valide o certificado do servidor (ca_cert comentado)
4. Capture o hash MSCHAPv2 durante a autenticación PEAP
5. Crackee o hash con hashcat ou jtr
⚠️ Este escenario está cuberto na Práctica 2 EAP EVIL TWIN.
6. Preguntas de reflexión
-
Por que WPA2-EAP é máis seguro que WPA2-PSK?
- Autenticación centralizada: cada usuario ten credenciais únicas
- Rotación de credenciais: pódense revocar usuarios sen cambiar o contrasinal da rede
- Auditoría: FreeRADIUS rexistra quen se conecta e cando
- Sen handshake crackeable: o contrasinal non se deriva do tráfico capturado
-
Que diferenza hai entre WPA2-PSK e WPA2-EAP na derivación de claves?
- PSK: contrasinal compartido → PBKDF2 → PMK (crackeable offline)
- EAP: credenciais individuais → servidor RADIUS → MSK → PMK (non crackeable sen RADIUS)
-
Wifite pode auditar WPA2-EAP en algún escenario?
- NON. Wifite detecta
WPA-Ee salta o obxectivo automaticamente sen realizar ningún ataque - Non ten capacidades de Evil Twin nin servidor RADIUS falso
- Precisaríanse ferramentas especializadas como
hostapd-wpe(ver Práctica 2-2)
- NON. Wifite detecta
-
Que vulnerabilidades ten WPA2-EAP?
- Cliente sen validación de certificado (
ca_certcomentado) → susceptible a Evil Twin - MSCHAPv2 débil: se se captura o hash (con Evil Twin), pódese crackear con hashcat
- Servidor RADIUS mal configurado: certificados caducados, secrets débiles
- Cliente sen validación de certificado (
-
Como mellorar a seguridade de WPA2-EAP?
- Obrigar validación de certificado no cliente (
ca_certconfigurado correctamente) - Usar EAP-TLS en lugar de PEAP/MSCHAPv2 (autenticación con certificados cliente)
- Implementar 802.1X con NAC (Network Access Control)
- Rotar certificados RADIUS periodicamente
- Obrigar validación de certificado no cliente (
-
É posible un ataque Man-in-the-Middle contra WPA2-EAP?
- SI, se o cliente non valida o certificado do servidor (ver Práctica 2-3)
- NON, se o cliente ten
ca_certcorrectamente configurado
7. Limpeza do laboratorio
Terminal 1:
# Deter e eliminar o escenario completamente
sudo wifilabctl reset
# Verificar que non quedan namespaces
ip netns list
Terminal 2 (se wlan3 quedou en modo monitor):