Ataques a WPS
WPS (WiFi Protected Setup) es la función que permite conectar dispositivos a la WiFi pulsando un botón o metiendo un PIN de 8 dígitos, para evitar teclear la contraseña larga. El problema: ese PIN es un punto débil que, mal implementado, permite recuperar la contraseña WPA de la red sin crackear el handshake. Es uno de los ataques WiFi más rentables cuando WPS está activo, porque evita por completo el crackeo offline de la clave.
Por qué WPS es débil
Sección titulada «Por qué WPS es débil»El PIN de 8 dígitos no se valida como un todo: se comprueba en dos mitades (los primeros 4 dígitos y los siguientes 3, el 8º es checksum). Eso reduce drásticamente el espacio de búsqueda: de 10^8 a ~11.000 intentos como mucho. Y con el Pixie Dust, a menudo basta una sola interacción.
Descubrir APs con WPS
Sección titulada «Descubrir APs con WPS»wash -i wlan0mon # lista APs con WPS activo, su estado y si está "locked"# columnas clave: WPS version, WPS locked (si no está locked, atacable)PIN bruteforce (Reaver / Bully)
Sección titulada «PIN bruteforce (Reaver / Bully)»# atacar el PIN por fuerza bruta (por las dos mitades)reaver -i wlan0mon -b <BSSID> -c <canal> -vvbully -b <BSSID> -c <canal> wlan0mon# al recuperar el PIN -> reaver devuelve también la contraseña WPA (PSK)Lento si el AP no está mal configurado (puede tardar horas y algunos bloquean tras varios intentos: “WPS locked”).
Pixie Dust (el ataque rápido)
Sección titulada «Pixie Dust (el ataque rápido)»El Pixie Dust explota una debilidad en cómo algunos APs generan los nonces del intercambio WPS: permite calcular el PIN offline a partir de una sola transacción, en segundos/minutos en vez de horas:
reaver -i wlan0mon -b <BSSID> -c <canal> -K 1 -vv # -K activa Pixie Dust# o bully con --pixiewps / airgeddon (menú WPS -> Pixie Dust)Muchos chipsets (Realtek, Ralink, Broadcom antiguos) son vulnerables → PIN y contraseña en minutos.
PIN nulo y PINs por defecto
Sección titulada «PIN nulo y PINs por defecto»# algunos APs aceptan un PIN vacío o tienen PINs por defecto/calculables por BSSID# bases de datos de PINs por defecto (según fabricante/MAC)# airgeddon y wifite integran estas comprobacionesHerramientas que lo automatizan
Sección titulada «Herramientas que lo automatizan»wifite2 # automatiza WPS (Pixie+bruteforce), WPA handshake, PMKID -> todo-en-unoairgeddon # menú interactivo con todas las variantes WPSreaver/bully + pixiewps # las piezas de bajo nivelPara la defensa
Sección titulada «Para la defensa»- Deshabilitar WPS por completo en el router — es la mitigación definitiva y casi siempre innecesario.
- Si no se puede, asegurar que no es vulnerable a Pixie Dust (firmware parcheado) y que bloquea tras intentos fallidos (WPS lock).
- No usar PINs por defecto; preferir el método de botón (PBC) solo bajo demanda, no PIN permanente.
- Una contraseña WPA fuerte no protege si WPS está activo y es vulnerable: WPS la entrega directamente.
Checklist de prueba
Sección titulada «Checklist de prueba»- Descubrir APs con WPS activo (wash) y si está locked
- Pixie Dust primero (reaver -K / pixiewps) — rápido
- PIN bruteforce (reaver/bully) si Pixie falla
- PIN nulo / PINs por defecto según fabricante
- Recuperar la contraseña WPA del PIN
- Automatizar con wifite2/airgeddon
- Blue: ¿WPS deshabilitado o parcheado + lock?
- Documentar que WPS entrega la clave sin crackearla