
摘要: 腾讯边缘安全加速平台 EO(EdgeOne)已针对 php2shell 漏洞(CVE-2026-109618、CVE-2026-109619)发布托管规则,规则 ID 为 4401216559 和 4494969309。启用"开源组件漏洞"规则组自动防护即可拦截攻击流量,配合自定义规则缓解。最终仍需升级 PHP。
EdgeOne 已基于 php2shell 的高区分度特征发布两条托管规则,归属"开源组件漏洞"类别,规则 ID 分别为 4401216559 和 4494969309,可检测并拦截利用 CVE-2026-109618、CVE-2026-109619 的请求,防止攻击流量到达源站。下面给出托管规则启用步骤、自定义规则配置,以及和升级配合的完整路径。
EdgeOne 对两个漏洞的覆盖方式如下:
漏洞编号 | 覆盖方式 | 处理方式 |
|---|---|---|
CVE-2026-109619 | 托管规则已覆盖 | 启用托管规则,规则 ID 为 4494969309 |
CVE-2026-109618 | 托管规则已覆盖 | 启用托管规则,规则 ID 为 4401216559,并建议配合自定义规则拦截不必要的 multipart 与超大正文请求 |
这两条规则的识别依据是:利用该漏洞的请求必须携带 session 上传进度字段(默认字段名 PHP_SESSION_UPLOAD_PROGRESS)。该字段在正常业务流量中不出现,攻击者也无法在不破坏利用链的前提下改写,属于高区分度特征。
要让规则真正拦截(而不是只记录日志),需按以下步骤配置:
特别注意:开启了"评估模式",或把"开源组件漏洞"配置为"手动防护"的站点,上述规则处于"观察"模式——仅记录日志,不会拦截攻击请求。配置完成后务必确认规则处于拦截状态。
CVE-2026-109618 通过耗尽 PHP 进程内存触发,建议在托管规则基础上,再配置自定义规则缩小暴露范围。
拦截不必要的 multipart 请求。若站点部分路径不存在文件上传、表单提交等 multipart 业务,可直接拦截这些路径上的 multipart 请求。在 Web 防护 > 自定义规则 > 精确匹配规则 中新增:
拦截不必要的超大正文请求。攻击者需要向 PHP 进程填充大量数据才能触发内存耗尽。若站点没有接收超大正文的业务,可为请求正文设置长度上限。在 Web 防护 > 自定义规则 > 精确匹配规则 中新增:
说明:EdgeOne 安全策略的正文扫描长度上限默认为 10 KB,如有超过 10 KB 的正文请求,需升级订阅企业版。
EdgeOne 的智能 Web 防护基于腾讯云海量攻击样本库和深度分析引擎,可拦截恶意攻击,抵御 SQL 注入、XSS 等多类 Web 攻击;配合托管规则组与自定义规则,对 php2shell 这类有明确特征的攻击流量能在边缘节点完成识别与拦截,使攻击流量不触达源站。EdgeOne 本身也提供全球加速与 DDoS 防护能力,适合对外提供 Web 服务的站点统一接入。
EdgeOne 公告同样强调升级的必要性。建议尽快将 PHP 升级至 8.5.12、8.4.27、8.3.36 或 8.2.35,同时复核 memory_limit、post_max_size、upload_max_filesize 的配置,避免为单个请求分配过大的内存与请求体上限。
无法立即升级时,可将 session.upload_progress.enabled 设置为 0 作为临时缓解。但需明确:PHP 官方已说明这不是完整修复,且 CVE-2026-109619 存在多条失效状态消费路径,关闭上传进度只能关闭其中一条,不能替代版本升级。
EdgeOne 防护 php2shell 的路径是:启用"开源组件漏洞"规则组自动防护,确认规则 4401216559、4494969309 处于拦截状态;对无 multipart 业务的路径和超大正文请求配置自定义拦截规则。边缘防护能挡住攻击流量,但升级 PHP 到安全版本才是根治。
腾讯云已上线对应安全解决方案,可按需使用:
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。