Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

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

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

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2026-1961-foreman-poc — CVE-2026-1961 的 PoC — Foreman 的 WebSocket 代理(lib/ws_proxy.rb)中通过未净化的计算资源主机名导致的命令注入,进而以 foreman 用户身份实现 RCE。已负责任地披露并修补。 | Kitploit
工具/GitHubGitHub/kalnux/cve-2026-1961-foreman-poc
漏洞分析漏洞利用Web应用程序漏洞利用渗透测试红队
GitHubkalnux/cve-2026-1961-foreman-poc

CVE-2026-1961-foreman-poc

CVE-2026-1961 的 PoC — Foreman 的 WebSocket 代理(lib/ws_proxy.rb)中通过未净化的计算资源主机名导致的命令注入,进而以 foreman 用户身份实现 RCE。已负责任地披露并修补。

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

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Foreman WebSocket 代理命令注入(CVE-2026-1961)— PoC

针对 Foreman WebSocket 代理(lib/ws_proxy.rb)中命令注入漏洞的概念验证,已负责任地披露给 Red Hat 并完成修补。

摘要

Foreman 的 WebSocket 代理将未经净化的 host 值(来源于计算资源提供商的 API 响应,例如 VMware vSphere 的 HostSystem.name)直接插值到通过 Open3.popen3 执行的 shell 命令中。攻击者若能控制或伪造 Foreman 实例所连接的计算资源服务器,即可注入任意 shell 命令,在管理员打开虚拟机控制台时以 foreman 用户身份实现远程代码执行。

成功利用后可获取 Foreman 的数据库凭据和加密密钥,从而暴露所有已存储的基础设施凭据(vCenter、AWS、SSH 密钥、API 令牌),并进一步横向渗透至受管基础设施。

详情

CVECVE-2026-1961
CWECWE-78(操作系统命令注入)
CVSS 3.18.0(高危)- AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:H
受影响组件lib/ws_proxy.rb
受影响版本Foreman 至 3.18.0(含)(已在 3.17.0 上确认;代码路径自 2020 年以来未变更)
修复版本Foreman 3.18.1、3.17.2、3.16.3
所需认证无(攻击者运行恶意服务器;Foreman 管理员在正常工作流程中向其进行认证)
用户交互管理员在虚拟机上点击 Console(正常工作流程)
安全公告https://access.redhat.com/security/cve/cve-2026-1961

根本原因

在 lib/ws_proxy.rb:44 处,host 参数被直接插值到 shell 命令字符串中:

cmd = "websockify --daemon --idle-timeout=#{idle_timeout} --timeout=#{timeout} #{port} #{host}:#{host_port}"

host 来自计算资源 API 响应,在通过 Open3.popen3 传递给 shell 之前从未经过净化。

概念验证

malicious_vsphere_server.py 实现了一个最小化的 vSphere SOAP API,足以处理认证和虚拟机枚举,并返回一个包含 shell 元字符载荷的恶意 HostSystem.name 值。

用法

python3 malicious_vsphere_server.py

复现步骤

  1. 在攻击者系统上启动恶意 vSphere 服务器:
    python3 malicious_vsphere_server.py
    
  2. 配置 Foreman 计算资源(Foreman UI):
    • 导航至 Infrastructure → Compute Resources → Create Compute Resource
    • Provider:VMware
    • vCenter/Server:<attacker_ip>
    • Username / Password:任意(user / pass)
    • Load Datacenters(加载 EvilDatacenter)
    • Display Type:VNC
    • 取消勾选 VNC Console Passwords 和 Enable Caching
    • 提交
  3. 触发利用:
    • 导航至 Virtual Machines 标签页
    • 找到 TestVM
    • Actions → Console
  4. 在 Foreman 服务器上验证 RCE:
    find /tmp -name "vsphere_rce.txt" 2>/dev/null
    cat /tmp/systemd-private-*/tmp/vsphere_rce.txt
    
    预期输出:foreman

作者

Houssam Sahli(Malleum)

法律声明

在补丁发布后依照协调披露流程发布。仅供授权的安全测试和教育目的使用。请勿对您不拥有或未获得明确测试许可的系统使用。

下载工具