PHPCSUtils任意命令执行漏洞(CVE-2026-65954)
一、漏洞技术信息
漏洞类型:代码执行(Eval代码注入)
影响产品及版本:PHPCSUtils 工具(版本范围:1.0.0-alpha1 至 1.2.3)
攻击场景:攻击者通过构造恶意PHP代码中的回调形式数组键,在PHPCSUtils扫描过程中触发eval()函数执行任意命令。需本地环境触发且依赖用户交互(如上传恶意文件触发扫描)。
在野利用情况:目前未发现公开在野利用证据,但漏洞利用复杂度低(CVSS Exploit Score: 1.8),存在潜在风险。
威胁团伙:暂无关联威胁团伙信息。
二、安全活动事件分析
事件一:2026年10月12日,PHPCSUtils官方发布安全公告(GHSA-r6hr-vr92-vv28)披露漏洞详情。
事件二:截至2026年10月13日,无公开安全事件记录该漏洞被实际攻击活动利用。
三、技术分析和建议
分析:漏洞源于PHPCSUtils\AbstractSniffs\AbstractArrayDeclarationSniff::getActualArrayKey()方法对未授权数组键表达式使用eval()动态执行。攻击者可通过构造包含恶意PHP回调的数组键(如Universal.Arrays.DuplicateArrayKey或MixedArrayKeyTypes路径),在代码扫描过程中实现远程命令执行(RCE)。由于漏洞利用需本地触发且依赖用户交互,主要风险场景为内部代码审计或CI/CD流水线中扫描未受信任代码。
四、建议措施
紧急升级:将PHPCSUtils更新至1.2.3版本(官方已修复)。
输入验证强化:对扫描代码中的数组键表达式实施白名单过滤,禁止动态执行不可信内容。
运行时隔离:在沙箱环境中执行代码扫描任务,限制eval()等高危函数的执行权限。
代码审计:检查自定义sniff扩展逻辑,避免直接调用未验证的动态执行函数。
五、结论概述
综合分析表明,PHPCSUtils的Eval代码注入漏洞(CWE-95)允许本地攻击者通过恶意PHP代码实现任意命令执行,尽管需用户交互且未观察到在野利用,但CVSS评分为8.6(高危)。建议受影响用户立即升级至1.2.3版本,并加强代码扫描环境的权限控制。