PHP套件管理器Composer爆两指令注入高风险漏洞,可远端触发任意指令执行
Composer曝出两个高危指令注入漏洞(CVE-2026-40261、CVE-2026-40176),影响2.0至2.9.5版本,根源在于Perforce驱动模块未对输入参数转义,攻击者可远程触发任意命令。官方已发布2.2.27和2.9.6修复版本,建议用户立即升级。
Composer近期曝出两个高危指令注入漏洞,编号CVE-2026-40261和CVE-2026-40176,影响范围横跨2.0到2.9.5版本。根源在于Perforce驱动模块在构建Shell指令时,没有对输入参数做转义处理——这是一个经典的安全疏忽。其中CVE-2026-40261的CVSS评分高达8.8,更危险的是,攻击者可以通过恶意仓库远程触发任意命令,无需用户端安装Perforce就能得手,直接构成供应链攻击风险。官方已经紧急放出2.2.27和2.9.6两个修复版本。

两个漏洞的成因本质上是一回事:Composer的Perforce驱动器在拼接系统指令时,直接把外部提供的参数原封不动地嵌入命令行,既没有过滤也没有转义。攻击者只要在参数里塞进Shell特殊字符,就能注入任意指令。
先看CVE-2026-40261。这个漏洞出在Perforce::syncCodeBase()方法里——同步代码的时候,方法直接把来源引用追加到Shell指令中。而来源引用本身是套件元数据的一部分,任何Composer包仓库在提供套件信息时,都可以声明Perforce作为来源类型,并在里面夹带恶意内容。换句话说,只要开发者从被入侵或者故意架设的Composer仓库安装套件,就可能不知不觉间触发命令执行。具体来说,用--prefer-source安装或更新依赖包,或者安装dev前缀版本时的默认行为,都会触发这个漏洞。
另一个漏洞CVE-2026-40176则出现在Perforce::generateP4Command()方法里。这个方法生成P4命令时,直接把用户提供的Perforce连接参数(Port、User、Client)内嵌到指令字符串中。攻击者可以在composer.json里定义恶意的Perforce VCS仓库配置来触发命令注入。不过这个漏洞的攻击面相对窄一些——因为VCS仓库定义只能从项目根目录的composer.json或Composer全局配置目录加载,不能通过已安装的依赖包间接触发,所以实际利用难度更高。
两个漏洞影响Composer 2.0到2.2.26的LTS分支,以及2.3到2.9.5的主线分支。官方已经在2.2.27和2.9.6版本中完成修复。如果暂时无法升级,针对CVE-2026-40261,可以改用下载压缩包的方式安装套件,避免以源码方式获取依赖包;对于CVE-2026-40176,则要避免在来源不明的项目目录中执行Composer命令。安全无小事,尤其是这种能通过供应链传播的漏洞,务必尽快处理。
Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。
极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。
















