CISA紧急列入PHP2Shell双高危漏洞至KEV目录

2026.10.27 16:46
2026年10月27日,CISA将CVE-2026-109618与CVE-2026-109619这对PHP2Shell漏洞列入已遭利用漏洞目录(KEV),确认已在野被实战攻击,联邦机构修复死线为10月29日。两漏洞CVSS 4.0评分9.2,影响PHP 5.4至8.5全系列,PHP官方已于10月21日发布8.5.12等修复版本,无法升级者应下线服务或启用WAF。

两个藏在 PHP 核心引擎里十多年的内存安全漏洞,被 AI 挖了出来,如今已经出现在真实攻击里。

2026 年 10 月 27 日,美国网络安全和基础设施安全局(CISA)把 CVE-2026-109618 与 CVE-2026-109619 这对被称为“PHP2Shell”的双漏洞正式列入“已遭利用漏洞目录”(KEV)。这不是又一条高危通告,而是一道已经生效的通牒:CISA 确认攻击者正在实战中使用它们,美国联邦民事行政部门必须在 10 月 29 日前完成修复,并排查系统是否已被入侵。

KEV 收录:从“高危”到“正在被打”的分界线

CISA 的 KEV 目录和普通漏洞清单有一个本质区别。它只收录 CISA 确认“已在野被利用”的漏洞,一旦上榜,联邦机构就背上硬性的修复死线。PHP2Shell 的两条记录显示,它们于 2026 年 10 月 26 日被加入目录,修复截止日定在 10 月 29 日,同时明确要求按 BOD 26-04 进行取证排查。

从公开披露到 KEV 收录,中间只隔了不到一周。10 月 20 日,这两个 CVE 编号开始在 Hacker News 和社交媒体流传;PHP 安全团队当天发布预告,称将在次日发布安全更新;10 月 21 日补丁正式放出;10 月 26 日 KEV 收录;10 月 27 日 CISA 公开警报。这套“披露—补丁—确认利用—强制修复”的流水线,反应速度比过去几年大多数高危漏洞都要快。

这两个漏洞的危险性不在数量,而在位置。它们不在 WordPress、Drupal 或某个 CMS 插件里,而在 PHP 解释器本身。Wiz Research 在技术报告里写得很直白:这是“独立于上层应用”的远程代码执行。也就是说,只要服务器用 PHP 处理 Web 请求,无论上面跑的是什么程序,都可能被直接拿下。

CVSS 4.0 评分 9.2,攻击者无需身份认证、无需用户交互即可远程执行任意代码。受影响的 PHP 版本横跨 5.4 到 8.5,过去十年发布的每个版本至少踩中其中一个。Wiz 给出的背景数字更扎眼:PHP 驱动着全球约 70% 的网站。一个埋在语言核心里的 RCE,影响面不是“一批系统”,而是大半个互联网。

AI 把几十年的技术债变成了可利用漏洞

PHP2Shell 的特殊之处,首先在于它是怎么被发现的。Wiz Research 在 2026 年 8 月 19 日借助 Wiz Atlas、Gemini 4 Argon 与 GPT-5.6 Sol 找到了第一个漏洞,8 月 20 日就在 Drupal 上确认了未授权 RCE,8 月 21 日又在 WordPress 上复现成功。从发现到确认,只用了不到三天。

这两个漏洞的本质是内存安全问题。CVE-2026-109618 源于 upload-progress 反序列化中的 use-after-free;CVE-2026-109619 则是 longjmp() 处理致命错误时,让全局指针指向了已释放的内存区域,后续请求可以读取甚至跳转到这些区域,再叠加 OPcache 的类型混淆,最终拼成一条完整的 RCE 链。这类问题在 PHP 代码库里躺了十几年,不是没人看过,而是利用链太复杂:要精确控制内存布局、触发特定错误路径、绕过缓存机制,人工审计几乎不可能系统性地穷尽。

AI 的作用恰恰在这里。它不是“发现了一个新 bug”,而是把“知道有隐患”推进到“证明能利用”。Wiz 在报告里承认,这些底层缺陷存在已久,但要把它们组合成可利用的攻击链,复杂度已经逼近人类研究者的实际能力上限,是前沿 AI 模型把这个门槛大幅压低。这给整个行业提了个醒:那些被“人工审计过很多遍”的老代码,可能只是还没遇到会组合爆炸的 AI。

为什么 Apache mod_php 被点名为最高风险

PHP 官方在 2026 年 10 月 21 日发布修复版本 8.5.12、8.4.27、8.3.36 与 8.2.35 时,CISA 同步发出警报,明确列出受影响的环境:Apache 的 mod_php、PHP-FPM、php-cgi、FrankenPHP 与 LiteSpeed。其中 mod_php 被 PHP 官方列为风险最高。

原因不难理解。mod_php 以 Apache 模块形式内嵌在 Web 服务器进程里,与请求处理同进程运行,一旦解释器被攻破,攻击者拿到的就是服务器进程的完整权限。相比之下,PHP-FPM 至少还有一层进程隔离作为缓冲。但这不代表 FPM 就安全:漏洞在解释器核心,隔离只能增加利用难度,不能消除漏洞本身。

更麻烦的是版本分布。修复版本只覆盖仍在支持的分支,而 PHP 5 等早已停止支持的版本确认受影响,却不会再有官方补丁。watchTowr 在其 FAQ 中确认,已通过 Attacker Eye 蜜罐网络观察到针对这些漏洞的真实攻击。对那些跑着老旧 PHP 版本的系统来说,“升级”两个字说起来容易:业务兼容性、老旧框架、无人敢动的遗留代码,每一样都是拦路虎。

72 小时修复死线背后的监管逻辑

CISA 给联邦机构留的修复窗口只有 72 小时。这个节奏不是随意定的。KEV 目录的机制是:一旦确认在野利用,就给联邦民事行政部门一个硬死线,逾期不修要承担合规责任;对私营部门而言,它则是“最强的优先修复信号”。

这里还有一层容易被忽略的要求:取证排查。KEV 条目明确要求按 BOD 26-04 进行 forensic triage。道理很简单,既然攻击者已经在利用,那么在你打补丁之前,系统可能早就被进过了。只打补丁不查日志,等于把门锁换了却没查家里有没有被翻过。对任何重视安全的组织来说,这一步和打补丁同等重要。

现在该做什么

对运维和安全团队来说,优先级很清楚。

最彻底的办法是立即升级到修复版本:8.5.12、8.4.27、8.3.36 或 8.2.35。

暂时无法升级的系统,CISA 和行业厂商的建议一致:要么下线相关服务,要么在边界启用 WAF 规则做临时拦截。临时措施不是长久之计,但能争取迁移时间。

打补丁前后都要查入侵痕迹。按 CISA 的要求排查日志、异常进程、可疑 Webshell 和对外连接。补丁防的是下一次,排查查的是上一次。

还要重新评估老旧 PHP 版本的风险敞口。PHP 5 等已停更版本没有补丁,继续暴露在互联网上等于把大门敞开,迁移或隔离是唯一出路。

AI 正在重写漏洞发现的成本曲线:过去靠人工审计几十年都挖不动的内存债,现在可能被一个模型在几天内组合成攻击链。PHP2Shell 给整个行业的提醒是,补丁速度必须追上 AI 的发现速度,否则每一个“老代码很安全”的假设,都会变成下一个 KEV 条目。

作品声明:内容由AI生成