PHP爆出核心高危远程代码执行漏洞(php2shell)
星期五 2026年10月23日 王佳明 生活 php php2shell 0人

2026年10月21日,PHP 官方安全团队发布紧急安全更新,披露 PHP 解释器核心存在两个关联高危漏洞,业内统称 **php2shell**。漏洞属于内核底层内存安全问题(use-after-free、过期全局状态污染),攻击者无需账号密码,仅发送特制请求即可在目标服务器执行任意代码,直接接管服务器权限、窃取数据、植入木马或勒索程序。本次漏洞由安全研究员借助 AI 辅助代码审计、推演利用链完成验证。
⚠️ 重点:漏洞在 PHP 引擎层面触发,和你的网站代码、CMS 程序无关。WordPress、Typecho、Z-Blog、Discuz、各类自研 PHP 系统,只要底层 PHP 版本在受影响范围内,都存在风险;常规应用层 WAF、代码防护很难完全拦截攻击。
受影响版本 & 安全修复版本
✅ 官方安全版本(必须升级到以下及更高)
- PHP 8.2 → **8.2.35**
- PHP 8.3 → **8.3.36**
- PHP 8.4 → **8.4.27**
- PHP 8.5 → **8.5.12**
❌ 不受官方维护、无正式二进制包
PHP 8.1、8.0、7.4 及更早版本已经停止维护,官方仅提供源码补丁,不提供正式发行版。
漏洞原理简要说明
两个漏洞均存在于 PHP 内核请求处理流程:
1. CVE-2026-109618:内存越界 / 内存释放后复用,借助 multipart/form-data、session.upload_progress 上传进度机制触发;
2. CVE-2026-109619:请求异常报错后,PHP-FPM worker 进程内遗留过期全局状态,下一个请求复用已经释放的内存,造成代码执行。
攻击不需要登录、不需要上传文件,只要目标对外提供 PHP 网页服务,攻击者就有机会发起攻击。PHP-FPM、mod_php、CGI 多种运行模式均受影响。
处置方案
升级 PHP 到安全版本(唯一根治手段)
临时缓解方案
1. 关闭上传进度功能(最常用缓解)
修改 `php.ini` / `.user.ini` / `.htaccess`:
```
session.upload_progress.enabled = Off
```
重载 PHP 服务。该方式可以阻断已知主流利用链,但漏洞本身依然存在,存在绕过可能。
2. WAF / 网关层策略:严格限制非业务必需的 `multipart/form-data` 请求,拦截异常超长 POST 包;收紧 POST 请求体大小 `post_max_size`。
3. 限制对外开放:非必要的 PHP 站点、测试机、内网后台,禁止公网直接访问,增加 IP 白名单。
后续安全建议
1. 停止长期停留在 PHP 7.x、8.1 等终止支持版本,这类版本后续不会再有官方安全补丁;
2. 生产环境 PHP-FPM 单独配置进程池、资源限制,减少横向渗透风险;
老旧群晖 NAS 无法升级到安全 PHP 版本的处置方案
很多老款群晖(DS216、DS218、DS3617xs 等)最高只能停留在 DSM 6 / 早期 DSM7,套件中心官方 PHP 最高只有 7.4、8.0、8.1,没有官方补丁包。
方案 1(推荐):改用 Container Manager(Docker)跑安全版 PHP,隔离系统旧 PHP
方案 2:公网直接下线 PHP 站点,仅开放内网访问,配置好http用户权限,不要授予其其他共享文件夹的访问权限。
临时缓解配置
如果暂时没法迁移 Docker、必须继续用 Web Station 老旧 PHP,执行下面两条缓解配置(就是本次 php2shell 漏洞主流利用链的阻断手段):
进入 Web Station → 脚本语言设置 → 编辑当前 PHP 配置,修改 php.ini:
```
session.upload_progress.enabled = Off
post_max_size = 0M
upload_max_filesize = 0M
```
保存,重启 Web Station 和 PHP 服务。
老旧威联通NAS、windows server 2008、windows server 2003可参照处理。
- 本文标题:PHP爆出核心高危远程代码执行漏洞(php2shell)
- 本文地址:https://itjm.com/2026/10/955.html
