关于SmuggleFuzz
SmuggleFuzz是一款功能强大的高级HTTP降级走私安全扫描工具,该工具基于纯Go语言开发,并且高度可配置。SmuggleFuzz为广大研究人员提供了一个可定制的小工具列表,可以帮助我们深入了解目标应用程序的HTTP降级走私安全问题。
SmuggleFuzz支持研究人员自定义实现检测方法,包括监控HTTP状态码和响应大小,而且还可以处理RST_STREAM帧,以更好地定位成功的HTTP走私请求或识别失败的测试向量。
工具安装
发布版本
广大研究人员可以直接访问该项目的【Releases页面】下载并安装最新版本的SmuggleFuzz工具。
手动构建
由于该工具基于纯Go语言开发,因此我们首先需要在本地设备上安装并配置好最新版本的Go语言环境。
然后运行下列命令下载该工具的最新版本源码:
go install github.com/moopinger/smugglefuzz@latest
代码编译
或者,使用下列命令将该项目源码克隆至本地:
git clone https://github.com/moopinger/smugglefuzz.git
然后切换到项目目录中,使用go build构建项目源码:
cd smugglefuzz go build . ./smugglefuzz
工具使用
当前版本的SmuggleFuzz支持三种命令,即scan、request和output。
scan命令
Usage: smugglefuzz scan [flags] Flags: -c, --confirm 发生超时的时候,启用该参数可以判断目标是否存在漏洞 -d, --data string 要发送的HTTP/2数据帧,例如99\r\n (默认为"99\r\n") --dc 禁用输出颜色高亮显示 -f, --file string 包含多个URL格式目标的文件,每个目标单独一行 --filter string 通过字符串或帧类型过滤请求,例如 405, 200, 502, TIMEOUT, RST, GOAWAY,等. -H, --header string 插入一个自定义Header,格式为"Cookie: date=...; session=...;" -h, --help 查看scan命令帮助信息 -i, --interval int 检测超时周期,单位为秒(默认为5秒 -x, --method string 要使用的HTTP请求方法(默认为"POST") -s, --save-success string 如果请求被确认为成功,则将结果存储至文件 -t, --threads int 要运行的线程数量(默认为4) -u, --url string 要扫描的目标URL -w, --wordlist string 要使用的小工具自定义列表
request
Usage: smugglefuzz request [flags] Flags: -a, --attack string 测试Header,由;分隔 -d, --data string 要发送的HTTP/2数据帧默认为"99\r\n") --dc 禁用输出颜色高亮 -H, --header string 插入自定义Header,例如"Cookie: values" -h, --help 查看request命令帮助信息 -i, --interval int 检测超时周期,单位为秒(默认为5秒) -x, --method string 要使用的HTTP请求方法(默认为"POST") -u, --url string 提交请求的目标URL
工具使用演示
scan命令
smugglefuzz scan -u https://example.com/ --confirm smugglefuzz scan -u https://example.com/ --filter TIMEOUT --confirm smugglefuzz scan -u https://example.com/ -w wordlist.txt -t 10 --confirm --filter TIMEOUT smugglefuzz scan --dc -u https://example.com/ -w wordlist.txt -x PUT --confirm smugglefuzz scan -f multiple_targets.txt --confirm -t 10 smugglefuzz scan -f multiple_targets.txt -w wordlist.txt --confirm -s ./save-success.txt --filter TIMEOUT smugglefuzz scan -f multiple_targets.txt -w wordlist.txt -H "Cookie: date=...; session=...;" -s ./save-success.txt -x PUT --filter TIMEOUT
request命令
smugglefuzz request -u https://www.example.com/ -a "content-length\t; 13" smugglefuzz request -u https://www.example.com/ -a "content-length\t; 13" -x PUT smugglefuzz request -u https://www.example.com/ -a "content-length\t; 13" -H "Cookie: date=...; session=...;" --data "223\r\n"
工具运行截图
项目地址
SmuggleFuzz:【GitHub传送门】
参考资料
https://moopinger.github.io/blog/smugglefuzz/fuzzing/smuggling/2024/01/31/SmuggleFuzz.html
4A评测 - 免责申明
本站提供的一切软件、教程和内容信息仅限用于学习和研究目的。
不得将上述内容用于商业或者非法用途,否则一切后果请用户自负。
本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。
如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。敬请谅解!
程序来源网络,不确保不包含木马病毒等危险内容,请在确保安全的情况下或使用虚拟机使用。
侵权违规投诉邮箱:4ablog168#gmail.com(#换成@)