PHP Foundation 最近发布了针对 PHP 版本 8.5.12、8.4.27、8.3.36 和 8.2.35 的安全更新,旨在修复两个关键的远程代码执行 (RCE) 漏洞。这些漏洞被标识为 CVE-2026-109618 和 CVE-2026-109619,在特定条件下允许未经身份验证的攻击者在服务器上执行代码。第一个漏洞涉及内存溢出 (OOM) 损坏,即在达到内存限制时,PHP 可能会留下部分初始化的内部数据,从而导致内存损坏。第二个漏洞涉及“释放后使用”错误,其中致命错误可能导致内部状态指向来自先前请求的内存,从而允许后续请求访问该已释放的内存。这两个问题之所以特别严重,是因为它们存在于核心组件——内存管理和错误处理中,而几乎每个请求都会触及这些组件。

PHP Foundation 承认,修复这些问题的延迟是由于资源匮乏和基于共识的决策过程造成的“结构性故障”。在 2024 年项目多年来的首次外部安全审计期间,团队识别出了 OOM 问题,但难以选择修复方案,因为每一个可行的选项都涉及重大的权衡,例如破坏向后兼容性、引入新的拒绝服务 (DoS) 风险,或需要对第三方扩展进行大规模更改。为了解决这些系统性问题,Foundation 已重组了其安全运营,创建了生态系统安全团队 (Ecosystem Security Team),并聘请专门人员负责分级和加固。他们还整合了来自 Anthropic 和 OpenAI 等供应商的 AI 辅助研究工具,以帮助验证报告并对具有相同根源的漏洞进行分组。

PHP Foundation 的官方徽标。
PHP Foundation 正在重组其安全运营以解决系统性漏洞。thephp.foundation

PHP Foundation 正在重组其安全运营以解决系统性漏洞并缩短响应时间。

尽管有了这些内部改进,由于协调披露信息的泄露,发布过程仍面临重大的外部复杂情况。在计划发布的两天前,CVE ID 开始在社交媒体上流传,且带有错误的 CVSS 评分。这次泄露导致了过早的公开公告,并使发布日期提前了一天,以确保用户能够尽快更新。此外,Foundation 指出,一些实体提前打破了披露禁令;例如,一家安全公司错误地发布了概念验证视频,而一家分销商在官方发布之前就发布了包含修复程序的构建镜像。这些事件凸显了在高风险环境下管理协调披露的难度,因为攻击者可以在修复程序提供给分销商后立即研究二进制修复。