Pruebas de contraseñas en Kali con Hydra

HydraBeginner
Practicar Ahora

Introducción

Las pruebas de credenciales en línea envían intentos de inicio de sesión a un servicio en ejecución, por lo que su alcance, número de candidatos, concurrencia y condición de parada deben estar claros. Un éxito indicado es más sólido cuando la credencial también permite autenticarse en el objetivo real.

Esta práctica proporciona un servicio SSH local dedicado y una cuenta de entrenamiento débil. Ejecutarás una comprobación acotada con Hydra, conservarás su resultado y confirmarás el inicio de sesión recuperado con un único comando remoto de identidad.

Ejecuta una pequeña comprobación autorizada de credenciales SSH

En este paso utilizarás Hydra contra una cuenta proporcionada en un servicio local de entrenamiento dedicado.

Entra en Kali y elige el espacio de trabajo compartido:

kali
cd /home/labex/project

A diferencia de la comparación de hashes sin conexión de John, Hydra envía intentos de autenticación a un servicio activo. Cada intento puede afectar a los registros, la carga o la política de cuentas del servicio. Este ejercicio autoriza únicamente la cuenta training-login proporcionada en 127.0.0.1:12222 utilizando la pequeña lista suministrada. El servicio SSH del host y otras cuentas quedan fuera del alcance.

Lee la lista de candidatos antes de probar:

cat candidates.txt

Hay tres candidatos de entrenamiento, uno por línea. No se necesita una lista de palabras mayor ni generar contraseñas.

La opción -l de Hydra selecciona un nombre de inicio de sesión; -P lee candidatos de contraseña de un archivo; -s selecciona el puerto no predeterminado del servicio; -t 1 limita la concurrencia a una tarea; -f se detiene tras el primer par correcto y -o guarda los resultados correctos. El objetivo ssh:// selecciona el módulo de protocolo SSH:

hydra -l training-login -P candidates.txt -s 12222 -t 1 -f -o hydra-results.txt ssh://127.0.0.1

Espera a que termine la ejecución acotada. El resultado correcto debe nombrar el puerto 12222, el servicio SSH, el usuario asignado y una contraseña candidata. Las cabeceras de versión, los tiempos y los detalles del orden de intentos pueden variar.

Lee el resultado guardado:

cat hydra-results.txt

Busca el par correcto para training-login. Un error de conexión, un protocolo no admitido o una lista de candidatos agotada es diferente de un resultado válido de autenticación; no consideres que toda ejecución completada de Hydra es un éxito.

Confirma la cuenta recuperada con SSH

En este paso verificarás que la credencial indicada autentica realmente en el servicio proporcionado y guardarás el resultado de identidad remota.

El resultado guardado de Hydra debe mostrar la contraseña de entrenamiento pebble7 para training-login. Es una credencial de prueba deliberadamente débil, no una contraseña para reutilizar en otros lugares.

El cliente SSH puede ejecutar un comando remotamente y desconectarse después. Su -p minúscula elige el puerto SSH no predeterminado; user@address elige la cuenta y el endpoint. El whoami final se ejecuta bajo la cuenta remota autenticada. Redirige la salida de ese comando a un archivo de resultado local:

ssh -p 12222 training-login@127.0.0.1 whoami > authenticated-user.txt

En la primera conexión, SSH pregunta si confías en la clave de host de este servicio de entrenamiento. Estás conectándote al endpoint local dedicado preparado para este ejercicio; escribe yes y pulsa Enter. Cuando aparezca la solicitud de contraseña, escribe la contraseña recuperada pebble7 y pulsa Enter. Los caracteres de la contraseña no se muestran. Esto no crea un shell remoto interactivo: después de terminar el comando remoto, vuelves al indicador de Kali.

Lee la identidad guardada:

cat authenticated-user.txt

Salida esperada:

training-login

Esto comprueba la credencial contra el servicio real en lugar de depender únicamente de una línea de resultado de una herramienta. El inicio de sesión es local al servicio SSH de entrenamiento aislado; la cuenta del estudiante del host y su configuración SSH permanecen intactas.

Resumen

Distinguiste los intentos de inicio de sesión en línea de la recuperación sin conexión, seleccionaste una cuenta SSH y un puerto personalizado, limitaste la concurrencia y te detuviste en el primer éxito. Guardaste el resultado y confirmaste que la credencial indicada autenticaba realmente en la cuenta proporcionada.