10 月 21 日的四分支同步安全发布,是 php 基金会成立以来动作最大的一次补丁行动之一:8.5.12、8.4.27、8.3.36、8.2.35 四个版本一次性修复 cve-2026-109618 与 cve-2026-109619。基金会在配套博客文章中罕见地披露了漏洞位于内存管理与错误处理这类核心路径的细节。

▲ 事件来源页面实时截图:PHP Foundation 官方博客
为什么一次性发四个版本
因为两个漏洞影响全部在维护分支,任何分支都没有豁免。基金会同时公布了强化 PHP 安全的后续计划,包括 AI 辅助漏洞挖掘与生态安全团队建设(见本系列后续文章)。
给运维的优先级建议
优先处理暴露在公网的 Apache mod_php 与 PHP-FPM 实例;EOL 分支(7.4 / 8.0 / 8.1)的部署使用官方最小源码 backport。
「四分支同步」是怎么做的
官方先在 8.5(当时的开发/稳定主干)完成修复,再依次 backport 到 8.4、8.3、8.2,每个分支产生一个独立提交,代码结构一致、上下文略有差异。四个提交合起来覆盖全部在维护环境,因此本次发布的升级目标不是「某个版本号」,而是「所在分支的最新补丁版本」。
补丁长什么样
下面附上该批次核心漏洞(CVE-2026-109618)的官方修复提交片段:可以看到修复在请求退出的路径上加了对请求内存状态的结算与校验,避免 OOM 跳转后留下非法状态。完整补丁可在 php-src 仓库对应提交中查看,EOL 分支(7.4 / 8.0 / 8.1)官方另外提供了最小源码 backport。
修复补丁(官方提交)
该问题由 php-src 官方提交 3584a98bda0f 修复(2026-10-18),提交说明为「Avoid state corruption via bailout」。改动涉及 5 个源码/测试文件,核心变更如下:
Zend/zend.c
@@ -737,6 +737,8 @@ static void compiler_globals_ctor(zend_compiler_globals *compiler_globals) /* {{
compiler_globals->map_ptr_base = ZEND_MAP_PTR_BIASED_BASE(base);
memset(base, 0, compiler_globals->map_ptr_last * sizeof(void*));
}
+
+ compiler_globals->interned_strings_fallible = false;
}
/* }}} */
@@ -809,6 +811,7 @@ static void executor_globals_ctor(zend_executor_globals *executor_globals) /* {{
executor_globals->pid = 0;
executor_globals->oldact = (struct sigaction){0};
#endif
+ memset(&executor_globals->delayed_oom, 0, sizeof(executor_globals->delayed_oom));
}
/* }}} */
@@ -1307,6 +1310,8 @@ ZEND_API void zend_deactivate(void) /* {{{ */
zend_map_ptr_reset();
}
+ zend_mm_oom_info_dtor(&EG(delayed_oom));
+
#if GC_BENCH
fprintf(stderr, "GC Statistics\n");
fprintf(stderr, "-------------\n");
▲ 补丁片段摘自 php-src 官方仓库该提交
完整补丁与测试用例可在 php-src 仓库该提交页面查看:https://github.com/php/php-src/commit/3584a98bda0f2c0d367255b046798b0d3a221a19

▲ 官方公告页配图

▲ 官方修复提交页面截图
关键信息
| 项目 | 内容 |
|---|---|
| 类目 | 补丁修复 |
| 级别 | 紧急 |
| 日期 | 2026-10-21 |
| 关联编号 | CVE-2026-109618 / 109619 |
| 影响范围 | 全部在维护分支 |
| 核验状态 | 已官方确认 |
| 修复提交 | 3584a98bda0f(php-src) |
来源:https://thephp.foundation/blog/2026/10/21/todays-php-security-release-and-how-were-strengthening-php-security/


















