【警告】PHP 被爆出代号为PHP2Shell的两个未认证 RCE 极危漏洞(CVE-2026-109618, CVE-2026-109619)

风雪飞雨 阅读:260 2026-10-23 22:01:44 评论:0

      自从有了AI Agent,多年以来被发现的漏洞最近都犹如雨后春笋般冒出了头。近日,PHP 被披露其存在远程代码执行漏洞,漏洞编号分别为CVE-2026-109618, CVE-2026-109619,代号 "php2shell"。可导致未经身份验证的远程攻击者通过发送特制的 multipart POST 请求,触发内存破坏并最终实现远程代码执行,从而完全控制服务器。

        PHP 官方于2026年 10 月 21 日 发布紧急安全更新,8.5.12、8.4.27、8.3.36、8.2.35 四个版本修复了两个可致未认证远程代码执行(RCE)的关键漏洞 CVE-2026-109618 与 CVE-2026-109619。官方称不存在完整的临时缓解手段,升级是唯一安全选择;约 70% 的网站运行 PHP,安全圈已将此事件与 Log4Shell 相提并论,所有 PHP 运维需立即完成升级。


漏洞详情:
        PHP 是一种开源的通用计算机脚本语言,其目标是允许网络开发人员快速编写动态页面,应用范围相当广泛,可在多数的服务器和操作系统上运行。
1. PHP 远程代码执行漏洞(CVE-2026-109618):
        在 PHP 中,由于 PHP 在处理内存耗尽(OOM)错误时使用 longjmp() 提前退出当前上下文。在某些上下文中,请求内存在完全初始化之前就处于可访问状态,若此时内存分配失败,PHP 未能正确处理提前退出,导致请求内存处于无效状态。攻击者可通过构造包含大量头部、嵌套字段名或空文件控件的 multipart 请求,在看似不超过 post_max_size 限制的情况下耗尽 memory_limit,触发 OOM。在 Apache mod_php 等无条件调用请求关闭过程的 SAPI 中,关闭过程会处理这些无效状态,最终导致内存破坏和远程代码执行。
2. PHP 远程代码执行漏洞(CVE-2026-109619):
        在 PHP 中,由于 PHP 工作进程会保留指向前一个请求内存的全局状态(如错误、会话、对象和扩展状态),但在请求内存释放前未完全重置该状态,导致释放后使用。当某些输入、配置、会话或错误处理操作在下一个请求正常初始化之前运行时,它们会访问这些未被重置的陈旧状态。攻击者可通过构造特定的堆布局,利用跨请求的生命周期漏洞(例如致命错误导致状态未被重置,或后续诊断信息重新填充了已清理的错误状态),在同一个工作进程处理的两个请求中分别充当生产者和消费者,最终实现未经身份验证的堆释放后使用、内存泄露或远程代码执行。
风险等级:高风险
漏洞风险:
未经身份验证的远程攻击者利用该漏洞可在服务器上以 Web 工作进程账户身份执行任意代码,可能导致服务器完全沦陷、敏感数据泄露或恶意软件植入等危害。
影响版本:
PHP < 8.2.35
PHP < 8.3.36
PHP < 8.4.27
PHP < 8.5.12
安全版本:
PHP >= 8.2.35
PHP >= 8.3.36
PHP >= 8.4.27
PHP >= 8.5.12
修复建议:
官方已发布漏洞补丁及修复版本,请评估业务是否受影响后,升级至安全版本
【备注】:建议您在升级前做好数据备份工作,避免出现意外
漏洞参考:

如果群晖安装了PHP套件的,请立刻马上去更新套件!

image.png 

标签:PHP
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

搜索
排行榜