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/
站长修复与处置意见:
- 优先升级内核版本: 登录宝塔面板 -> 软件商店 -> 已安装,找到对应 PHP 版本点击“更新”,升级至上述修复版本。
- 配置基线加固: 无法立即停机升级的生产环境,请先执行上方脚本关闭
session.upload_progress.enabled并隐藏 PHP 版本号,阻断常规自动化利用链。 - 开启进程周期重置: 在宝塔 PHP“性能调整”中将
pm.max_requests设为1000~3000,定期回收重建 FPM 子进程以杜绝状态残留。
⚠️ 四、 注意事项
- 本脚本仅用于 PHP 配置层面的辅助安全加固,不能直接修复本次 PHP 内核漏洞。
- 本次漏洞应以升级至官方安全修复版本为准,修改
php.ini不能替代漏洞补丁。 - 脚本目前属于测试版本,不保证所有宝塔环境及 PHP 版本均能正常运行或生效。使用前建议备份,修改后需重启对应 PHP-FPM,并检查网站是否正常。
- 本文由 资盘-Zipan (www.zipan.co) 整理发布,仅供交流与测试,生产环境请谨慎使用。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END


