Aprende cómo realizar un ataque de fuerza bruta utilizando Hydra, una herramienta popular para crackear contraseñas. Descubre cómo usar Hydra para atacar protocolos comunes como SSH, FTP y HTTP en entornos controlados y con fines educativos.
Hydra es una herramienta de código abierto ampliamente utilizada para realizar ataques de fuerza bruta y descifrado de contraseñas. Es compatible con una amplia variedad de protocolos y servicios, como SSH, FTP, HTTP, MySQL, entre otros. Los ataques de fuerza bruta consisten en intentar una gran cantidad de combinaciones de usuario y contraseña hasta encontrar las credenciales correctas.
Nota: Los ataques de fuerza bruta solo deben realizarse en entornos controlados y con autorización. Realizar este tipo de pruebas sin el consentimiento adecuado es ilegal.
Antes de comenzar, debes tener Hydra instalado en tu sistema. Hydra está disponible en la mayoría de las distribuciones de Linux, como Kali Linux, que lo incluye preinstalado. Si no lo tienes, puedes instalarlo fácilmente con los siguientes comandos:
hydra -h
Si Hydra no está instalado, puedes hacerlo con:
sudo apt update
sudo apt install hydra
sudo apt update
sudo apt install hydra
brew install hydra
Hydra puede atacar una variedad de servicios, y a continuación, cubrimos algunos de los más comunes, como SSH y HTTP. Antes de realizar un ataque, es necesario contar con una lista de posibles nombres de usuario y contraseñas. Estas listas se conocen como wordlists. Puedes encontrar algunas en /usr/share/wordlists/
en Kali Linux o crear las tuyas propias.
Supongamos que queremos realizar un ataque de fuerza bruta contra un servidor SSH en 192.168.1.100
. Para este ejemplo, usaremos una lista de nombres de usuario y contraseñas.
hydra -l usuario -P /ruta/a/wordlist.txt ssh://192.168.1.100
-l usuario
: Indica el nombre de usuario que se usará para el ataque.
-P /ruta/a/wordlist.txt
: Especifica la ruta a la lista de contraseñas que Hydra utilizará.
ssh://192.168.1.100
: Especifica el protocolo SSH y la dirección IP o el host objetivo.
Si deseas probar múltiples nombres de usuario, puedes usar una lista de usuarios en lugar de un solo usuario.
hydra -L /ruta/a/userlist.txt -P /ruta/a/wordlist.txt ssh://192.168.1.100
-L /ruta/a/userlist.txt
: Lista de nombres de usuario a probar.
Hydra también puede atacar servicios web protegidos por autenticación básica HTTP o formularios de inicio de sesión. A continuación se muestra cómo realizar un ataque contra una página web protegida con autenticación básica.
hydra -l admin -P /ruta/a/wordlist.txt http-get://192.168.1.100/protegido
http-get
: Especifica que Hydra realizará una solicitud HTTP GET.
/protegido
: Ruta en el servidor donde está protegida por autenticación básica.
Para atacar un formulario de inicio de sesión en una página web, necesitas conocer los nombres de los campos de usuario y contraseña que utiliza el formulario. Esto puede obtenerse inspeccionando el código HTML de la página.
hydra -l admin -P /ruta/a/wordlist.txt 192.168.1.100 http-post-form "/login:usuario=^USER^&contraseña=^PASS^:Error de login"
/login
: Ruta del formulario de inicio de sesión.
usuario=^USER^&contraseña=^PASS^
: La estructura del formulario con los campos que se deben rellenar con el nombre de usuario y contraseña.
Error de login
: Cadena que indica cuándo el inicio de sesión ha fallado.
Hydra también puede realizar ataques de fuerza bruta contra servicios FTP.
hydra -l usuario -P /ruta/a/wordlist.txt ftp://192.168.1.100
Este comando intentará iniciar sesión en el servidor FTP con el nombre de usuario y la lista de contraseñas proporcionada.
Hydra ofrece muchas más opciones avanzadas para ajustar los ataques de fuerza bruta, como especificar el número de tareas paralelas, limitar el tiempo de espera entre intentos, y más.
hydra -l admin -P /ruta/a/wordlist.txt -t 4 ssh://192.168.1.100
-t 4
: Ejecuta 4 tareas (intentos) en paralelo, lo que puede aumentar la velocidad del ataque.
hydra -l admin -P /ruta/a/wordlist.txt ssh://192.168.1.100 -o resultados.txt
-o resultados.txt
: Guarda los resultados en el archivo resultados.txt
.
En caso de que ya tengas credenciales específicas y solo quieras validarlas, puedes hacerlo usando Hydra para confirmar si las credenciales son correctas.
hydra -l admin -p password123 ssh://192.168.1.100
En este ejemplo, intentamos iniciar sesión con el usuario admin
y la contraseña password123
.
El uso de herramientas como Hydra para realizar ataques de fuerza bruta debe estar limitado a entornos de prueba o sistemas para los que tengas autorización explícita. La realización de ataques de fuerza bruta sin permiso es ilegal y puede tener graves consecuencias legales. Hydra es una herramienta poderosa, pero debe ser utilizada de manera responsable y ética.
Hydra es una herramienta robusta para realizar ataques de fuerza bruta contra una amplia variedad de servicios. Al aprender a usarla correctamente, puedes probar la seguridad de tus propios sistemas y fortalecerlos contra posibles ataques. Sin embargo, siempre debes recordar que cualquier prueba de seguridad debe realizarse de manera ética y con los permisos correspondientes.
Para obtener más detalles sobre cómo usar Hydra y todas sus opciones avanzadas, visita la documentación oficial de Hydra.
Jorge García
Fullstack developer