教程
php2shell 专题:PHP 两大严重 RCE 漏洞全景解读与防护清单
一、这次发生了什么
2026 年 10 月 21 日 14:00 UTC,PHP 官方发布紧急安全更新,一次性修复两个 CVSS v4.0 评分均为 9.2 的严重远程代码执行(RCE)漏洞:CVE-2026-109618(OOM 内存破坏)与 CVE-2026-109619(过期全局状态)。媒体与安全社区把这次事件称为 php2shell——公开数据显示已确认暴露的受影响服务器超过百万台,多国政府机构与企业网站紧急下线。
二、两个漏洞分别是什么
AI 操作示意图·以官网实际界面为准
CVE-2026-109618:RCE via OOM corruption(内存耗尽破坏)
当请求恰好撞上 PHP 的 memory_limit 时,内存耗尽处理会中断 PHP,而内部请求数据只完成部分初始化。随后的请求清理逻辑可能把这份"半成品"当作有效数据处理,造成内存破坏。在 Apache mod_php 场景下,一个无需认证的请求就能在任何应用代码运行之前触发它——官方已用默认配置演示了完整 RCE;PHP-FPM 下也通过应用层路径确认了远程代码执行。
CVE-2026-109619:RCE via stale global state(过期全局状态)
如果 fatal error 恰好在错误节点发生,内部状态可能仍指向一份已被释放的内存。同一个 worker 处理的下一个请求会使用这份已释放内存(use-after-free),进而演变成崩溃乃至代码执行。研究者在 Apache mod_php 上对一个真实应用完成了 RCE 演示。
两个漏洞都躺在 PHP 引擎里几乎每个请求都会经过的地方:内存管理与错误处理。这正是它们"严重"的原因,也是修复如此困难的原因——既要修干净,又不能破坏兼容性、性能和庞大的第三方扩展生态。
三、谁在风险名单上
官方风险面覆盖所有对外提供网页服务的 PHP 安装:PHP-FPM、Apache mod_php、php-cgi、FrankenPHP、LiteSpeed。其中 mod_php 风险最高(免认证、应用代码前触发)。PHP 8.1 及更早版本已不受官方支持,没有官方修复版本,只能依赖发行版 backport 或升级。
四、修复版本与升级路径
| 版本线 | 安全版本 |
|---|---|
| PHP 8.5 | 8.5.12 |
| PHP 8.4 | 8.4.27 |
| PHP 8.3 | 8.3.36 |
| PHP 8.2 | 8.2.35 |
发行版与 LTS 厂商提前拿到了补丁,apt upgrade php* 或 dnf update php 是最省事的路径;源码自维护用户到 php.net 下载页取包重编。升级后务必验证 php -v 与业务页面。
五、官方临时缓解清单(不能替代升级)
针对 CVE-2026-109618:将 memory_limit=-1 设置在应用无法覆盖的层级(如 FPM pool 的 php_admin_value);调低 post_max_size(无上传 8M、有上传 32M,且 upload_max_filesize 小于它);用容器/cgroup 做可用性边界。
针对 CVE-2026-109619:session.upload_progress.enabled=0 并重启所有 worker;PHP 8.5 上设 fatal_error_backtraces=0;清理可被攻击者触发的 fatal error 与执行超时路径。
六、事件时间线与背后机制
AI 操作示意图·以官网实际界面为准
- 2024 年:PHP 首次多年来的外部安全审计(OSTIF 组织、Quarkslab 执行),期间一名核心开发者最早发现 OOM 问题的迹象,但当时没有可利用路径;
- 2026 年 7 月 30 日:安全公司 Calif 开始审计 PHP;
- 2026 年 8 月 11 日:Calif 研究员报告了与 2024 年发现同根因的"无条件 RCE";OpenAI 独立报告同一根因,Wiz 随后跟进——OOM 问题的完整影响由此明确,修复成为最高优先级;
- 2026 年 10 月 20 日:两个 CVE 编号提前在论坛流传(附带了错误的发布时间与错误的 10.0 评分);PHP 项目提前发布预公告并把发布从 10 月 22 日提前到 10 月 21 日;
- 2026 年 10 月 21 日:安全版本正式发布,官方公告给出完整技术细节与缓解措施。
这段历史说明两件事:其一,AI 辅助的安全研究正在显著加快漏洞发现速度,15 个 CVE 里人工判断仍然把关;其二,深层引擎问题需要多年时间、外部审计与持续投入才能彻底修复——PHP 基金会为此公开呼吁依赖 PHP 的企业、托管商与政府提供资助。
七、给站长的防护清单

- 今天:确认 PHP 版本,能升级立刻升级;
- 升级前:备份站点文件与数据库;
- 升级后:验证版本号、FPM 状态与业务页面;
- 暂时不能升级:逐条落实官方缓解措施,并尽快安排窗口期;
- 长期:开启安全更新提醒,每月例行更新,关注 php.net 公告与 GHSA 通告。
官方资料
资料核对日期:2026-10-25
- PHP 官网安全公告(漏洞细节、影响范围、修复版本与缓解措施):https://www.php.net/
- The PHP Foundation 博客(漏洞根因、审计与披露时间线):https://thephp.foundation/blog/2026/10/21/todays-php-security-release-and-how-were-strengthening-php-security/
- PHP 官方下载页:https://www.php.net/downloads
最近一周热门文章
按近 7 天访问热度排序,热度积累前优先展示新文章。
当前栏目最新文章
教程 · 继续阅读同栏目的新内容
一起交流
0 条留言LEAVE A NOTE
你的经验,也很重要。
无需注册或登录。请勿公开邮箱密码、证件、银行卡号或其他敏感信息。
















还没有留言,来分享你的想法吧。