CVE-2026-109618 · GHSA-w8hw-w9fx-j79w
CVE-2026-109618:通过内存耗尽损坏实现的 PHP 远程代码执行
PHP 安全团队把 CVE-2026-109618 描述为 PHP 核心中的严重漏洞:内存耗尽处理可能在内部请求数据只完成部分初始化时打断 PHP,请求清理随后可能把无效数据当成有效数据。团队给出的评分为 CVSS v4.0 9.2,并称更新是唯一完整的缓解。
最近更新
| 字段 | 所引来源的说法 |
|---|---|
| CVE | CVE-2026-109618 |
| GitHub 公告 | GHSA-w8hw-w9fx-j79w |
| 严重性 | 严重。CVSS v4.0 基础分 9.2,由 PHP 安全团队的 Jakub Zelenka 在 oss-security 上说明。 |
| 向量 | AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H,印在多伦多大学通告上。我们读到的 oss-security 帖子给出了 9.2,但没有这串向量。 |
| 修复版本 | 8.2.35、8.3.36、8.4.27、8.5.12,以及这些分支上的后续版本。 |
| CWE | 加拿大网络安全中心把两个 PHP2Shell CVE 都归为释放后使用(CWE-416)。PHP 项目对这个 CVE 的标签是内存耗尽损坏,本页采用这一说法。 |
出了什么问题:停在厂商公布的层次
Jakub Zelenka 在 oss-security 上写道:PHP 用 longjmp() 在内存耗尽时中止请求处理;分配失败可能在不完整的请求状态已经可被触及的时候打断初始化;请求关闭阶段随后可能访问这个无效状态,从而可能允许远程代码执行。PHP Foundation 的说法与此相符:如果请求在错误的时刻达到 memory_limit,PHP 可能留下部分初始化的内部数据,并在稍后把它当成有效数据。
这就是我们会发表的机制描述。我们不说明如何迫使分配失败。
已经演示了什么
- oss-security:已在 Apache mod_php 上通过 HTTP 演示未经身份验证的远程代码执行,且发生在应用代码执行之前。源码分析也表明 FPM 可能受影响,但完整的 FPM 利用尚未被演示。
- PHP Foundation:在默认设置的 Apache mod_php 上演示了完整的远程代码执行,发生在任何应用代码运行之前。Foundation 还称,通过应用层代码路径,在 PHP-FPM 上确认了远程代码执行。
- Expel 转述 PHP:针对这个 CVE 的 mod_php 演示在 PHP 默认的输入和内存限制下即可成立。
- 多伦多大学通告称,攻击者可以用停留在 PHP 表面限制之内的特制 multipart 请求迫使该条件出现。我们不把这句话展开成操作步骤。
影响
在能够成功的地方,利用结果是以 PHP 工作进程的操作系统账户进行未经身份验证的远程代码执行。Wiz 和 Cloudflare 还描述了崩溃和进程内存泄露。能否打到,取决于构建、扩展和服务器布局;多伦多大学通告称利用可靠性会变化,并且 PHP 已经验证了完整的远程代码执行。在我们读过的来源里,没有可信的“到处都能成功”的单一说法,也没有理由等这种说法出现后再修补。
修复
升级到 8.2.35、8.3.36、8.4.27 或 8.5.12或更新版本,并重启实际提供流量的工作进程。oss-security 说明称更新是唯一完整的缓解。PHP 公布的临时设置,包括 memory_limit=-1 和较低的 post_max_size,并不完整:项目说,即使去掉可控的内存限制,底层的分配失败仍然可能走到有漏洞的路径。Tanium 称 NVD 记录于 2026 年 10 月 21 日发布,并标记为“正在分析”。如果 NVD 正文还在追赶,请以 PHP 公告作为操作依据。
来源
出站链接将离开本站。本站不托管利用代码。
- News archive 2026: security advisory, 21 October 2026 — PHP project (php.net)
- Today’s PHP security release, and how we’re strengthening PHP security — The PHP Foundation
- CVE-2026-109618: PHP 8.2–8.5 RCE via OOM corruption — oss-security (Jakub Zelenka, PHP security team)
- GHSA-w8hw-w9fx-j79w — CVE-2026-109618 — PHP (GitHub Security Advisory)
- Security advisory: critical unauthenticated RCE in PHP (“php2shell”) — University of Toronto Information Security
- Notice: php2shell, critical PHP vulnerabilities (status as of 21 October 2026, 20:00 UTC) — Expel
- Critical vulnerabilities in PHP require immediate patching (21 October 2026) — CISA
- Responding to core PHP vulnerabilities CVE-2026-109618 and CVE-2026-109619 — Google Cloud
- CVE-2026-109618 — NVD
- PHP2Shell: AI uncovers critical RCE vulnerabilities affecting 70% of the Internet — Wiz Research