CVE-2026-1961该漏洞位于Foreman的WebSocket代理实现中。由于系统在构建Shell命令时,未对来自计算资源提供程序的hostname值进行有效的安全清洗,导致存在命令注入风险。攻击者可控制恶意计算资源服务器,诱导用户访问VM VNC控制台功能,从而在Foreman服务器上远程执行任意代码,最终导致敏感数据泄露及基础设施被完全攻陷。
漏洞的核心在于Foreman处理虚拟机VNC控制台代理请求时的输入验证缺失。当Foreman需要通过WebSocket连接到后端计算资源(如Libvirt、VMware等)以提供控制台访问时,它会获取计算资源返回的hostname,并将其直接拼接进系统Shell命令中执行。由于缺乏对hostname特殊字符的过滤,攻击者若能控制恶意的计算资源服务器,即可将hostname构造为包含恶意Shell指令(如反引号或分号拼接)的字符串。一旦Foreman管理员或用户在Web界面点击访问该虚拟机的控制台,Foreman服务器端便会执行这些恶意命令。由于服务通常以高权限运行,攻击者可借此获得服务器的完全控制权,进而窃取数据库凭证、横向移动并破坏整个管理的基础设施。