Hydra – Herramienta de Fuerza Bruta

Hydra es un descifrador de inicio de sesión de red rápido y potente que admite numerosos protocolos. Permite probar credenciales en aplicaciones web, SSH, FTP, bases de datos y más.


⭐ ¿Por qué es tan utilizada?


🛠 Instalación

Ver si ya está instalado

hydra -h

Instalar en Debian/Ubuntu

sudo apt-get update -y
sudo apt-get install -y hydra

🧩 Uso Básico

Sintaxis general

hydra [login_options] [password_options] [attack_options] [service_options]


🔧 Parámetros principales

Parámetro Descripción Ejemplo
-l LOGIN / -L FILE Usuario único o lista de usuarios hydra -l <user> / hydra -L <userlist>
-p PASS / -P FILE Contraseña única o lista hydra -p <pass> / hydra -P <passlist>
-t TASKS Número de hilos hydra -t 4
-f Finaliza al primer login válido hydra -f
-s PORT Puerto no estándar hydra -s 2222
-v / -V Verbose / Verbose plus hydra -V
service://server Servicio + objetivo hydra ssh://<ip>

🔌 Servicios soportados por Hydra

Servicio Hydra Protocolo Uso Ejemplo (plantilla segura)
ftp FTP Credenciales FTP hydra -L <users> -P <passes> ftp://<ip>
ssh SSH Acceso remoto seguro hydra -L <users> -P <passes> ssh://<ip>
http-get / http-post-form HTTP Formularios o auth básica hydra <host> http-post-form "<ruta>:user=^USER^&pass=^PASS^:F=<fail>"
smtp SMTP Servidores de correo hydra -L <users> -P <passes> smtp://<host>
pop3 POP3 Email hydra pop3://<host>
imap IMAP Email remoto hydra imap://<host>
mysql MySQL Bases de datos hydra mysql://<ip>
mssql MSSQL Bases de datos MS hydra mssql://<ip>
vnc VNC Escritorio remoto hydra -P <passes> vnc://<ip>
rdp RDP Escritorio remoto Windows hydra -L <users> -P <passes> rdp://<ip>

🧪 Casos Prácticos y Ejemplos

1. Fuerza Bruta en Autenticación HTTP Básica

Objetivo: Un sitio web (www.example.com) con autenticación básica HTTP.
Archivos: Listas de usernames.txt y passwords.txt.

hydra -L usernames.txt -P passwords.txt www.example.com http-get

2. Ataque a Múltiples Servidores SSH

Objetivo: Varios servidores SSH listados en targets.txt.
Credenciales Probables: Usuario root, contraseña toor.

hydra -l root -p toor -M targets.txt ssh

3. Prueba de Credenciales FTP en Puerto No Estándar

Objetivo: Servidor FTP en ftp.example.com usando el puerto 2121.
Archivos: Listas de usernames.txt y passwords.txt.
Modo Verbose:

hydra -L usernames.txt -P passwords.txt -s 2121 -V ftp.example.com ftp

4. Fuerza Bruta en Formulario Web de Login (POST)

Objetivo: Formulario de login en www.example.com/login.
Usuario Conocido: admin.
Parámetros del Formulario: user=^USER^&pass=^PASS^.
Indicador de Éxito: Código de estado HTTP 302.

hydra -l admin -P passwords.txt www.example.com http-post-form "/login:user=^USER^&pass=^PASS^:S=302"

5. Ataque Avanzado a RDP con Generación de Contraseñas

Objetivo: Servicio RDP en 192.168.1.100.
Usuario: administrator.
Estrategia: Generar contraseñas de longitud 6 a 8 caracteres, usando minúsculas, mayúsculas y números.

hydra -l administrator -x 6:8:aA1 192.168.1.100 rdp

Explicación de -x: 6:8:aA1 es un atajo para:


⚡ Parámetros Avanzados y Optimización

Parámetro Descripción Uso Común
-x MIN:MAX:CHARSET Genera contraseñas bajo demanda. -x 6:8:aA1 (mín 6, máx 8, alfanuméricas)
-M FILE Lista de múltiples objetivos (un IP por línea). -M targets.txt
-w TIME / -W TIME Tiempo de espera entre intentos (por hilo/global). -W 5 (espera 5s entre login)
-e nsr Prueba credenciales adicionales: n (null), s (login como pass), r (reverse login). -e nsr
-u Cicla por usuarios primero (por defecto cicla por passwords). -u
-C FILE Archivo en formato usuario:contraseña (como en medusa). -C creds.txt