SmuggleFuzz:一款功能强大的高级HTTP降级走私安全扫描工具

2024-03-09 993 0

关于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

https://golang.org/x/net/http2


4A评测 - 免责申明

本站提供的一切软件、教程和内容信息仅限用于学习和研究目的。

不得将上述内容用于商业或者非法用途,否则一切后果请用户自负。

本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。

如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。敬请谅解!

程序来源网络,不确保不包含木马病毒等危险内容,请在确保安全的情况下或使用虚拟机使用。

侵权违规投诉邮箱:4ablog168#gmail.com(#换成@)

相关文章

如何使用CODASM编码Payload并降低熵值
SessionExec:一款针对会话安全的安全命令测试工具
Arkime:一款大规模数据包捕获和索引数据库系统
从蓝队流量角度分析Shiro-550反序列化漏洞
万字长文浅谈三高系统建设方法论和实践
你遇到过哪些奇葩面试题目;如何考察渗透测试与安全管理能力| FB甲方群话题讨论

发布评论