
Um fuzzer web extremamente rápido e flexível
Um web fuzzer extremamente rápido e flexível
Filebuster é um script de fuzzing HTTP / descoberta de conteúdo com muitas funcionalidades, construído para ser fácil de usar e rápido! Ele usa uma das classes HTTP mais rápidas do mundo (em PERL) - Furl::HTTP. Além disso, a modelagem de threads é otimizada para executar o mais rápido possível.
Ele possui uma tonelada de funcionalidades como:
Filebuster é atualizado frequentemente. Novas funcionalidades serão adicionadas regularmente.
É necessária a versão 5.10 ou superior do Perl
FileBuster depende de muitas funcionalidades de bibliotecas de terceiros. No entanto, elas podem ser facilmente instaladas com o seguinte 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
A opção -T tornará a instalação muito mais rápida, mas se você encontrar problemas, remova-a para permitir que o CPAN execute os testes por pacote.
Filebuster é um script Perl, portanto não é necessária instalação. No entanto, a melhor forma de usar Filebuster é criando um link simbólico em um diretório que esteja incluído no caminho (PATH). Por exemplo:
ln -s /path/to/filebuster.pl /usr/local/bin/filebuster
Então você poderá usá-lo em todo o sistema
Como instalar todas as dependências às vezes não é possível, estou fornecendo um binário pré-empacotado com todas as dependências embutidas. Ele funciona até mesmo em distribuições Linux enxutas. Isso foi alcançado usando o Perl Packer pp. Integrei esta etapa no repositório para que a versão empacotada seja automaticamente construída quando uma nova versão for lançada. Você pode baixar a versão mais recente na seção Releases.
Se você quiser empacotá-lo você mesmo, verifique as etapas do workflow do Action e encontrará todos os comandos necessários.
Na forma mais básica, o Filebuster pode ser executado apenas com a seguinte sintaxe:
filebuster -u http://yoursite/
Se você quiser fazer fuzzing na parte final da URL, não precisa usar a tag {fuzz} para indicar onde injetar.
O parâmetro de wordlist (-w) não é obrigatório a partir da versão 0.9.1. Se não especificado, o Filebuster tentará encontrar e carregar automaticamente a wordlist "Fast".
-w - Caminhos para as wordlists a serem usadas. Você pode especificar uma lista aqui e o FileBuster ignorará automaticamente duplicatas. Ex.: -w wordlist1.txt ../morewordlists/*.txt--hc - oculta os códigos de resposta especificados. Ex.: --hc 403,400--hs - oculta respostas que contenham a string no corpo da resposta. Ex.: --hs "does not exist"--hsh - oculta respostas que contenham string nos cabeçalhos. Útil para ignorar redirecionamentos para páginas de login, por exemplo. Ex.: --hsh "login.aspx"-e - FileBuster tentará cada entrada na wordlist também com as extensões fornecidas. Ex.: -e aspx,ashx,asmxPara ajuda completa da sintaxe com exemplos, basta executar filebuster --help.
Um exemplo mais complexo:
filebuster -u http://yoursite/{fuzz}.jsp -w /path/to/wordlist.txt -t 3 -x http://127.0.0.1:8080 --hs "Error"
Isso permitiria fazer fuzzing em um site com 3 threads para encontrar páginas JSP, usando um proxy local e ocultando todas as respostas com "Error" no corpo.
Você precisará começar construindo o contêiner:
docker build -t filebuster .
Depois, você pode executá-lo assim:
docker run -ti --init --rm filebuster -u http://yoursite/
Se você precisar usar wordlists personalizadas, lembre-se de mapear o arquivo, ex.:
docker run -ti --init --rm -v /path/to/wordlist.txt:/filebuster/mywordlist.txt filebuster -u http://yoursite/ -w /filebuster/mywordlist.txt
Você pode criar um alias no seu shell e torná-lo (quase) transparente:
alias filebuster="docker run -ti --init --rm filebuster"
Agora você pode simplesmente executá-lo:
filebuster -u http://yoursite/
Criei algumas wordlists baseadas em diferentes fontes da web, juntamente com minhas próprias payloads personalizadas que encontrei durante meus testes de penetração e pesquisas. Você pode encontrá-las no diretório wordlists.
Se precisar de mais wordlists, você deve conferir o ótimo repositório SecLists.
Se você tiver algum problema ou sugestão, sinta-se à vontade para entrar em contato.