这次更新修的是什么
PHP 是一款运行在服务器端的脚本语言,主要用于生成网页内容、与数据库交互,也被大量打包进内容管理系统、建站程序和运行环境镜像中。根据官方安全公告,2026 年 10 月 21 日 PHP 开发团队发布了一次紧急安全更新,修复了位于 PHP 核心层的两个远程代码执行漏洞。
按国内网络安全通报的口径,这两个漏洞对应的编号为 CVE-2026-109618 与 CVE-2026-109619。由于漏洞处在 PHP 核心层,WordPress、Drupal、Joomla、Laravel 等基于 PHP 的建站系统与框架,以及各类集成环境中打包的 PHP,都在潜在影响范围内。
本文只讨论怎么确认自己是否在影响范围内、以及该怎么处置,不涉及触发方式,也不提供任何验证性的请求构造。
受影响版本与升级方向
官方给出的受影响版本区间与升级方向如下。如果你的版本低于表中「建议升级到」这一列,就应安排更新:
| 版本线 | 受影响区间 | 建议升级到 | 说明 |
|---|---|---|---|
| 8.5.x | 低于 8.5.12 | 8.5.12 及以上 | 官方当前维护中的较新线 |
| 8.4.x | 低于 8.4.27 | 8.4.27 及以上 | 处于安全支持期 |
| 8.3.x | 低于 8.3.36 | 8.3.36 及以上 | 处于安全支持期 |
| 8.2.x | 低于 8.2.35 | 8.2.35 及以上 | 建议尽快安排升级 |
| 8.1.x 及更早 | 全部 | 迁移到 8.3 / 8.4 / 8.5 | 已停止官方支持,不再获得修复 |
这里有一个容易被忽略的点:「8.1 及更早」这一档没有对应的修复版本。仍在 8.0、7.x 上的系统不会收到本次补丁,可行的处理方式是把运行环境迁移到仍在支持期的版本线。迁移涉及语法兼容性检查,通常需要比单纯升级更长的排期,建议先做代码层面的兼容性测试。
普通网民需要担心吗
不需要。PHP 运行在网站服务器上,而不是你的手机或个人电脑上。你本地是否安装 PHP、是否需要卸载某款软件,与这次漏洞没有关系。
如果近期访问某些政府网站、银行服务或企业站点时遇到「临时维护」「服务暂停」,更多是运营方出于谨慎采取的主动避险措施,并不等同于已经发生了数据泄露。个人信息是否受到影响,以相关机构后续发布的正式通知为准;收到通知的,按要求更换密码或处理凭证即可。
服务器侧的处置顺序
如果你负责一台运行 PHP 的服务器或一套业务系统,可以按下面的顺序推进。
第一步:先把「装了 PHP 的地方」清点出来
PHP 很少以单一实例存在。除系统自带的环境外,面板工具、容器镜像、集成环境(如一键安装包)、CMS 运行环境里都可能各自打包了一份 PHP。只升级系统里那一份,容易漏掉其他实例。
# 查看命令行默认 PHP 版本
php -v
# Linux 上查看是否存在多个 PHP 可执行文件
which -a php php-fpm
# 容器场景:逐个确认镜像内的 PHP 版本
docker exec 容器名 php -v
面板类环境通常会在管理界面直接显示 PHP 版本号,检查一下即可;容器内则需要逐个进入容器确认。
第二步:升级到官方修复版本
升级方式取决于安装途径,不建议混用:
- 系统包管理器安装:跟随发行版的安全源更新(apt / yum / dnf / apk 等)。若官方源尚未同步到修复版本,需要等待发行版推送,而不是临时更换软件源。
- 面板管理:在面板的 PHP 管理界面切换到修复版本,并注意业务所需的扩展是否同步兼容。
- 容器部署:更新基础镜像 tag 后重新构建并部署,避免在正在运行的容器里做临时替换。
- 源码编译安装:自行跟踪官方发布,下载对应版本重新编译。
第三步:暂时改不动时的过渡措施
升级排期受兼容性测试、发布窗口制约时,主管部门的通报名单里给出了几条常见做法,可以组合使用:
- 关闭会话上传进度(session upload progress)相关功能,缩小暴露面;
- 对管理后台与动态处理入口做网络层面的访问限制,例如仅允许内网或指定 IP 段;
- 把暂未修复的实例迁移到隔离网段,只开放必要端口,通过跳板机运维;
- 风险难以控制时,短期停止对外服务,待修复完成并验证后再恢复。
需要说明的是,这些都是争取时间的过渡办法,不能替代版本升级本身。临时措施启用后应记录备案,并在升级完成后一并撤销,避免长期遗留成运维负担。
第四步:升级完成后的收尾
漏洞的潜在后果是服务端被控制,因此修复之后还有几件常规的事:
- 确认版本号已真正生效(命令行版本与 Web 服务实际加载的版本可能不是同一个);
- 检查近期日志中是否存在异常请求与异常进程;
- 轮换已经被配置文件、脚本写明的口令、密钥等凭证;
- 留意 IDC 与云服务商的安全通告,它们通常会针对自家镜像给出更具体的指引。
这次事件值得记住的一点
据公开报道,这两个漏洞由安全研究人员借助自动化分析工具发现,此前已存在较长时间而未被察觉。它提示了一件事:被广泛使用的基础组件,其安全性依赖持续维护,而不是「用了很多年没出事」。
对运行环境而言,真正有效的是制度化动作——建立版本台账、盯住官方安全公告渠道、为自己留出升级窗口。等到通报发布再去找服务器在哪、装的什么版本,往往要多花几倍的功夫。
运行环境建议从官方渠道获取
软集在收录软件时会标注开发商、授权方式与官方下载地址。这类底层的运行环境,建议从官方渠道或系统发行版的安全源获取,尽量不使用来源不明的修改版或二次打包版,以免在官方发布补丁时无法及时跟进。
相关条目可参见本站收录的 Docker Desktop(可以把不同项目的运行环境隔离开,便于分别升级)与 Visual Studio Code(跨平台编辑器,适合用来维护版本台账这类文档)。