必须升级PHP至安全版本并重启Web服务进程,因CVE-2026-109618/109619漏洞存在于内核层,影响PHP-FPM、mod_php等所有Web请求处理形态,仅php -v不可靠,须用phpinfo()确认实际运行版本。

直接看两点:你用的 PHP 版本是不是低于安全线,以及它是不是在处理 Web 请求。
确认 PHP 实际运行版本
命令行里 php -v 显示的版本,不一定是网站真正跑的那个。很多服务器 CLI 和 Web 使用的是两套 PHP(比如宝塔里多个 PHP 版本共存)。必须查 Web 环境正在用的版本:
- 创建一个临时文件,比如
info.php,内容为:<?php phpinfo(); ?>
- 把它放到网站根目录,通过浏览器访问(如
https://yoursite.com/info.php),找到 "PHP Version" 这一行。 - 看完立刻删掉这个文件,别留着。
或者用命令快速查常见部署:
立即学习“PHP免费学习笔记(深入)”;
# 如果是 PHP-FPM php-fpm -v # 如果是 Apache mod_php apachectl -M | grep -i php # 查看当前监听的 PHP 进程 ps aux | grep -E '(php-fpm|httpd|apache)' | grep -v grep
对照安全版本表
只要版本号低于以下任一数值,且用于 Web 服务,就存在风险:
- PHP 8.5.x → 安全起始版本是 8.5.12
- PHP 8.4.x → 安全起始版本是 8.4.27
- PHP 8.3.x → 安全起始版本是 8.3.36
- PHP 8.2.x → 安全起始版本是 8.2.35
- PHP 8.1 及更早 → 官方已停止维护,没有正式修复版,必须升级到 8.2+
注意:有些系统用发行版打包的 PHP(如 Ubuntu 的 php8.3 包),版本号可能看起来旧,但厂商可能已打过补丁。建议同步查看对应系统的安全公告(如 Ubuntu Security Notice、AlmaLinux Advisory)。
确认是否属于受影响的运行形态
只要满足下面任意一种,就属于攻击面:
- PHP-FPM(Nginx 常用)
- Apache mod_php(风险最高)
- php-cgi(传统 CGI 模式)
- FrankenPHP 或 LiteSpeed 的 PHP 集成模块
纯命令行脚本(如定时任务、后台队列)不处理 HTTP 请求,风险较低;但只要版本受影响,仍建议升级。
升级后务必重启服务
装了新包 ≠ 生效。必须重启对应服务,否则 worker 进程还在跑旧代码:
# PHP-FPM systemctl restart php-fpm # 或具体版本名,如 php8.4-fpm # Apache systemctl restart apache2 # 或 httpd # 宝塔用户:在面板里点“重启”对应 PHP 版本
检查是否生效:再跑一次 phpinfo(),确认版本号更新,并观察进程启动时间(ps -eo pid,comm,lstart | grep php)。
重点提醒:漏洞利用发生在 PHP 内核层,业务代码写得再规范也没用;WAF、防火墙规则无法拦截;只改配置、禁用函数不能解决问题——必须升级版本并重启进程。



















