找回密码
 立即注册
搜索
查看: 54|回复: 0

2026.10.21 PHP高危漏洞 所有php网站面临瘫痪以及解决办法

[复制链接]

430

主题

9

回帖

1890

积分

管理员

积分
1890
发表于 前天 08:11 | 显示全部楼层 |阅读模式
PHP 今日高危漏洞:php2shell(CVE-2026-109618、CVE-2026-109619)
发布时间:2026-10-21,两个Critical严重级别(CVSS 9.2),统称 php2shell,未经登录远程代码执行RCE漏洞
一、两个漏洞分别是什么

1. CVE-2026-109618:内存分配失败异常处理漏洞
当PHP请求触发内存不足(OOM),异常退出流程会破坏内存状态;攻击者发送特制multipart POST(文件上传类请求),可操纵内存损坏,实现远程代码执行。

2. CVE-2026-109619:释放后重用(UAF),全局状态残留漏洞
内存已经释放,但PHP仍引用这块内存的全局状态,特制请求触发后,造成内存污染,拿到代码执行权限。

✅ 攻击特点:

• 不需要账号密码,匿名可攻击

• 利用入口:带multipart/form-data的POST请求(文件上传请求)

• 攻击成功后,拿到php-fpm/mod_php进程权限,读取网站源码、数据库配置、植入木马,拿下服务器

• 受影响版本:PHP 8.2、8.3、8.4、8.5 全系列(PHP8.1及更早早已停止维护,没有官方补丁)

二、【根治方案:升级(唯一完整修复手段,官方强调临时配置不能替代补丁)】

升级到下面安全版本:

• PHP 8.2 → 8.2.35

• PHP 8.3 → 8.3.36

• PHP 8.4 → 8.4.27

• PHP 8.5 → 8.5.12

升级操作步骤

1. 先完整备份网站代码 + 数据库,保留快照,防止升级兼容故障

2. 包管理器升级(CentOS/RHEL、Ubuntu/Debian)或者源码编译新版PHP

3. 重启 php-fpm / Apache服务

4. 执行php -v确认版本号,访问站点验证业务正常

5. 检查日志,观察是否存在报错

三、业务无法立刻升级 → 临时缓解措施(只能降低攻击面,不能彻底堵死漏洞)

修改php.ini,改完重启PHP服务:
# 1. 关闭上传进度(攻击主要路径,不上传文件必开)
session.upload_progress.enabled = Off
# 2. 开启严格session模式
session.use_strict_mode = 1
# 3. 限制POST大小,缩小multipart攻击面
post_max_size = 8M
upload_max_filesize = 2M
额外防护:

1. WAF/反向代理:严格限制multipart/form-data请求,限制单请求分段数量、请求速率;不需要上传接口直接拦截multipart请求

2. 网络层面:只放行业务必要IP,公网不必要的PHP服务,放内网+白名单

3. 若业务允许:memory_limit=-1(关闭PHP内存限制,但是会带来内存耗尽风险,谨慎使用)

四、老旧版本(PHP8.1及更早)说明

官方早已停止维护,不会出补丁:

• 优先迁移升级;短期应急:网络隔离、放到内网,公网不直接暴露,加WAF严格防护,尽快迁移到受支持PHP版本

五、自查清单

1. 查看当前PHP版本:php -v

2. 确认服务是php-fpm / mod_php,只要对外提供web访问就受影响,CLI命令行模式不受此漏洞影响

3. 容器环境:重建镜像,打包新版PHP,重新部署容器
⚠️重点提醒:所有临时配置只是缓解手段,升级PHP版本才是彻底修复,当前已经出现野外利用尝试,公网PHP站点建议尽快处理。


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表