原始的 403fuzzer.py :)
==注意:此工具已被弃用,请使用我的全新 Burp 扩展,它比这个好 1000000%。感谢您使用我的工具!==
您可以在此处找到该扩展:https://github.com/intrudir/BypassFuzzer-Burp
Fuzz 401/403 端点以寻找绕过方法
通过请求头、路径标准化、HTTP 方法等多种方式执行检查,尝试绕过 ACL 或 URL 验证。
如果此工具帮助您获得赏金,或者您想请我喝杯啤酒:
在 Twitter 上关注我!@intrudir
# 克隆仓库(或下载 zip 包!)然后进入目录
git clone https://github.com/NetSPI/BypassFuzzer.git
cd BypassFuzzer
# 最佳实践是创建一个新的虚拟环境
python3 -m venv .venv
# 激活虚拟环境
source .venv/bin/activate
# 安装依赖
python3 -m pip install -r requirements.txt
# 克隆仓库(或下载 zip 包!)然后进入目录
# 如果下载了 .zip,记得先解压
cd BypassFuzzer-main\
# 最佳实践是创建一个新的虚拟环境
py -m venv .venv
# 激活虚拟环境
.venv\Scripts\activate
# 安装依赖
# 需要使用 'python' 命令来使用此环境中的解释器
python -m pip install -r .\requirements.txt
在 Windows 上,使用脚本时请确保使用 python 命令。这样可以确保您在使用虚拟环境。
查看帮助菜单
bypassfuzzer.py -h
只需将请求粘贴到一个文件中,然后运行脚本!
cookies 和 headers。python3 bypassfuzzer.py -r request.txt

指定 URL
python3 bypassfuzzer.py -u http://example.com/test1/test2/test3/forbidden.html
指定请求中使用的 cookies:
一些示例:
--cookies "cookie1=blah"
-c "cookie1=blah; cookie2=blah"
指定 HTTP 方法/动词和要发送的请求体数据
bypassfuzzer.py -u https://example.com/forbidden -m POST -d "param1=blah¶m2=blah2"
bypassfuzzer.py -u https://example.com/forbidden -m PUT -d "param1=blah¶m2=blah2"
指定每个请求使用的自定义请求头
也许您需要添加某种认证头,例如 Authorization: bearer <token>
对每个要添加的额外请求头,指定 -H "header: value":
bypassfuzzer.py -u https://example.com/forbidden -H "Some-Header: blah" -H "Authorization: Bearer 1234567"
基于响应码和长度。如果某个响应出现了 8 次或更多,它会自动静音。
重复次数可在代码中修改,直到我添加一个标志来指定它
注意:不能同时与 -hc 或 -hl 一起使用(暂时)
# 开启智能过滤器
bypassfuzzer.py -u https://example.com/forbidden --smart
如果您想通过 Burp 代理流量,这很有用
bypassfuzzer.py -u https://example.com/forbidden --proxy http://127.0.0.1:8080
# 跳过发送请求头载荷
bypassfuzzer.py -u https://example.com/forbidden -sh
# 或 --skip-headers
# 跳过发送路径标准化载荷
bypassfuzzer.py -u https://example.com/forbidden -su
# 或 --skip-urls
提供以逗号分隔的列表,不带空格。 示例:
# 隐藏响应码
bypassfuzzer.py -u https://example.com/forbidden -hc 403,404,400
# 隐藏长度为 638 的响应
bypassfuzzer.py -u https://example.com/forbidden -hl 638
每个成功(200 OK)的请求和响应对都会保存到 SQLite 数据库中。
每个载荷都包含一个索引号,便于查询。

攻击结束后,检查结果,确定您想看的数据的索引或载荷。
您必须同时使用以下两个标志:
--display-by index 或 payload--display-interactions 索引号或带引号的载荷字符串# 按索引号显示
bypassfuzzer.py --display-by index --display-interactions 49
# 按载荷显示
bypassfuzzer.py --display-by payload --display-interactions "/%2e%2fAJAX/index.php"
结果:

为简单起见,每次运行工具时都会创建一个新的数据库。
您可以通过 --idb 标志查询特定的数据库。
注意:
interactions 目录内才能使用。--idb 指定数据库,则默认使用最新的数据库。bypassfuzzer.py --display-by index --display-interactions 49 --idb interactions_20240729_145149.db

使用 --oob 标志并提供您的 collaborator 或 ISH 域名
您需要自行检查回显,因为我目前无法为您完成此操作。
--oob abc123.oastify.com