Nmap http-brute - Fornire argomenti per il bruting tramite GET

2

Sto provando a brute un sito nel mio laboratorio di test con http-brute nse di Nmap, che ha la struttura URL https://192.168.101.6/api/[email protected]&password=pass

Purtroppo la documentazione ufficiale di Nmap ( link ) non ha informazioni su come fornire argomenti come l'e-mail e campi password.

Sto puntando a fornire la mia richiesta come segue (dove $ 1 è la variabile email e $ 2 è la variabile password):
https://192.168.101.6/api/auth?email=$1&password=$2
Nota: $ 1 dovrebbe caricare il mio dizionario email emails.txt e $ 2 dovrebbe caricare la mia lista password pass.txt

Questo è possibile con NSE http-brute di Nmap? O dovrei usare un altro strumento come il rutto o l'hydra?

    
posta mk444 17.01.2016 - 02:13
fonte

3 risposte

3

Il link afferma che esegue "il controllo della password brute force contro l'autenticazione http di base, digest e ntlm ". Questi sono metodi di autenticazione HTTP , ma quello che stai cercando è autenticazione basata su form .

Il collegamento fa ciò che vuoi. Puoi usare uservar e passvar script-arg per dirgli quali variabili inviare, ma se stai usando una versione dello script dal r35542 (2015-12-31) , quindi dovrebbe essere in grado di rilevare automaticamente il modulo sulla pagina che si desidera forzare. Leggi attentamente i documenti, poiché potresti aver bisogno di altri argomenti come http-form-brute.method . I documenti online fanno sempre riferimento all'istantanea di sviluppo corrente, ma puoi ottenere i documenti per la versione dello script che stai eseguendo nmap --script-help http-form-brute .

    
risposta data 19.01.2016 - 15:54
fonte
1

Ho attivato Zenmap , ho richiamato l'elenco per lo script http-brute e ho inserito l'indirizzo, il file cred utente, e password cred file nei campi della GUI appropriata per produrre argomenti della riga di comando per loro. La stringa della riga di comando che Zenmap ha prodotto per me:

[ l'output iniziale di Zenmap era qui, e non era corretto a causa del modo in cui ho selezionato alcuni argomenti da inserire. Una lezione sugli strumenti che non recuperano errori nelle abilità umane. Ad ogni modo, è ancora un buon strumento .]

Nota: non ho effettivamente testato la formulazione sopra riportata contro alcun target per vedere che funziona davvero. Sono assente dal mio ambiente di test, ma capita di avere nmap & Zenmap installato praticamente su ogni singolo dispositivo che possiedo per cui esiste una versione. :)

In realtà, consiglierei Zenmap come strumento per conoscere l'utilizzo di nmap in generale, ma in particolare quando si tratta di scoprire, selezionare e utilizzare bene gli script. Ad essere onesti, infatti, quando ho iniziato ad usare Zenmap ho trovato molto utile la creazione di scansioni con qualità complesse (specialmente con script, ma non limitati a), che alla fine sono diventato un po 'viziato e ho perso un po' di nitidezza in usando la riga di comando. Tuttavia, poiché un altro non esperto ha cercato di migliorare le mie capacità, l'ho trovato estremamente utile. (Naturalmente, YMMV.)

    
risposta data 17.01.2016 - 10:06
fonte
0

Grazie a @bonsaiviking per tutto il tuo aiuto.

Un'analisi più approfondita di --script-trace ha rivelato che i problemi principali erano l'user-agent e brute.emptypass = true. Inoltre, poiché il primo passaggio dello script fornisce credenziali fittizi, avevo bisogno di usare una stringa che corrispondesse quando veniva fornito un nome utente falso e una stringa corrispondeva al nome utente corretto ("errore").

Comando eseguito correttamente:
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

    
risposta data 22.01.2016 - 04:41
fonte

Leggi altre domande sui tag