PHP高危漏洞CVE-2026-109618, CVE-2026-109619处理方法

PHP 被披露其存在远程代码执行漏洞,漏洞编号分别为CVE-2026-109618, CVE-2026-109619,代号 "php2shell"。可导致未经身份验证的远程攻击者通过发送特制的 multipart POST 请求,触发内存破坏并最终实现远程代码执行,从而完全控制服务器。

PHP官方发布声明称,在10月20日(星期二) 约UTC时间15:00,涉及本次漏洞的两个CVE编号开始在在线论坛和社交媒体上流传。OpenAI就PHP软件中发现的严重漏洞发表声明,指出鉴于漏洞的严重性和PHP的广泛使用,这是近期影响最大的漏洞之一。具体见官方通告:/uploads/allimg/261030/0R9422M3-0.jpg 相关安全机构问题复现:/uploads/allimg/261030/0R9423A7-1.jpg

image.png

为避免您的业务受影响,西部数码建议您及时开展安全自查,如在受影响范围,请您及时进行更新修复,避免被外部攻击者入侵。注意以下方法为临时解决方案,请密切关注官方推出的补丁,及时升级更新。

一、修复方法

在所有 PHP 环境的 php.ini 配置文件中,将以下参数设置为 Off:

session.upload_progress.enabled = Off

若配置文件中不存在该行,请在 [Session] 段落下手动添加上述内容。修改保存后,必须重启或重载对应的 PHP / Web 服务,否则配置不会生效。

二、各环境操作系统修复方案

(一)、Windows 方案

路径说明

Windows 下 PHP 通常按版本分目录存放,例如 Windows 版常见路径为 D:SOFT_PHP_PACKAGEphpXX(XX 为版本号,如 php54、php74、php82)。每个 PHP 版本目录下各有一个独立的 php.ini,必须逐个修改。

修改参数

用文本编辑器(建议以管理员权限运行)打开该 php.ini,搜索 session.upload_progress.enabled,将值改为 Off:

session.upload_progress.enabled = Off

若文件中不存在该行,在 [Session] 段落下手动添加上述内容。

重启服务

保存后重启对应的 Web 服务。IIS 需重启对应应用程序池或 IIS 服务;Apache/Nginx 需重启对应的 PHP-CGI/FPM 进程或服务本身。

多版本提醒:D:SOFT_PHP_PACKAGE 下若有 php54、php74等多个目录,每一个目录下的 php.ini 都要改并分别重启。 建站助手安装php可以服务器上下载 fix_zhushou_php2shell.bat. 双击运行,即可全部php.ini批量修改。

(二)、Linux 方案

1. 修改全局 php.ini

根据发行版找到对应版本的 php.ini:

环境路径参考

Debian/Ubuntu(多版本) /etc/php/<版本号>/fpm/php.ini 或 /etc/php/<版本号>/apache2/php.ini

RHEL/CentOS/Remi /etc/php.ini 或 /etc/opt/remi/php<版本号>/php.ini

编译安装 /usr/local/php/etc/php.ini 或 /usr/local/lib/php.ini

搜索并修改:

session.upload_progress.enabled = Off

保存后重启对应服务,例如:

systemctl restart php-fpm # 或 php8.2-fpm 等具体服务名

systemctl restart httpd # 或 apache2 / nginx

2. PHP-FPM 强制生效(推荐生产环境)

防止站点通过 .user.ini/.htaccess 覆盖,在 FPM 池配置(如 /etc/php/8.x/fpm/pool.d/www.conf)的 [www] 段添加:

php_admin_flag[session.upload_progress.enabled] = off

重载 FPM:

systemctl reload php-fpm

(三)、宝塔面板方案(Windows / Linux 通用.宝塔官方发布了更新,可以应用商店更新即可)

登录宝塔后台 → 软件商店 → 已安装。

找到列表中所有已安装的 PHP 版本(如 PHP 5.4、5.6、7.4、8.2 等),逐一点击右侧 “设置”。

进入 PHP 管理界面 → 点击 “配置文件” 选项卡。

在配置内容中搜索 session.upload_progress.enabled,将 On 改为 Off:

session.upload_progress.enabled = Off

若未搜到,在 [Session] 段落下手动添加。

点击 “保存”。

回到该 PHP 版本设置首页 → “服务” 选项卡 → 点击 “重载配置” 或 “重启”。

对每一个已安装的 PHP 版本重复以上步骤。

保存时若提示权限不足,可临时关闭宝塔“系统加固”后再试。

(四)、WDCP 环境修复方案

WDCP 的多版本 PHP 存放在 /www/wdlinux/phps/ 下,以版本号命名目录(如 72 代表 PHP 7.2)。对应的 php.ini 通常位于 /www/wdlinux/phps/<版本号>/etc/php.ini

修改配置

使用 SSH 登录服务器,编辑上述对应的 php.ini 文件:

vi /www/wdlinux/etc/php.ini

搜索 session.upload_progress.enabled,将其值改为 Off:

session.upload_progress.enabled = Off

修改后必须重启 PHP 使配置生效,WDCP 的重启命令与常规 systemd 服务不同。(以 PHP 7.2 为例)

/www/wdlinux/phps/72/bin/php-fpm restart

三、关键提醒

逐版本处理:Windows 的 D:SOFT_PHP_PACKAGEphpXX 多目录、Linux 的多版本 php.ini、宝塔的多 PHP 版本,每一个都必须单独修改并重启,漏一个等于没修。

重载/重启必做:仅保存配置文件不会生效。

临时措施:待官方补丁发布并升级后,再评估是否恢复;关闭后仅影响上传进度条,$_FILES 正常上传不受影响。

安全无小事,请务必高度重视、立即执行。如有技术疑问,请及时联系技术支持。

特此通知。(西部数码)