Básicamente, necesitas especificar dos cosas:
- Donde van el nombre de usuario y la contraseña.
- Cómo determinar el éxito / fracaso de la solicitud.
El primero se logra con tokens como ^USER^
y ^PASS^
en la URL donde deben ser reemplazados por los nombres de usuario y las contraseñas que se están probando. El segundo se realiza mediante hydra mediante la coincidencia de cadenas en la página devuelta. Puede probar una condición de falla, como "Contraseña incorrecta", o una condición exitosa, como "iniciar sesión".
Aquí hay un ejemplo:
hydra 127.0.0.1 http-form-get '/test/login.php?username=^USER^&password=^PASS^:Bad password'
También puede probar si una cookie se establece con C=cookie_name
o un encabezado HTTP con H=header_name
en lugar de "Contraseña incorrecta" para la condición de prueba para un inicio de sesión exitoso.
En caso de que el formulario de inicio de sesión utilice POST, en lugar de GET, (como hacen muchos), debe utilizar el "protocolo" de http-form-post. También deberá usar :
para separar la URL y los parámetros POST, en lugar de ?
en una cadena de consulta. También hay variaciones de https, que son (como era de esperar) prefijadas con https-
, en lugar de http-
.