
Una herramienta de Pentest/Cracking inalámbrico (WPA/WPA2). Captura y descifra el handshake de 4 vías y la clave PMKID. Además, soporta un modo de desautenticación/jammer para pruebas de estrés.
WiFiBroot está diseñado para proporcionar a los clientes una instalación todo en uno para descifrar redes WiFi (WPA/WPA2). Depende en gran medida de scapy, una biblioteca de manipulación de paquetes con muchas funciones en Python. Casi todos los procesos dependen de alguna manera de las capas de scapy y otras funciones, excepto para operar la interfaz inalámbrica en un canal diferente. Eso se hará mediante el comando nativo de Linux iwconfig para lo cual quizás necesites privilegios de sudo. Actualmente proporciona cuatro modos de trabajo independientes para tratar con las redes objetivo. Dos de ellos son métodos de descifrado en línea, mientras que el otro se ejecuta en modo fuera de línea. El modo fuera de línea se proporciona para descifrar hashes guardados de los dos primeros modos. Uno es para el ataque de desautenticación en redes inalámbricas y también puede usarse como un manejador de interferencias. Se puede ejecutar en una variedad de plataformas Linux y al menos requiere un WN727N de tp-link para funcionar correctamente.
Solo funciona con Python 2
WiFiBroot depende en gran medida de scapy. Por lo tanto, necesitarías tener scapy instalado. Casi todas las demás bibliotecas probablemente ya estén instaladas en tu sistema. Asegúrate de que la versión que instales de scapy sea <=2.4.0. Las versiones más recientes probablemente arrojarán algunos errores desconocidos.
$ sudo pip install scapy==2.4.0
Se espera que el script se ejecute bajo sudo, pero seguirá funcionando incluso si no se ejecuta en modo root. Los argumentos básicos necesarios son:
$ sudo python wifibroot.py -i [interface] -d /path/to/dictionary -m [mode]
WiFiBroot utiliza modos para identificar qué ataque deseas realizar en tu objetivo. Actualmente, hay tres modos disponibles. El uso de cada modo se puede ver proporcionando la opción --help/-h justo después de la opción -m/--mode. Aquí hay una lista de los modos disponibles y lo que hacen:
Sintaxis:
$ python wifibroot.py [--mode [modes]] [--options]
$ python wifibroot.py --mode 2 -i wlan1mon --verbose -d /path/to/list -w pmkid.txt
Modos:
# Descripción Valor
01 Capturar handshake de 4 vías y descifrar código MIC 1
02 Capturar y descifrar PMKID (Ataque PMKID) 2
03 Realizar descifrado manual en tipos de captura
disponibles. Ver --list-types 3
04 Desautenticación. Desconectar dos estaciones
e interferir el tráfico. 4
Use -h, --help después de -m, --mode para obtener ayuda sobre los modos.
Cada modo tiene un propósito específico y tiene sus propias opciones:
Modo:
01 Capturar handshake de 4 vías y descifrar código MIC 1
Opciones:
Args Descripción Requerido
-h, --help Mostrar este manual de ayuda NO
-i, --interface Interfaz de monitor a usar SÍ
-v, --verbose Desactivar modo verbose. NO
-t, --timeout Retardo de tiempo entre dos
solicitudes de desautenticación. NO
-d, --dictionary Diccionario para descifrar SÍ
-w, --write Escribir el handshake capturado
en un archivo separado NO
--deauth Número de tramas de
desautenticación a enviar NO
Filtros:
-e, --essid ESSID de la red en escucha
-b, --bssid BSSID de la red objetivo.
-c, --channel Canal en el que la interfaz debe escuchar.
Por defecto: TODOS
Modo:
02 Capturar y descifrar PMKID (Ataque PMKID) 1
Opciones:
Args Descripción Requerido
-h, --help Mostrar este manual de ayuda NO
-i, --interface Interfaz de monitor a usar SÍ
-v, --verbose Desactivar modo verbose. NO
-d, --dictionary Diccionario para descifrar SÍ
-w, --write Escribir el handshake capturado
en un archivo separado NO
Filtros:
-e, --essid ESSID de la red en escucha
-b, --bssid BSSID de la red objetivo.
-c, --channel Canal en el que la interfaz debe escuchar.
Por defecto: TODOS
Modo:
03 Realizar descifrado manual en tipos de captura
disponibles. Ver --list-types 3
Opciones:
Args Descripción Requerido
-h, --help Mostrar este manual de ayuda NO
--list-types Listar tipos de descifrado disponibles NO
--type Tipo de captura a descifrar SÍ
-v, --verbose Desactivar modo verbose. NO
-d, --dictionary Diccionario para descifrar SÍ
-e, --essid ESSID de la red objetivo.
Solo para tipo HANDSHAKE SÍ
-r, --read Archivo de captura a descifrar SÍ
Modo:
04 Desautenticación. Desconectar dos estaciones
e interferir el tráfico. 4
Opciones:
Args Descripción Requerido
-h, --help Mostrar este manual de ayuda NO
-i, --interface Interfaz de modo monitor a usar SÍ
-0, --count Número de tramas de desautenticación
a enviar. '0' especifica
tramas ilimitadas SÍ
--ap Dirección MAC del Punto de Acceso NO
--client Dirección MAC del STA (Estación) NO
Para capturar el handshake de 4 vías y descifrar el código MIC:
$ python wifibroot.py --mode 1 -i wlan1mon --verbose -d dicts/list.txt -w output.cap
Para capturar y descifrar PMKID:
$ python wifibroot.py --mode 2 -i wlan1mon --verbose -d dicts/list.txt -w output.txt
Descifrar sin conexión Handshake y PMKID:
$ python wifibroot.py --mode 3 --type handshake --essid "TARGET ESSID" --verbose -d dicts/list.txt --read output.cap
$ python wifibroot.py --mode 3 --type pmkid --verbose -d dicts/list.txt --read output.txt
Ataque de desautenticación en varias formas:
# Ataque de desautenticación definitivo:
$ python wifibroot.py --mode 4 -i wlan1mon -00 --verbose
# Desconectar todos los clientes de un Punto de Acceso:
$ python wifibroot.py --mode 4 -i wlan1mon --ap [AP MAC] --verbose
# Desconectar un cliente específico:
$ python wifibroot.py --mode 4 -i wlan1mon --ap [AP MAC] --client [STA MAC] --verbose
Sitio web: https://www.shelvoide.com
Twitter: @hash3liZer
Correo electrónico: [email protected]