Nmap http-brute - Proporcionando argumentos para el bruting a través de GET

2

Estoy intentando dañar un sitio en mi laboratorio de pruebas con http-brute nse de Nmap, que tiene la estructura de URL https://192.168.101.6/api/[email protected]&password=pass

Desafortunadamente, la documentación oficial de Nmap ( enlace ) no tiene información sobre cómo proporcionar argumentos como el correo electrónico y campos de contraseña.

Mi objetivo es proporcionar mi solicitud de la siguiente manera (donde $ 1 es la variable de correo electrónico y $ 2 es la variable de contraseña):
https://192.168.101.6/api/auth?email=$1&password=$2
Nota: $ 1 debería cargar mi diccionario de correo electrónico emails.txt y $ 2 debería cargar mi lista de contraseñas pass.txt

¿Es esto posible con NSE http-brute de Nmap? ¿O necesitaría usar otra herramienta como eructar o hidra?

    
pregunta mk444 17.01.2016 - 02:13
fuente

3 respuestas

3

El enlace indica que realiza "auditoría de contraseñas de fuerza bruta contra autenticación básica http, digest y ntlm . " Estos son métodos de autenticación HTTP , pero lo que está buscando es autenticación basada en formularios .

El enlace hace lo que usted desea. Puede usar uservar y passvar script-args para decirle qué variables enviar, pero si está usando una versión del script desde r35542 (2015-12-31) , entonces debería ser capaz de detectar automáticamente el formulario en la página que desea fuerza bruta. Lea los documentos con cuidado, ya que es posible que necesite algunos de los otros argumentos como http-form-brute.method . Los documentos en línea siempre se refieren a la instantánea de desarrollo actual, pero puede obtener los documentos para la versión del script que tiene ejecutando nmap --script-help http-form-brute .

    
respondido por el bonsaiviking 19.01.2016 - 15:54
fuente
1

Abrí Zenmap , saqué la lista del script http-brute y conecté la dirección, el archivo de credenciales del usuario, y el archivo cred de la contraseña en los campos GUI apropiados para generar argumentos de línea de comando para ellos. La cadena de la línea de comandos que Zenmap me envió:

[ la salida inicial de Zenmap estaba aquí y era incorrecta debido a la forma en que seleccioné algunos argumentos para ingresar. Una lección sobre herramientas que no compensan errores en habilidades humanas. De todos modos, sigue siendo una buena herramienta .]

Nota: no he probado la formulación anterior con ningún objetivo para ver si realmente funciona. Estoy fuera de mi entorno de prueba, pero resulta que tengo nmap & Zenmap instalado en casi todos los dispositivos para los que tengo una versión. :)

Realmente, recomiendo bastante a Zenmap como una herramienta para aprender sobre el uso de nmap en general, pero particularmente cuando se trata de descubrir, seleccionar y usar bien los scripts. Para ser honesto, de hecho, cuando comencé a usar Zenmap lo encontré tan útil para crear escaneos con cualidades complejas (especialmente con, pero no limitado a, scripts) que finalmente me estropeé un poco y perdí un poco de nitidez en utilizando la línea de comando. Aún así, como otro no experto que intenta mejorar mis habilidades, lo he encontrado extremadamente útil. (Por supuesto, YMMV.)

    
respondido por el mostlyinformed 17.01.2016 - 10:06
fuente
0

Gracias @bonsaiviking por toda su ayuda.

Un análisis más profundo del --script-trace reveló que los problemas principales eran el agente de usuario y brute.emptypass = true. Además, dado que la primera pasada de la secuencia de comandos proporciona credenciales falsas, tuve que usar una cadena que coincidía cuando se proporcionó un nombre de usuario falso, así como una cadena que coincida con el nombre de usuario correcto ("error").

Comando exitoso:
nmap -p 443 --script http-form-brute --script-args "brute.firstonly=true,http-form-brute.path=/api/auth,http-form-brute.method=GET,userdb=user.txt,http-form-brute.uservar=email,http-form-brute.passvar=password,http-form-brute.onfailure=error,http.useragent=" 192.168.101.6

    
respondido por el mk444 22.01.2016 - 04:41
fuente

Lea otras preguntas en las etiquetas