<aside> ⭐ Hydra es una herramienta de password auditing y brute force para múltiples servicios de red. Se utiliza para pruebas autorizadas de seguridad, validación de credenciales y auditorías controladas. Soporta, entre otros, SSH y varios módulos HTTP como HTTP(S)-GET, HTTP(S)-FORM-GET y HTTP(S)-FORM-POST. (kali.org)
</aside>
En Kali Linux, Hydra está disponible como paquete hydra y se puede instalar con:
sudo apt install hydra
Para revisar la sintaxis y los módulos disponibles:
hydra -h
<aside>
✅
Usa -V para ver cada intento, -f para detenerte al encontrar credenciales válidas y -t para ajustar el número de hilos. En la documentación de Kali, -t aparece como TASKS dentro de la sintaxis general de Hydra. (kali.org)
</aside>
| Opción | Descripción |
|---|---|
-l <usuario> |
Usuario único |
-L <archivo> |
Lista de usuarios |
-p <password> |
Contraseña única |
-P <archivo> |
Lista de contraseñas |
-t <n> |
Número de hilos / tareas |
-V |
Muestra intentos en tiempo real |
-f |
Se detiene al encontrar una credencial válida |
-s <puerto> |
Define un puerto no estándar |
ssh://host[:puerto] |
Formato recomendado para el servicio SSH |
http-get |
Módulo para autenticación HTTP básica o endpoint GET |
http-get-form |
Módulo para formularios web con método GET |
http-post-form |
Módulo para formularios web con método POST |
<aside> 💡 La forma general de uso de Hydra es:
hydra [[[-l LOGIN|-L FILE] [-p PASS|-P FILE]] | [-C FILE]] [-e nsr] [-o FILE] [-t TASKS] [-M FILE [-T TASKS]] [-w TIME] [-W TIME] [-f] [-s PORT] [-x MIN:MAX:CHARSET] [-c TIME] [-ISOuvVd46] [-m MODULE_OPT] [service://server[:PORT][/OPT]]
Esto coincide con la documentación de Kali para Hydra. (kali.org)
</aside>
roothydra -l root -P /usr/share/seclists/Passwords/xato-net-10-million-passwords.txt ssh://IP:PUERTO -t 2 -v
<aside>
⚠️
En muchas distribuciones la ruta correcta del wordlist es seclists con s minúscula: /usr/share/seclists/... o /usr/share/wordlists/..., según la instalación. Conviene verificar la ruta antes de ejecutar el comando.
</aside>
Notas del comando:
-l root: prueba únicamente el usuario root-P ...: usa un diccionario de contraseñasssh://IP:PUERTO: especifica el servicio SSH