一个极快且灵活的Web模糊测试工具
Filebuster 是一个HTTP模糊测试/内容发现脚本,拥有大量功能,设计易于使用且速度飞快!它使用了世界上(PERL领域)最快的HTTP类之一——Furl::HTTP。同时,线程模型经过优化,以尽可能快地运行。
它集成了大量功能,例如:
Filebuster频繁更新,新的功能会定期添加。
需要Perl版本5.10或更高
Filebuster依赖大量第三方库的功能。不过,可以使用以下命令轻松安装:
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
-T选项将加快安装速度,但如果遇到问题,请移除该选项,让CPAN对每个包执行测试。
Filebuster是一个Perl脚本,因此无需安装。不过,使用Filebuster的最佳方式是将其软链接到PATH中的目录。例如:
ln -s /path/to/filebuster.pl /usr/local/bin/filebuster
之后,你就可以在系统范围内使用它了。
由于有时无法安装所有依赖,我提供了一个预打包的二进制文件,内置了所有依赖。它甚至在精简的Linux发行版上也能工作。这是通过使用Perl Packer pp 实现的。我已将此步骤集成到仓库中,以便在发布新版本时自动构建打包版本。你可以从 Releases 部分下载最新版本。
如果你想自行打包,请查看Actions的工作流步骤,那里有所有需要运行的命令。
在最基本的形式下,Filebuster可以仅使用以下语法运行:
filebuster -u http://yoursite/
如果你想对URL的末尾部分进行模糊测试,则无需使用标签 {fuzz} 来指定注入位置。
从版本0.9.1开始,字典列表参数(-w)不再是强制性的。如果未指定,Filebuster将尝试自动查找并加载"Fast"字典列表。
-w - 要使用的字典列表路径。你可以在此处指定一个列表,FileBuster会自动忽略重复项。例如:-w wordlist1.txt ../morewordlists/*.txt--hc - 隐藏指定的响应状态码。例如:--hc 403,400--hs - 隐藏响应正文中包含指定字符串的响应。例如:--hs "does not exist"--hsh - 隐藏响应头中包含指定字符串的响应。用于忽略跳转到登录页面的重定向等。例如:--hsh "login.aspx"-e - FileBuster也会尝试字典列表中的每个条目加上提供的扩展名。例如:-e aspx,ashx,asmx要查看包含示例的完整语法帮助,只需运行 filebuster --help。
一个更复杂的例子:
filebuster -u http://yoursite/{fuzz}.jsp -w /path/to/wordlist.txt -t 3 -x http://127.0.0.1:8080 --hs "Error"
这允许你使用3个线程对网站进行模糊测试以查找JSP页面,使用本地代理并隐藏所有正文中包含"Error"的响应。
首先需要构建容器:
docker build -t filebuster .
之后,可以这样运行:
docker run -ti --init --rm filebuster -u http://yoursite/
如果需要使用自定义字典列表,请记得映射文件,例如:
docker run -ti --init --rm -v /path/to/wordlist.txt:/filebuster/mywordlist.txt filebuster -u http://yoursite/ -w /filebuster/mywordlist.txt
你可以在Shell中创建别名,使其(几乎)无缝:
alias filebuster="docker run -ti --init --rm filebuster"
现在你就可以直接运行:
filebuster -u http://yoursite/
我根据网络上的不同来源以及自己在渗透测试和研究过程中积累的自定义载荷创建了一些字典列表。你可以在 wordlists 目录中找到它们。
如果你需要更多字典列表,可以查看优秀的 SecLists 仓库。
如果你有任何问题或建议,欢迎随时联系。