PHP 内存溢出与全局状态残留漏洞 (CVE-2026-109618/109619) 修复与宝塔一键加固脚本 v1.0.0

PHP 内存溢出与全局状态残留漏洞 (CVE-2026-109618/109619) 修复与宝塔一键加固脚本 v1.0.0

2026 年 10 月 21 日,PHP 官方安全团队发布紧急安全通告,修复了两个高危远程代码执行(RCE)级别内核漏洞:内存溢出破坏漏洞(CVE-2026-109618) 与 全局状态残留漏洞(CVE-2026-109619)。攻击者可在无需任何身份验证的情况下,通过特制的 HTTP 请求触发内存越界或请求间状态污染,进而实现远程任意代码执行。

针对本次安全事件,资盘-Zipan 为各位站长整理了详细的漏洞机理剖析、官方修复版本对照表,并附上一份自研整理的宝塔面板 PHP 安全配置一键加固与自检 Shell 脚本(支持自动识别多版本 PHP、跳过合规项、自动备份、一键回滚与 FPM 平滑重载)。


🛠️ 一、 一键执行加固脚本

针对近期 PHP 安全漏洞,分享一个自己整理的宝塔 PHP 安全配置加固 Shell 脚本。主要用于批量检查和调整 PHP 安全参数,支持自动识别已安装的 PHP 版本、跳过符合要求的配置、自动备份和回滚。

curl -fsSL https://www.zipan.co/sh/check.sh | bash

💡 建议在 HTTPS 证书正常时去掉 -k 参数。若下载了文末由 资盘-Zipan 提供的本地脚本包,也可上传服务器后执行 bash check.sh(支持 bash check.sh --rollback 一键回滚)。


🔒 二、 主要安全加固项目

PHP 配置项 加固值 作用
session.upload_progress.enabled Off 关闭 Session 上传进度跟踪
session.use_strict_mode On 降低 Session 固定攻击风险
session.cookie_httponly On 限制 JS 读取 Session Cookie
session.use_only_cookies On 仅通过 Cookie 传递 Session ID
session.use_trans_sid Off 禁止 URL 传递 Session ID
session.use_cookies On 启用 Session Cookie
expose_php Off 隐藏 PHP 版本信息
display_errors Off 防止错误信息直接暴露
log_errors On 开启 PHP 错误日志

🚨 三、 关于本次 PHP 安全漏洞与处理意见

2026 年 10 月 21 日,PHP 官方发布紧急安全更新,修复以下两个严重漏洞:

  • CVE-2026-109618(内存溢出破坏漏洞): 边界校验缺失导致处理畸形流或上传进度时可触发堆内存越界写。
  • CVE-2026-109619(全局状态残留漏洞): 常驻 Worker 进程在特定异常下未能完全重置全局状态,导致跨请求上下文污染。

这两个漏洞均可能导致未经身份验证的远程代码执行(RCE)。

官方安全修复版本:

PHP 版本 修复版本
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 及更早版本已经停止官方安全维护,建议尽快迁移至受支持的版本。
官方公告:https://www.php.net/

站长修复与处置意见:

  1. 优先升级内核版本: 登录宝塔面板 -> 软件商店 -> 已安装,找到对应 PHP 版本点击“更新”,升级至上述修复版本。
  2. 配置基线加固: 无法立即停机升级的生产环境,请先执行上方脚本关闭 session.upload_progress.enabled 并隐藏 PHP 版本号,阻断常规自动化利用链。
  3. 开启进程周期重置: 在宝塔 PHP“性能调整”中将 pm.max_requests 设为 1000~3000,定期回收重建 FPM 子进程以杜绝状态残留。

⚠️ 四、 注意事项

  • 本脚本仅用于 PHP 配置层面的辅助安全加固,不能直接修复本次 PHP 内核漏洞。
  • 本次漏洞应以升级至官方安全修复版本为准,修改 php.ini 不能替代漏洞补丁。
  • 脚本目前属于测试版本,不保证所有宝塔环境及 PHP 版本均能正常运行或生效。使用前建议备份,修改后需重启对应 PHP-FPM,并检查网站是否正常。
  • 本文由 资盘-Zipan (www.zipan.co) 整理发布,仅供交流与测试,生产环境请谨慎使用。
© 版权声明
THE END
喜欢就支持一下吧
点赞15 分享