Hydra da la contraseña correcta si se usa después de 3 minutos más da las contraseñas incorrectas

3

Tengo una cámara IP D-Link DCS 5222LB. Estoy tratando de imponer una fuerza bruta a la cámara IP. La cámara utiliza autenticación HTTP básica. Yo uso el siguiente comando:

hydra -l admin -P passlist.txt -t 3  http://IP_address

El problema es que si ejecuto este comando con una diferencia de 3 minutos, Hydra me da la contraseña correcta, de lo contrario me da la contraseña incorrecta.

He inspeccionado los paquetes de la red para encontrar si utiliza el método de formulario, pero lo que encontré es que mi servidor de cámara responde de la misma manera si la contraseña es correcta o incorrecta y Hydra no sabe cuál es la respuesta correcta y cuál es no.

Por favor, dime, ¿hay alguna manera a través de la cual pueda decirle a mi hidra (sin usar http-post-form) la diferencia entre la respuesta correcta y la incorrecta?

    
pregunta Asad 26.07.2018 - 11:02
fuente

2 respuestas

2

He resuelto el problema. Hydra considera 401 como la respuesta de falla y 200 como la respuesta de "éxito". También considera 403 como respuesta de éxito. Mi cámara IP es lo suficientemente inteligente como para identificar que la hidra está tratando de hacer fuerza bruta. Al comienzo, devuelve 401 para las contraseñas incorrectas y 200 para la contraseña correcta. Si vuelvo a intentarlo de inmediato, se da cuenta de que algo raro está ocurriendo aquí y responde con 403 en lugar de 401 (Hydra toma 403 como respuesta exitosa). Si espero 3 minutos o más, empieza a responder con 401 nuevamente.

    
respondido por el Asad 30.07.2018 - 11:32
fuente
0

En primer lugar, debe confirmar que realmente está utilizando la Autenticación Básica al verificar con wget -S o curl -i (o, alternativamente, la inspección de paquetes) que devuelve un HTTP 401 con un encabezado WWW-Authenticate: . hydra es difícil de usar, cuantas menos conjeturas lo configures mejor. Por lo general, capturo un inicio de sesión exitoso y fallido a través de un proxy interceptor para asegurarme.

En segundo lugar, ¿está seguro de que está utilizando un hydra reciente y oficial? La opción -t es para la concurrencia, no para ningún tipo de límite de tiempo, y lo más importante es que una simple "http: //" no es no , necesita usar explícitamente "http-get: // " para esto. Si está utilizando una GUI, tal vez sea cuestionarse y proporcionar argumentos alternativos al hydra real.

A diferencia de los módulos http-form* que requieren una cadena "exitosa" para coincidir con el contenido de la respuesta, el módulo http-get asume el éxito con los códigos HTTP 2xx, 3xx, 403 o 404.

Dado que el dispositivo de destino es una cámara, probablemente una mejor tarea sea una sola tarea, e incluso es posible que deba ralentizarla para obtener resultados confiables (consulte hydra options -W y -c ).

    
respondido por el mr.spuratic 26.07.2018 - 13:22
fuente

Lea otras preguntas en las etiquetas