【靶场复现】CVE-2026-109618—PHP Core 远程代码执行漏洞
松杨网络安全资料库
2026年10月22日 14:58
广东
去阅读
PHP 是一种广泛用于 Web 应用的开源服务器端脚本语言,常见于各类业务系统。PHP 可通过 PHP-FPM、CGI 或 Apache 模块等方式运行,不同 SAPI 和进程模型会影响漏洞的触发条件与实际影响。
2026 年 10 月 21 日,PHP 官方发布了 OOM(内存耗尽)导致代码执行的安全公告。公告指出,特定请求处理路径中发生 OOM 后,PHP 可能过早退出,而请求状态尚未完整初始化;后续清理流程仍可能读取这些无效状态,造成内存破坏。并确认相关版本可通过网络请求实现以 Web worker 身份执行代码。
漏洞描述
漏洞成因
PHP 使用 OOM 处理机制退出部分请求执行上下文。如果内存分配失败发生在请求状态尚未完整初始化的阶段,提前退出可能使后续清理流程接触到无效状态。官方公告列举了多种可能触发 OOM 的请求处理场景,并指出 Apache mod_php在请求启动失败时仍会执行请求关闭流程,因此可能消费此前未正确初始化的状态。
漏洞影响
若完整利用链成立,攻击者可能在 PHP Web worker 的权限下执行命令,影响包括敏感信息泄露、业务文件被篡改和服务中断。实际可利用性取决于 PHP 版本、构建方式、SAPI、内存分配器及部署配置。
漏洞复现
交互会话返回的身份为 www-data,即容器账户:
影响版本
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 官方安全公告
解决方案
升级修复方案
PHP 官方指出,升级到包含补丁的版本是完整修复措施。升级后应重启所有 PHP 和 Web worker,并确认没有池配置、目录配置或应用配置重新启用旧版本或覆盖关键设置。
来源:PHP 官方安全公告
临时缓解建议
官方公告提出,在无法立即升级时,可考虑由管理员将 memory_limit设置为 -1,以移除一种可预测的 OOM 触发条件。但这不是完整修复,也可能增加资源耗尽风险,应经过容量评估并作为临时措施使用。
同时建议:
- 在前端限制并检查 multipart 请求的实际解码体积,不能只依赖
Content-Length。 - 对表单字段、嵌套深度、multipart 分段、分段头数量及上传数量设置合理上限。
- 如果业务不需要 multipart 请求,可在前端直接拦截此类请求。
- 监控 PHP worker 异常退出、异常子进程和异常文件写入。
- 对停止安全支持的 PHP 分支安排迁移或隔离。
关闭 session.upload_progress、启用 session.use_strict_mode或配置 WAF 都不能替代 PHP 官方补丁;不要把单一配置调整视为已彻底修复。
来源:PHP 官方安全公告的缓解建议
参考资料
- PHP 官方安全公告:RCE via OOM corruption
- 项目仓库:https://github.com/junaire/CVE-2026-109618-exploit
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。








评论