InfoQ

PHP Patches Two Critical RCE Flaws That Were Already Under Attack

8.5内容质量
PHP Patches Two Critical RCE Flaws That Were Already Under Attack

TL;DR · AI 摘要

PHP紧急修复两个9.2分RCE漏洞,亚马逊证实补丁发布前已遭攻击,需立即升级。

核心要点

  • PHP 8.5.12等版本修复CVE-2026-109618/19,CVSS评分9.2
  • 亚马逊10月17日发现攻击尝试,早于补丁发布四天
  • Cloudflare提前9小时部署WAF规则阻断攻击

结构提纲

按章节快速跳转。

  1. PHP发布紧急补丁修复两个关键RCE漏洞,CVSS评分9.2。

  2. 两个内存安全漏洞影响PHP 5.4以来所有未修补版本。

  3. Apache mod_php确认存在远程代码执行漏洞。

  4. 亚马逊10月17日发现攻击,早于补丁发布四天。

  5. CVE提前泄露导致攻击者可分析补丁二进制文件。

  6. Cloudflare提前部署WAF规则,部分用户选择下线服务。

思维导图

用一张图看清主题之间的关系。

查看大纲文本(无障碍 / 无 JS 友好)
  • PHP RCE漏洞修复
    • 漏洞详情
      • CVSS 9.2评分
      • 影响PHP 5.4+未修补版本
    • 攻击时间线
      • 10月17日亚马逊发现攻击
      • 10月21日补丁发布
    • 应对措施
      • Cloudflare提前WAF规则
      • 用户下线服务

金句 / Highlights

值得收藏与分享的关键句。

#PHP#安全#漏洞#RCE#CVSS
打开原文

PHP 修复两个关键 RCE 漏洞,这些漏洞已被攻击者利用 - InfoQ

InfoQ 首页 News PHP 修复两个关键 RCE 漏洞,这些漏洞已被攻击者利用

开发

QCon AI Boston(2027 年 7 月 8-9 日):AI 原型已经成功。生产环境中会发生什么?

PHP 修复两个关键 RCE 漏洞,这些漏洞已被攻击者利用

2026 年 10 月 25 日 4 分钟阅读

作者:

  • Steef-Jan Wiggers

#### 关注我们

YouTube

232K 粉丝

LinkedIn

26K 粉丝

Instagram

新

RSS

19K 读者

X

57.1k 粉丝

Facebook

21K 点赞

Bluesky

收听这篇文章 -

0:00

音频准备播放

您的浏览器不支持音频元素。

正常

1.25x

1.5x

喜欢

新下拉阅读列表

  • 阅读列表

PHP 于 10 月 21 日发布了紧急版本,修复了两个关键漏洞,这些漏洞允许未经身份验证的远程代码执行,而亚马逊表示在补丁发布前四天,有人已尝试利用这些漏洞。

PHP 8.5.12、8.4.27、8.3.36 和 8.2.35 修复了 CVE-2026-109618 和 CVE-2026-109619,这两个漏洞在 CVSS v4.0 中的评分均为 9.2,并被昵称为 php2shell。这两个漏洞均与请求生命周期中的内存安全失败有关,一个与内存不足处理有关,另一个与内存不足时状态持续有关。Sansec 报告称,自 PHP 5.4 以来,所有未打补丁的 PHP 版本中都存在这些漏洞。公告明确指出:“没有完全的缓解措施;更新是唯一安全的选择。”

暴露程度取决于 PHP 的服务方式,而公告则谨慎地说明了已实际验证的内容。Apache mod_php 确认了这两个漏洞的远程代码执行,验证结果为“通过 HTTP 对 mod_php 进行默认 PHP 输入和内存限制的测试”。对于 PHP-FPM,会话生命周期案例已得到验证,但公告指出,“对于此 SAPI,尚未完全演示出 FPM 利用方式”。仅通过源代码分析,FrankenPHP 被认为可能易受攻击。

攻击者在补丁发布之前就已经行动。亚马逊威胁情报在 MadPot 的遥测数据中发现了一次攻击尝试,日期追溯到 10 月 17 日,来源为“与商业匿名网络相关的 IP 地址”,并告知客户从至少 10 月 17 日起进行调查。Cloudflare 于 10 月 21 日 UTC 时间 03:02 部署了 WAF 规则,比发布提前了大约九个小时。

协调披露已经崩溃。PHP 基金会在其自己的说明中表示,CVE 标识符提前两天开始传播,一名研究人员“错误地发布了一段展示概念验证的视频”,而“Chainguard 单方面打破了保密协议并发布了包含修复程序的构建镜像”。其后果是,“任何攻击者现在都可以在二进制形式中研究修复程序,而其他所有 PHP 用户仍在等待发布”。Chainguard 发布的政策表明,当“漏洞被发现正在被积极利用时”,允许缩短披露时间线,该政策最后一次更新是在事件发生前一个月。

一些运营商选择停止服务而不是等待。在 r/selfhosted 上,评论者 iamShorteh 描述了关闭服务的情况:

我已经将所有网站下线(关闭了 apache2)。有人几小时前在 Twitter 上泄露了 RCE 的逐步指南。不想再坐等五到六个小时直到热修复发布。

荷兰国家网络安全中心也出于预防措施关闭了自己的网站,荷兰议会也采取了类似措施。Sansec 告诉商店他们不需要这样做。

确认补丁是否生效本身又成了一个陷阱。评论者 SirRobinBlibs 整理了那些耗费用户时间的注意事项:

发行版回溯补丁。Ubuntu 24.04 的修复包版本是 8.3.6-0ubuntu0.24.04.13,但仍然显示为 8.3.6。请将完整包版本与发行版的追踪系统比对,而不是使用 php -v。CLI 不等于 Web 服务器。FPM/Apache 工作进程会在重启前继续保留在内存中的旧引擎。

Ubuntu 的公告确认了这些版本字符串。两个 PHP 安全公告都要求操作员在升级后重启所有工作进程。

漏洞影响程度的争议仍在持续。两个 CVE 都标注了 AC:H 和 AT:P,即高攻击复杂度且需要额外攻击条件,Sansec 因此调整了对大规模利用的预期:

公开的利用代码对默认 PHP 安装无效。

实践者也发现了相同现象。SirRobinBlibs 警告不要使用 GitHub 上的 PoC 测试,因为“多数高星项目在原生 PHP 上无法运行,且恶意 PoC 仓库是已知的传播方式”,JFrog 记录了作为恶作剧传播的伪造 PoC,其中甚至包含修改受害者壁纸的案例。

r/PHP 的评论者询问有多少人负责此类工作。PHP 基金会在同一帖子中回应称,PHP 的安全工作“仍然依赖于一小群基金会资助的开发者”,并指出“目前这类开发者数量仍然不足”。

升级差距引发了该话题下最高赞评论,评论者批评生命周期政策过于残酷。PHP 8.1 及更早版本无法获得项目支持,尽管为 7.4、8.0 和 8.1 提供了有限回溯补丁,Ubuntu 甚至在 ESM 支持下为 14.04 提供了修复。PHP 8.2 将于 2026 年 12 月 31 日结束支持。

第三个漏洞 CVE-2026-115560 仍未修复。PHP 建议将 session.upload_progress.enabled=0 保持到下一个修复版本发布,届时将发布完整公告。

作者信息

关于作者

#### Steef-Jan Wiggers

显示更多

显示更少

#### 本文属于 安全 主题

##### 相关主题:

  • 开发
  • 架构与设计
  • 文化与方法
  • PHP8
  • Web 开发
  • 安全
  • PHP
  • 相关编辑
  • 相关赞助商
  • 相关赞助商 2026 年 10 月 29 日 13:00 EDT 从 Token 到功能:为 AI 辅助工程构建成本归因架构 主讲人:Martin Reynolds - Harness 字段 CTO,Barani Mohandoss - Trimble 云治理、FinOps 与 E-Tools 总监

InfoQ 新闻通讯

每周五汇总 InfoQ 最新内容,每周二发送。加入 25 万名资深开发者社区。[查看示例](链接)

我们保护您的隐私。