
Un web fuzzer estremamente veloce e flessibile
Un web fuzzer estremamente veloce e flessibile
Filebuster è uno script di fuzzing HTTP / scoperta di contenuti ricco di funzionalità, progettato per essere facile da usare e veloce! Utilizza una delle classi HTTP più veloci al mondo (in PERL) - Furl::HTTP. Inoltre, la modellazione dei thread è ottimizzata per funzionare il più rapidamente possibile.
Include tantissime funzionalità come:
Filebuster viene aggiornato spesso. Nuove funzionalità verranno aggiunte regolarmente.
È richiesta la versione 5.10 o superiore di Perl
FileBuster delega molte funzionalità a librerie di terze parti. Tuttavia, possono essere installate facilmente con il seguente comando:
cpan -T install YAML Furl Benchmark Net::DNS::Lite List::MoreUtils IO::Socket::SSL URI::Escape HTML::Entities IO::Socket::Socks::Wrapper URI::URL Cache::LRU IO::Async::Timer::Periodic IO::Async::Loop
L'opzione -T renderà l'installazione molto più rapida, ma se incontri problemi, rimuovila per permettere a CPAN di eseguire i test per ciascun pacchetto.
Filebuster è uno script Perl, quindi non è necessaria alcuna installazione. Tuttavia, il modo migliore per utilizzare Filebuster è creare un collegamento simbolico in una directory inclusa nel PATH. Ad esempio:
ln -s /path/to/filebuster.pl /usr/local/bin/filebuster
In questo modo potrai usarlo a livello di sistema.
Poiché a volte non è possibile installare tutte le dipendenze, fornisco un binario precompilato con tutte le dipendenze integrate. Funziona anche su distribuzioni Linux leggere. Questo è stato ottenuto utilizzando Perl Packer pp. Ho integrato questo passaggio nel repository, in modo che la versione precompilata venga creata automaticamente quando viene rilasciata una nuova versione. Puoi scaricare l'ultima versione dalla sezione Releases.
Se vuoi compilarlo da solo, consulta i passaggi del workflow di Action e troverai tutti i comandi necessari.
Nella forma più basilare, Filebuster può essere eseguito semplicemente con la seguente sintassi:
filebuster -u http://yoursite/
Se vuoi eseguire il fuzzing sulla parte finale dell'URL, non è necessario usare il tag {fuzz} per indicare dove iniettare.
Il parametro della wordlist (-w) non è obbligatorio a partire dalla versione 0.9.1. Se non specificato, Filebuster tenterà di trovare e caricare automaticamente la wordlist "Fast".
-w - Percorsi delle wordlist da utilizzare. Puoi specificare un elenco e FileBuster ignorerà automaticamente i duplicati. Es.: -w wordlist1.txt ../morewordlists/*.txt--hc - nasconde i codici di risposta specificati. Es.: --hc 403,400--hs - nasconde le risposte che contengono una stringa nel corpo della risposta. Es.: --hs "does not exist"--hsh - nasconde le risposte che contengono una stringa negli header. Utile per ignorare i reindirizzamenti verso pagine di login, ad esempio. Es.: --hsh "login.aspx"-e - FileBuster proverà ogni elemento della wordlist anche con le estensioni fornite. Es.: -e aspx,ashx,asmxPer la guida completa sulla sintassi con esempi, esegui filebuster --help.
Un esempio più complesso:
filebuster -u http://yoursite/{fuzz}.jsp -w /path/to/wordlist.txt -t 3 -x http://127.0.0.1:8080 --hs "Error"
Questo ti permetterebbe di fare fuzzing su un sito web con 3 thread per trovare pagine JSP, utilizzando un proxy locale e nascondendo tutte le risposte con "Error" nel corpo.
Devi iniziare costruendo il container:
docker build -t filebuster .
Successivamente, puoi eseguirlo in questo modo:
docker run -ti --init --rm filebuster -u http://yoursite/
Se devi utilizzare wordlist personalizzate, ricorda di mappare il file, ad esempio:
docker run -ti --init --rm -v /path/to/wordlist.txt:/filebuster/mywordlist.txt filebuster -u http://yoursite/ -w /filebuster/mywordlist.txt
Puoi creare un alias nella tua shell per renderlo (quasi) trasparente:
alias filebuster="docker run -ti --init --rm filebuster"
Ora puoi eseguirlo semplicemente:
filebuster -u http://yoursite/
Ho creato alcune wordlist basate su diverse fonti presenti sul web, insieme ai miei payload personalizzati incontrati durante i miei penetration test e ricerche. Le trovi nella directory wordlists.
Se hai bisogno di altre wordlist, dai un'occhiata all'ottimo repository SecLists.
Se hai problemi o suggerimenti, non esitare a contattarmi.