Introducción
En este desafío, utilizarás Hydra para descifrar las credenciales de un servicio oculto que se ejecuta en un servidor remoto. El servicio está protegido por autenticación básica HTTP (HTTP Basic Authentication). Tu objetivo es descubrir tanto el nombre de usuario como la contraseña para acceder a la información confidencial.
Para lograrlo, primero prepararás el entorno creando los directorios necesarios y los diccionarios que contienen los posibles nombres de usuario y contraseñas. Luego, configurarás un servidor HTTP sencillo con autenticación básica utilizando Python. Finalmente, aprovecharás el potencial de Hydra para realizar un ataque de fuerza bruta utilizando los diccionarios creados y así obtener acceso a los datos secretos.
Descifrar el Servicio Oculto
Un servicio secreto se está ejecutando en un servidor remoto, protegido por autenticación básica HTTP. ¿Podrás usar Hydra para descubrir el nombre de usuario y la contraseña correctos para acceder a los datos ocultos?
Tareas
- Utiliza Hydra para realizar un ataque de fuerza bruta al servicio HTTP en el puerto 8000 de localhost, empleando las listas de usuarios y contraseñas proporcionadas.
- Identifica las credenciales correctas a partir de la salida de Hydra y guarda la contraseña en el archivo
found_password.txt.
Requisitos
- Debes ejecutar el comando
hydradentro del directorio/home/labex/project/wordlists. - Utiliza el archivo de lista de usuarios llamado
usernames.txty el archivo de lista de contraseñas llamadopasswords.txt. - El objetivo es el servicio HTTP que se ejecuta en
localhosten el puerto8000. - Utiliza el módulo
http-get /en Hydra para realizar el ataque. - Guarda la contraseña correcta en el archivo
found_password.txtdentro de la ruta/home/labex/project/found_password.txt.
Ejemplos
Salida exitosa de Hydra:
[DATA] attacking http-get://localhost:8000/
[8000][http-get] host: localhost login: [USERNAME] password: [PASSWORD]
1 of 1 target successfully completed, 1 valid password found
Sustituye [USERNAME] y [PASSWORD] con las credenciales reales encontradas por Hydra.
Consejos
- Recuerda especificar el número de puerto correcto utilizando el parámetro
-s. - La contraseña correcta no se encuentra inicialmente en el archivo
passwords.txt. Necesitarás encontrar otra forma de descifrarla. - Considera crear tu propia lista de contraseñas incluyendo términos comunes.
Resumen
En este desafío, el objetivo era descifrar la autenticación básica HTTP que protegía un servicio oculto en un servidor remoto. Utilizando Hydra, lograste descubrir tanto el nombre de usuario como la contraseña necesarios para acceder al servicio.
El desafío implicó la configuración de un entorno simulado, incluyendo la creación de directorios para diccionarios y el servidor HTTP, la generación de listas de usuarios y contraseñas, y la creación de un servidor HTTP basado en Python que requiere autenticación. Posteriormente, se utilizó Hydra para realizar un ataque de fuerza bruta con los diccionarios creados contra el servidor HTTP que se ejecutaba en el puerto 8000.


