rushot/README.md

96 lines
3.4 KiB
Markdown
Raw Normal View History

2026-07-28 14:56:47 +00:00
# rushot
2026-07-28 16:26:06 -05:00
**rushot** es una reimplementación en **Rust** de la herramienta de ataque Wi-Fi WPA WPS PIN y escáner de redes WPS (*OneShot*). Diseñada para ofrecer máxima velocidad, eficiencia de memoria y ejecuciones seguras a bajo nivel.
**Autor:** JesusChapman
---
## 🚀 Características
- **Escaneo WPS Inteligente:** Interacción dinámica con `iw dev <interface> scan`, formateo con ancho de caracteres Unicode (`unicode-width`) y resaltado de color ANSI (redes vulnerables, bloqueadas y guardadas).
- **Algoritmos de PIN WPS** Generación automática de PINs según la dirección MAC (24-bit, 28-bit, 32-bit, D-Link, D-Link+1, ASUS, Airocon y PINs estáticos predefinidos).
- **Ataque Pixie Dust:** Integración directa con `pixiewps` para la captura de credenciales y extracción de la clave WPA PSK.
- **Ataque Bruteforce Online:** Algoritmo inteligente por fases (primera y segunda mitad de PIN) con cálculo de velocidad (segundos por PIN) y persistencia de sesión.
- **Conexión PBC (Push Button Connect):** Soporte para emparejamiento por botón WPS.
- **Persistencia de Resultados:** Guardado automático de credenciales obtenidas en `reports/stored.txt` y `reports/stored.csv`.
- **Soporte MediaTek:** Opción `--mtk-wifi` para activar el controlador en dispositivos MediaTek (`/dev/wmtWifi`).
---
## 📋 Requisitos
- **Permisos de Superusuario (Root):** Requerido para manipular la interfaz de red e interactuar con sockets Unix de `wpa_supplicant`.
- **Herramientas del Sistema:**
- `wpa_supplicant` (compilado con soporte WPS `CONFIG_WPS=y`)
- `iw` y `iproute2` (`ip`)
- `pixiewps` *(opcional, necesario únicamente para el ataque Pixie Dust `-K`)*
---
## 🛠️ Compilación e Instalación
```bash
git clone https://github.com/JesusChapman/rushot.git
cd rushot
cargo build --release
```
El binario compilado estará ubicado en `target/release/rushot`.
---
## 💻 Uso
```text
rushot 0.1.0
Autor: JesusChapman
Wi-Fi WPA WPS PIN attack and scanning tool in Rust
Uso: rushot -i <INTERFAZ> [OPCIONES]
```
### Argumentos Principales:
| Argumento | Descripción |
| :--- | :--- |
| `-i, --interface <wlan0>` | Nombre de la interfaz de red inalámbrica *(requerido)* |
| `-b, --bssid <mac>` | BSSID del punto de acceso objetivo |
| `-p, --pin <wps_pin>` | Especifica un PIN manual (4 u 8 dígitos) |
| `-K, --pixie-dust` | Ejecuta el ataque Pixie Dust |
| `-F, --pixie-force` | Ejecuta `pixiewps` con la opción `--force` |
| `-X, --show-pixie-cmd` | Muestra el comando de `pixiewps` ejecutado |
| `-B, --bruteforce` | Ejecuta ataque de fuerza bruta online |
| `--pbc` | Inicia conexión WPS por botón |
| `-d, --delay <n>` | Retardo entre intentos de PIN (segundos) |
| `-w, --write` | Guarda las credenciales obtenidas en `reports/` |
| `--iface-down` | Desactiva la interfaz al finalizar |
| `-l, --loop` | Modo en bucle continuo |
| `-r, --reverse-scan` | Invierte el orden de las redes en la lista mostrada |
| `--mtk-wifi` | Activa/desactiva controlador Wi-Fi MediaTek |
| `-v, --verbose` | Salida detallada de depuración |
---
## 📌 Ejemplos
Escaneo interactivo de redes WPS en `wlan0`:
```bash
sudo rushot -i wlan0
```
Ataque Pixie Dust a un BSSID específico y guardado de resultados:
```bash
sudo rushot -i wlan0 -b 00:90:4C:C1:AC:21 -K -w
```
Ataque de fuerza bruta online con retardo de 2 segundos:
```bash
sudo rushot -i wlan0 -b 00:90:4C:C1:AC:21 -B -d 2.0
```
---
## 📄 Licencia
Este proyecto se distribuye balo licensia [GPL-3.0](./LICENSE)