CVE 索引EN
L5 · 屎无前例PHP · RCE · 提前泄露php2shell

PHP2Shell:补丁和漏洞利用一起冲出来了

PHP2Shell:PHP 核心两个高危 RCE 在补丁发布前一天泄露,5.4 以来几乎所有 PHP 版本都中招

CVE-2026-109618 和 CVE-2026-109619(CVSS 均为 9.2)能在 PHP 本身里实现远程代码执行。概念验证视频在发版前一晚泄露,补丁和漏洞利用几乎同时到来。

披露时间
2026年10月21日
更新于 2026年11月4日
严重程度
CVSS 9.2 × 2
本页收录 3 个 CVE
波及范围
PHP-FPM、mod_php、php-cgi、FrankenPHP、LiteSpeed:5.4 以来几乎所有 PHP
php
在野利用
已发现
CISA 收录两个 PHP CVE;Palo Alto 报告面向公网 PAN-OS 管理界面的攻击。

一句话说清楚

让 PHP 恰好在最要命的时刻耗尽内存,或者去戳一个还留着上一个请求已释放状态的 worker(已确认的入口是 session.upload_progress),PHP 接下来执行的就是你塞进去的字节。

发生了什么

两个漏洞都出在 PHP 自己的引擎里,不是哪个框架或插件的问题。5.4 以来几乎每个 PHP 版本都至少受其中一个影响。Apache mod_php 风险最高,但 PHP-FPM、php-cgi、FrankenPHP 和 LiteSpeed 也都在影响范围内。

原定的披露日期是 10月22日。10月20日晚上,报告团队之一 Calif 意外公开了一段概念验证视频,PHP 随即在 10月21日 14:00 UTC 提前发版。于是这一回,防守方和攻击方难得站在了同一条起跑线上。

早期报道: Patchstack 的合作方和 watchTowr 在几小时内就看到了真实的攻击尝试,Cloudflare 也看到了早期尝试。Sophos 没有收到利用报告,截至本文撰写时也没人确认过成功入侵。我们按最坏的可信情况定级:PoC 已公开 + 默认配置即受影响 + 基本覆盖整个 Web = L5。

常见误解

关掉 session.upload_progress 不等于修复。它只切断了通往 CVE-2026-109619 的已确认路径。内存耗尽那个漏洞 CVE-2026-109618 根本不需要它。

10月22日更新: AWS 现已报告广泛在野利用,并在 MadPot 中追溯发现了 10月17日、公开披露前的利用尝试。此前“有争议”的状态已被这份一手报告取代。AWS 没有确认早期尝试能在真实系统上成功。排查至少应回溯至 10月17日;L5 评级不变。

10月23日更新: Sophos 在 10月22日更正了 16:18 UTC 关于客户成功入侵的说法。21:21 UTC 的更新称尝试失败,Potassium 载荷被阻止。这修订的是 Sophos 自身观察到的结果,不推翻 AWS 独立的 MadPot 报告。基于已观察到的利用活动,在野状态仍为“已发现”,评级仍为 L5,但不声称客户已成功感染。应将指标与进程、请求及文件证据关联后,再作判断。

10月22日 ClearPass 更新: HPE 确认 ClearPass Policy Manager 受这两个 CVE 影响。6.14.0 / 6.11.15 及更早版本完全受影响;6.14.1 / 6.11.16 只能部分缓解,剩余攻击需要已认证的 cluster-admin 权限。10月23日更正: HPE 第 2 版公告已为 6.14.1 和 6.11.16 发布完整热补丁。升级基础版本后,还须安装对应的 PHP 热补丁。完成修补前,应通过专用网段和防火墙策略限制 CLI 与 Web 管理访问,并撤下公开访客门户。上方 PHP 运行时版本表和检查器不能判断 ClearPass 设备是否已完成修复。

PHP 还在 10月23日单独披露了依赖罕见配置的上传进度 RCE 风险:CVE-2026-115560。10月21日的运行时补丁未覆盖该问题。

10月23日 Tenable 更新: TNS-2026-30 和 TNS-2026-31 涉及相同的两个 PHP CVE。Security Center 6.9.1 及更早版本、Enclave Security 1.9.1 及更早版本受影响。应应用对应产品的 SC-202610.2 补丁:软件包覆盖 Security Center 6.6.0 / 6.7.2 / 6.8.0 / 6.9.1 和 Enclave Security 1.7.0 / 1.8.0 / 1.9.1,将内置 PHP 升级至 8.2.35。单独升级系统 PHP 不能修补产品内置的副本。上方运行时检查器只检查 PHP 本身,不能核实这些设备补丁是否已安装。没有新增已遭利用的客户数量。

独立部署补丁的软件包针对 Oracle Linux 8+ 或 RHEL 8+。Enclave 支持的组合为:Enclave 1.7.0 上的 Security Center 6.7.5、Enclave 1.8.0 上的 Security Center 6.8.0,以及 Enclave 1.9.1 上的 Security Center 6.9.1。按对应的独立部署或 Pod 内安装说明操作。

10月26日更新: Adel Karimi 报告在 10月24日,三台运行 PHP 8.4.26、单 worker Apache mod_php、内存上限为 128 MiB 的蜜罐上出现 35 次 Shell 启动。这证实的是诱饵系统上的执行,并非 35 家业务受害者。证据支持 CVE-2026-109618,但未证实独立的 CVE-2026-109619 路径;未测量其他环境的利用可靠性。未观察到第二阶段文件下载。修复版本及 L5 评级不变。

另据 Unit 42 10月25日更正,它撤回了 10月23日将欧洲政府机构入侵归因于 PHP2Shell 的说法:无法确认这些 CVE 是初始入侵入口。这不推翻 Karimi 独立的蜜罐证据或 AWS 早期观测。

10 月 28 日更新: CISA 已于 10 月 26 日将两个 PHP2Shell CVE 加入 KEV,二者的联邦修复期限均为 10 月 29 日,并要求按适用的 CISA 指导开展取证分诊;勒索软件使用情况仍未知。这些条目确认两个 CVE 均遭利用,但没有给出受害者群体,也不能证明 Karimi 观察到的链条使用了两个漏洞。Unit 42 的撤回仍然有效,KEV 收录不会推翻该更正。

10 月 28 日进一步更新: Dream 报告在未具名防火墙平台上发现定制 PHP2Shell 到 Fragnesia 攻击链:24 台面向互联网的防火墙及一台内部管理服务器,未在该调查之外独立核实。按其描述,恢复的材料证实了凭据提取及目录枚举,但无法确定密码喷洒、后门账号创建或 SAML 密钥提取是否成功。报告未指明厂商,也未证明 AI 编写了漏洞利用。

另据 Palo Alto 的独立通报,面向公网的 PAN-OS 管理界面已遭攻击;这不能确认 Dream 的未具名平台,也不推翻 Unit 42 更早的撤回。PHP 检查器不能判断设备热补丁或内核修复情况。CISA 于 10 月 28 日收录 CVE-2026-46300,联邦期限为 10 月 31 日,并要求取证分诊;勒索软件使用情况仍未知。两个 PHP 漏洞的期限仍为 10 月 29 日。

10月29日较早更新(已由下文取代): 当时 Palo Alto 已发布前五个热补丁;在我们较早的检查中,11.1.7-h12 仍标注预计10月30日发布。按已安装的维护分支选择目标;11.2.10-h16 只修 PHP、h17 同时修 PHP 与 Brotli 的区别,以及管理平面访问限制,仍然适用。

11月1日更正(UTC): 厂商10月29日历史记录现已确认 11.1.7-h12 已发布,并移除预计日期。这取代了此前更新保留的预测。按厂商矩阵选择对应维护分支的修复版本;上述管理接口访问限制,以及仅修复 PHP 与同时修复 PHP、Brotli 的热补丁区别,仍然适用。

11 月 2 日补充群晖套件指引: 厂商10月28日的声明将更新扩展至较旧 DSM。请通过套件中心安装适合 DSM 的构建;上方通用 PHP 版本检查器不能核验群晖移植补丁。声明中 DSM 6.2 的10月29日预计日期不能证明补丁已发布。这是此前遗漏的部署路径,不是新披露的 PHP 漏洞,也不是群晖全线产品遭入侵的证据。

11 月 4 日跟进群晖 10 月 29/31 日修订: SA-26:14 现确认旧 DSM 专用套件修复,取代较早声明中尚未确认的 DSM 6.2 预计日期。清单逐项列出厂商构建,较新的通用 PHP 版本不能代替匹配 DSM 的套件。这是此前遗漏的处置路径,不是新披露的 PHP 漏洞,也不是群晖全线产品遭入侵的证据。通用 PHP 检查器不能核验群晖回补补丁。

马桶里有什么

内存耗尽时请求只初始化了一半

如果 PHP 在不该的时候耗尽内存,可能会在内部请求数据只初始化了一部分时就中途退出。这条路径不依赖 session.upload_progress。

说人话: 马桶只拧了一半螺丝就装好了,还是有人坐了上去。

释放后仍被使用的过期请求状态

请求所属的全局状态在内存释放后依然残留,同一个 worker 上的后续请求会继续使用它。已确认的触发方式是 session.upload_progress。

说人话: 你明明冲掉了,它却从下一个隔间冒了出来,还接管了你的服务器。

Fragnesia——相关 Linux 本地提权

这是更早披露的内核漏洞,可修改页缓存数据;Dream 报告在特定防火墙构建上,将它接在 PHP 代码执行之后。它不是第三个 PHP 漏洞,升级 PHP 不能修补内核。

你踩到了吗?

在每台机器上运行 php -v,然后输入版本号,或者点一个最接近的。

修复版本(2026年10月21日)
分支安全版本状态
PHP 8.58.5.12支持中,已修复
PHP 8.48.4.27支持中,已修复
PHP 8.38.3.36仅安全修复,已修复
PHP 8.28.2.35仅安全修复,已修复。2026年12月31日停止维护
PHP 8.1 及更早版本none已停止维护。7.4–8.1 只能靠发行版 / LTS 厂商或源码移植补丁

今晚补不了?先把洞堵上

php.ini
; PHP2Shell 临时加固(只防一部分!)
; 只能挡住已确认的 CVE-2026-109619 session 路径
session.upload_progress.enabled = Off

改完重载 PHP-FPM / Apache。php.net 说得很清楚,升级才是唯一的完整修复:这一招对 CVE-2026-109618 毫无作用。在代理层限制请求体大小也能提高攻击门槛。

案发时间线

  1. 2026年10月17日

    AWS 在 MadPot 中追溯发现最早的利用尝试

    AWS 于 10月21日报告;这些尝试是否能在真实系统上成功仍不清楚。

  2. 2026年10月20日

    细节从厕所里溜了出来

    Hacker News 上有帖子说漏洞定于 10月22日披露。UTC 时间 20:00 左右,Calif 误将概念验证视频公开。PHP 当天发布了提前通知。

  3. 10月21日 03:02 UTC

    Cloudflare 默认开启 WAF 规则

  4. 10月21日 07:34 UTC

    Patchstack 的托管合作方报告利用事件

    它在 13:57 UTC 更新的遥测数据显示只有探测,没有入侵的确凿证据。

  5. 10月21日 14:00 UTC

    PHP 发布 8.5.12、8.4.27、8.3.36 和 8.2.35

    Linux 发行版和 LTS 厂商提前拿到了补丁。

  6. 10月21日 14:19 UTC

    watchTowr 观察到活跃的利用尝试

    watchTowr 也复现了 CVE-2026-109618。Sophos 表示尚未收到在野利用的报告。

  7. 2026年10月21日

    AWS 报告补丁发布后的广泛利用

    多个攻击者针对 MadPot 发起利用,其中包括补丁公开前的尝试。

  8. 10月22日 16:18 UTC

    Sophos 最初报告一起客户成功入侵

    这一评估在当天稍后被撤回。

  9. 10月22日 21:21 UTC

    Sophos 更正为失败的利用尝试

    防护措施阻止了 Potassium 载荷投递;其遥测未证实成功入侵。

  10. 2026年10月22日

    HPE 确认 ClearPass 受影响且只有部分缓解

    ClearPass 6.14.1 和 6.11.16 将剩余攻击限制为需要已认证的 cluster-admin 权限;当时完整修复仍在开发。

  11. 2026年10月23日

    HPE 发布完整 ClearPass PHP 热补丁

    为 6.14.1 或 6.11.16 安装对应的 PHP 热补丁;仅基础版本不足以完成修复。

  12. 2026年10月23日

    Tenable 为 Security Center 和 Enclave Security 发布 PHP 补丁

    SC-202610.2 将内置 PHP 升级至 8.2.35;仅检查产品基础版本不能确认修复。

  13. 2026年10月24日

    Karimi 在三台蜜罐上记录到 35 次 Shell 启动

    数据包与进程证据支持 CVE-2026-109618,但未证实独立的 CVE-2026-109619 路径。

  14. 2026年10月25日

    Unit 42 撤回政府机构案例的漏洞归属

    无法将初始入侵与 PHP2Shell CVE 关联;撤回 10月23日的评估。

  15. 2026年10月26日

    CISA 将两个 PHP2Shell CVE 加入 KEV

    两个条目的联邦期限均为 10 月 29 日,要求按适用 CISA 指导开展取证分诊;勒索软件使用情况未知。

  16. 2026年10月26日

    Dream 报告针对防火墙定制的攻击链

    厂商及受影响构建未公开;所报服务器总数未获独立核实。

  17. 2026年10月28日

    Palo Alto 确认管理界面攻击;CISA 收录 Fragnesia

    内核 KEV 的联邦期限为 10 月 31 日,要求取证分诊,与 PHP 的期限分开。

  18. 2026年10月28日

    群晖将 PHP 包更新扩展至较旧 DSM

    厂商新增 DSM 7.1 和 7.0 的已发布更新;通知仍称 DSM 6.2 补丁计划于10月29日发布,不能视为已确认发布。

  19. 2026年10月29日

    群晖列出旧 DSM 的 PHP 套件构建

    SA-26:14 列出 DSM 6.2/7.0/7.1 的 PHP 7.4 及 DSM 7.0/7.1 的 PHP 8.0,取代此前修复是否可用的不确定性。

  20. 2026年10月29日

    Palo Alto 发布此前计划中的五个热补丁

    10.2.7-h39、10.2.10-h42、11.2.4-h23、12.1.4-h13 和 12.1.10-h3 已发布。

  21. 2026年10月29日

    最后一项 PAN-OS 热补丁也已发布

    厂商历史记录确认 11.1.7-h12 已发布,移除此前10月30日的预计日期。

  22. 2026年10月31日

    群晖补充旧 DSM 的 Calendar 和 Mail Station 修复

    SA-26:14 现分别列出 DSM 6.2 及 DSM 7.0–7.1 构建,较早的通用版本号不能覆盖所有 DSM。

各方说法

我们列出每条说法和它的出处,并标出一手来源(厂商、研究人员、软件仓库)。各方说法不一致时,按最坏的可信情况定级。

  • php.net news一手来源10月20日发布提前通知,10月21日发版。升级是唯一的完整修复
  • Patchstack一手来源标题说攻击正在进行;后续遥测只显示探测,没有确认的入侵
  • Sophos一手来源最初未收到利用报告;10月22日的成功入侵说法在 21:21 UTC 撤回,更正为失败尝试,并提供 Potassium 指标
  • The Hacker News致谢 Wiz Research、Calif 和 OpenAI Codex Security;Gemini 团队协助了修复
  • Huntress“php2shell”这个名字是它起的;漏洞在发版前就泄露了
  • JFrog Security Research两个 CVE 的技术深度分析
  • OpenAI php2shell-checker通过 URL 响应头或本地 php -v 检查版本;修复版本与 php.net 一致,识别不了发行版移植的补丁
  • AWS Security Blog一手来源MadPot 记录了 10月17日的利用尝试;发布后出现广泛利用;早期尝试能否在真实系统上成功仍不清楚
  • HPE HPESBNW05171 签名公告一手来源10月23日修订版为 ClearPass 6.14.1 和 6.11.16 发布完整 PHP 热补丁;仅基础版本仍受影响
  • Tenable TNS-2026-30一手来源10月23日发布的 Security Center SC-202610.2 补丁将 PHP 升级至 8.2.35
  • Tenable TNS-2026-31一手来源10月23日发布的 Enclave Security SC-202610.2 补丁将 PHP 升级至 8.2.35
  • Tenable Security Center 补丁发布说明一手来源独立部署的 SC-202610.2 软件包针对所列产品版本,运行平台为 Oracle Linux 或 RHEL 8 及之后版本
  • Tenable Enclave 补丁发布说明一手来源Enclave 1.7.0 / 1.8.0 / 1.9.1 分别对应 Security Center 6.7.5 / 6.8.0 / 6.9.1
  • Adel Karimi 请求与进程关联证据一手来源三台单 worker mod_php 蜜罐上的 35 次 Shell 启动;完整指标及证据局限
  • Unit 42 10月25日更正一手来源撤回 10月23日政府机构案例的漏洞归属;未确认通过这些 CVE 初始入侵
  • CISA KEV 机器可读目录一手来源PHP CVE 于 10 月 26 日加入,联邦期限为 10 月 29 日;相关内核 CVE-2026-46300 于 10 月 28 日加入,期限为 10 月 31 日。三者均要求取证分诊,勒索软件使用情况 Unknown。
  • CISA BOD 26-04 实施指导一手来源KEV 条目引用的取证分诊及风险优先级操作指导。
  • Dream 防火墙攻击链调查一手来源10 月 26 日报告;定制 PHP 到内核攻击链、未公开厂商、所报服务器总数及入侵后活动证据局限。
  • Palo Alto Networks PHP 产品公告一手来源10 月 28 日确认利用、PAN-OS 维护目标及预计时间、仅限管理界面的范围,以及 Brotli 热补丁例外。
  • 群晖 PHP2Shell 套件公告一手来源10 月 29/31 日修订列出 DSM 专用 PHP 7.4/8.0、Calendar 及 Mail Station 构建;PHP 7.3 EOL、Hyper Backup 不受影响,并区分内部 OS PHP;Mail Station 构建号按原文保留。
  • 群晖10月28日更新的声明一手来源将更新扩展至较旧 DSM,仍将 DSM 6.2 标为计划发布,并要求手动更新 MailStation。