CVE-2026-40176
Composer 容易受到通过恶意 Perforce 存储库进行的命令注入攻击
- 已发布
- 2026年4月15日
- 已更新
- 2026年7月15日
- 分配 CNA
- GitHub_M
- 观察到的证据
- 2026年8月8日
初级CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H低 · 未来 30 天
- 百分位
- 62.8%
- 型号日期
- 2026年9月21日
EPSS 是统计估计,而不是确定性或影响衡量标准。将其与 CVSS、KEV 状态、暴露程度和您的环境相结合。
总结
Composer 是 PHP 的依赖管理器。版本 1.0 至 2.2.26 以及 2.3 至 2.9.5 在 Perforce::generateP4Command() 方法中包含一个命令注入漏洞,该方法通过插值用户提供的 Perforce 连接参数(端口、用户、客户端)来构造 shell 命令,且未进行适当的转义。攻击者可以通过恶意 composer.json 中声明的 Perforce VCS 仓库中的这些值注入任意命令,从而在运行 Composer 的用户的上下文中执行命令,即使未安装 Perforce 也是如此。VCS 仓库仅从根 composer.json 或 composer 配置目录加载,因此无法通过作为依赖项安装的软件包的 composer.json 文件加以利用。如果用户对不受信任的项目运行 Composer 命令,且这些项目包含攻击者提供的 composer.json 文件,则用户将面临风险。此问题已在 Composer 2.2.27(2.2 LTS)和 2.9.6(主线版)中修复。
来源
4CVE-2026-40176 的差异化概念验证,演示了通过恶意仓库 URL 在 Composer 的 Perforce 驱动程序中实现操作系统命令注入,并针对受影响版本和已修复版本进行自动化 A/B 测试。
概念验证,演示 Composer 的 Perforce 驱动程序中存在的命令注入漏洞,包含两种攻击向量及基于 Docker 的测试方法。
概念验证,演示 Composer 的 Perforce 驱动中的命令注入漏洞(CVE-2026-40176),可通过精心构造的仓库配置实现远程代码执行。
负责任的使用
仅在您拥有或有权测试的系统上使用漏洞信息。 Kitploit 链接到公共研究元数据,并且不存储漏洞代码或恶意负载。