Este artículo se ha escrito exclusivamente con fines informativos y de investigación. Les instamos a cumplir con las normas de trabajo con redes y la ley, y a recordar siempre la seguridad de la información.
Introducción
A principios de la década de 1990, cuando apareció el Wi-Fi, se creó el algoritmo Wired Equivalent Privacy, que debía garantizar la confidencialidad de las redes Wi-Fi. Sin embargo, WEP resultó ser un algoritmo de protección ineficaz que puede ser fácilmente violado.
Surgió un nuevo algoritmo de protección, Wi-Fi Protected Access II, que hoy en día utilizan la mayoría de los puntos de acceso Wi-Fi. WPA2 utiliza un algoritmo de cifrado, AES, que es extremadamente difícil de romper.
¿Y dónde está la vulnerabilidad?
La desventaja de WPA2 es que la contraseña cifrada se transmite cuando los usuarios se conectan durante el denominado handshake de 4 vías. Si capturamos el handshake, conoceremos la contraseña cifrada y solo tendremos que descifrarla. Para esto, utilizaremos aircrack-ng.
¿Entonces, cómo se hace el ataque?
Paso 1. Identificamos la interfaz
Primero, necesitamos saber qué interfaz de red necesitamos, para ello ingresamos el comando:
$ ifconfigObtenemos la respuesta:
eth0 no wireless extensions.
wlan0 IEEE 802.11abgn ESSID:off/any
Mode:Managed Access Point: Not-Associated Tx-Power=15 dBm
Retry short limit:7 RTS thr:off Fragment thr:off
Encryption key:off
Power Management:off
lo no wireless extensionsEn mi caso, hay tres interfaces, de las cuales dos no tienen extensiones inalámbricas (no wireless extensions). Por lo tanto, solo nos interesa wlan0.
Paso 2. Ponemos el adaptador de red en modo monitor
Poner el adaptador de red en modo monitor nos permitirá ver el tráfico inalámbrico que pasa a nuestro alrededor. Para hacerlo, ingresamos el comando:
$ airmon-ng start wlan0Tenga en cuenta que airmon-ng ha renombrado su interfaz (en mi caso se llama mon0, pero aún así, debe verificarlo).
Paso 3. Capturamos el tráfico
Ahora que nuestro adaptador de red está en modo monitor, podemos capturar el tráfico que pasa cerca de nosotros, usando el comando airodump-ng. Ingresamos:
$ airodump-ng mon0 
Tenga en cuenta que todos los puntos de acceso visibles se enumeran en la parte superior de la pantalla, y los clientes, en la parte inferior.
Paso 4. Concentramos la captura en un punto de acceso específico.
Nuestro siguiente paso es concentrar nuestros esfuerzos en uno de los puntos de acceso y en su canal. Nos interesa el BSSID y el número de canal del punto de acceso que vamos a hackear. Vamos a abrir otra terminal y escribir:
$ airodump-ng --bssid 08:86:30:74:22:76 -c 6 -w WPAcrack mon0 
- 08:86:30:74:22:76 BSSID del punto de acceso
- -c 6 canal en el que opera el punto de acceso Wi-Fi
- WPAcrack archivo en el que se grabará el handshake
- mon0 adaptador de red en modo monitor
Como puedes ver en la captura de pantalla anterior, ahora nos estamos concentrando en capturar datos de un punto de acceso con ESSID Belkin276 en el canal 6. ¡Mantenemos la terminal abierta!
Paso 5. Capturando el handshake
Para capturar la contraseña encriptada, necesitamos que un cliente se autentique (se conecte a Wi-Fi). Si ya está autenticado, podemos desautenticarlo (desconectarlo), entonces el sistema se volverá a autenticar automáticamente (se volverá a conectar), lo que nos permitirá obtener la contraseña encriptada.
Es decir, solo necesitamos desconectar a los usuarios conectados para que se vuelvan a conectar. Para esto abrimos otra terminal y escribimos:
$ aireplay-ng --deauth 100 -a 08:86:30:74:22:76 mon0 
- 100 número de usuarios que serán desautenticados
- 08:86:30:74:22:76 BSSID del punto de acceso
- mon0 adaptador de red
Ahora, al reconectarse, la ventana que dejamos en el paso anterior capturará el handshake. Regresemos a nuestra terminal de airodump-ng y echemos un vistazo.

Observa la línea superior a la derecha, airodump-ng mostró: «Handshake WPA». ¡Es decir, hemos capturado exitosamente la contraseña encriptada! ¡Este es el primer paso hacia el éxito!
Paso 6. Cracking la contraseña
Ahora que tenemos la contraseña encriptada en nuestro archivo WPAcrack, podemos iniciar el proceso de cracking de la contraseña. Pero para esto necesitamos tener una lista de contraseñas que queremos utilizar. Se puede encontrar una lista así en 5 minutos en Google. Yo usaré la lista de contraseñas por defecto que viene incluida en aircrack-ng: BackTrack darkcOde.
Abrimos una nueva terminal y escribimos:
$ aircrack-ng WPAcrack-01.cap -w /pentest/passwords/wordlists/darkc0de 
- WPAcrack-01.cap archivo en el que grabamos el handshake (airodump-ng agregó -01.cap al final)
- /pentest/passwords/wordlist/darkc0de абсолютный путь к списку паролей
¿Cuánto tiempo tomará esto?
Este proceso puede tomar mucho tiempo. Todo depende de la longitud de tu lista de contraseñas, puedes esperar desde unos minutos hasta varios días. En mi procesador Intel de dos núcleos, aircrack-ng crackea ligeramente más de 800 contraseñas por segundo.
Cuando se encuentre la contraseña, aparecerá en su pantalla. El éxito o no del intento de contraseña depende de su lista. Si no logró encontrar la contraseña con una lista, no se desespere, pruebe con otra.
Consejos para el uso
- Este tipo de ataque es efectivo para adivinar contraseñas de listas, pero prácticamente inútil para intentos aleatorios. Todo se reduce al tiempo. Si el Wi-Fi está protegido con una contraseña promedio de letras latinas y números, un intento aleatorio podría tardar varios años.
- Al elegir una lista de contraseñas, es importante tener en cuenta factores geográficos. Por ejemplo, no tiene sentido intentar adivinar en un restaurante en París con una lista de contraseñas rusas.
- Si está hackeando un Wi-Fi doméstico, intente obtener algunos datos personales de la víctima (nombre, apellido, fecha de nacimiento, nombre de la mascota, etc.) y genere una lista adicional de contraseñas a partir de esta información.
- Después de capturar el handshake, desconecte aireplay-ng (no haga sufrir a los usuarios inocentes).
Fuente: habr.com
