OWASP bruteforce ZAP con password non nome utente

0

Voglio rinforzare una pagina di accesso usando OWASP ZAP, utilizzando due password separate (90 righe) e un nome utente (200 righe), con le richieste POST bruteforce da ordinare con una password come:

user001:pass00
user002:pass00
....
user200:pass00
user001:pass01
user002:pass01
etc.

Il ronzio con le liste di parole funziona con ZAP ma non riesco a ottenere questo specifico ordine, ZAP sta invece provando tutte le password con ciascun nome utente.

Ho provato a cambiare opzione Fuzzer: Opzioni: Lunghezza / Larghezza prima ma non ha alcun effetto.
La mia ipotesi è che ZAP stia iterando attraverso i payload dall'ordine in cui appaiono i parametri POST, ma non sono in grado di modificare la richiesta POST effettiva nel Fuzzer per riordinarli.
Inoltre, una volta avviato il Fuzzer, posso solo metterlo in pausa o fermarlo ma non posso riconfigurarlo.
Qualsiasi comprensione di ciò sarebbe apprezzata.

    
posta user1330734 05.11.2016 - 07:20
fonte

1 risposta

1

tl; dr - Usa ZAP per trovare i parametri username e password, quindi Hydra con l'opzione -u per eseguire il login brute force, iterando attraverso le password invece degli utenti come richiesto.

Dettagli -

Userei THC Hydra con l'interruttore '-u'. Lo strumento è molto semplice e realizza ciò che stai guardando di default. Viene preinstallato su Kali ed è possibile installare il pacchetto sulla maggior parte dei sistemi basati su Unix.

Dalla pagina man di Hydra, l'opzione -u "circonda gli utenti, non le password". Questo proverà pass01 per tutti i 200 utenti prima di provare pass02 per ciascun utente. Ecco un esempio di come dovrebbe essere il tuo comando:

hydra www.target-url.com http-form-post -L usernames.txt -P passwords.txt "/ path / to / login: username = ^ USER ^ & password = ^ PASS ^: Login errato" -u -V -o hydra_output.txt

Analisi: "hydra" è il nome del programma. "www.target-url.com" è l'indirizzo del target, ma in alternativa puoi utilizzare un IP (e specificare una porta). "Http-form-post" è il servizio che stai cercando di potenziare la forza. "-L" e "-P" sono piuttosto auto-esplicativi, sono il nome utente e i file delle password di accesso.

La parte successiva tra virgolette ha 3 parametri che puoi catturare con il proxy ZAP o visualizzando il codice sorgente, e sono separati da ":". Il primo è il percorso, seguito da due punti e i parametri username e password identificati da ZAP (mi piace Burp, ma ZAP farà il trucco). Hydra sostituirà le stringhe "^ USER ^" e "^ PASS ^" con i valori dei tuoi file utente / pass.

Infine, il -u, come detto prima, continuerà a scorrere i nomi utente, piuttosto che le password. "-V" ti mostrerà ogni ipotesi di password in stdout in modo da poter verificare che funzioni come dovrebbe e -o invierà la password corretta al file hydra_output.txt.

Spero che questo sia stato di aiuto. Non ho molta familiarità con ZAP, ma la versione gratuita di Burp Suite è un prodotto equivalente per quanto ne so, e Burp Intruder dovrebbe avere la funzionalità che desideri se devi utilizzare un proxy.

    
risposta data 31.08.2017 - 02:19
fonte

Leggi altre domande sui tag