Tutorial: WPS Pixie Dust Attack

Publicado por D3M0N, 07 de Agosto de 2024, 03:18:19 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

D3M0N

Tutorial de vulnerabilidad: Ataque Pixie Dust de WPS

Este artículo trata sobre el ataque Pixie Dust a WPS. Es mucho más simple que el ataque de handshake porque está automatizado en su mayor parte con una herramienta de Kali Linux / ParrotOS llamada Wifite2.

Reconocer la red objetivo

1.- Ejecute wifite2 con el comando sudo y el indicador kill. Esto habilitará el modo de monitor y le mostrará la lista de redes disponibles.

Código: bash
sudo wifite --kill

Tambien se puede indicar que solo queremos atacar WPS con:

Código: bash
sudo wifite --kill --wps --wps-only

2.- Consulta las redes con WPS = yes. Éstos son tus objetivos potenciales.

3.- Ahora, espera hasta que veas tu objetivo y luego presiona "Ctrl+C". Esto detiene el reconocimiento y te solicita que ingreses el número del objetivo:


Ataque la red objetivo

1.- Comprueba el número del objetivo y escríbelo en la consola. En nuestro caso, es 1. Wifite se encargará del resto.

2.- Si tiene éxito, wifite mostrará el PIN WPS descifrado y la contraseña de la red:


Curiosamente, este ataque puede incluso detectar las contraseñas más sofisticadas:




Descripción general de la vulnerabilidad: ataque Pixie Dust de WPS

En 2013, el investigador Dominique Bongard descubrió una situación extraña: descubrió que algunos puntos de acceso inalámbricos tenían algoritmos débiles para generar nonces.

Estos algoritmos se conocen como E-S1 y E-S2 y se supone que son secretos. Si se descubren los resultados de los algoritmos, pueden revelar el hash del PIN WPS de un punto de acceso.

Esta imagen describe cómo funciona el WPS:


Las acciones más interesantes se ejecutan durante la transmisión de mensajes M1 y M3. Con el mensaje M1, el punto de acceso envía dos cosas:

  • N1, a 128-bit random nonce generated by Enrollee
  • PKE, a Diffie-Hellman public key of the Enrollee.

El mensaje M3 es la parte más importante de este ataque, ya que contiene 2 hashes que se utilizarán en cálculos posteriores:

  • E-Hash1 = HMACAuthKey(E-S1 || PSK1 || PKE || PKR)
  • E-Hash2 = HMACAuthKey(E-S2 || PSK2 || PKE || PKR)

Para encontrar E-S1 y E-S2, primero debemos obtener PSK1 y PSK2. E-S1 y E-S2 se calculan justo después del nonce N1, lo que produce la misma función. Luego, aplicamos fuerza bruta al estado de esa función con N1 para calcular los valores E-S1 y E-S2.

Luego, extraemos por fuerza bruta PSK1 de E-Hash1 y PSK2 de E-Hash2. Como resultado, recibimos 2 valores:

  • PSK1 – los primeros cuatro números del PIN de WPS
  • PSK2 – los últimos cuatro números del PIN de WPS


Por último, ejecute el protocolo WPS completo para obtener las credenciales del punto de acceso inalámbrico.

Afortunadamente, el equipo detrás de la herramienta wifite ha simplificado este proceso a un proceso automatizado.

REFERENCIA:
You are not allowed to view links. Register or Login

badder

Muy bueno, wifite tiene de todo.
Pero en mi caso, por las dudas siempre le clavo un reaver antes a cada router para ver si es vulnerable.
Broadcom jamás pude atacarlo. Realtek, Atheros o Ralinkte tuve un poco más de suerte.

Dejo los comandos para los más despistados.
Código: php
sudo reaver -i wlan0 -b mac_address -c canal -K 1 -Z -vvv
Si no tengo suerte con ese paso a:
Código: php
sudo reaver -i wlan0 -b mac_address -c canal -S -N -L -d 10 -r 3:15 -T .5 -vv