
摘要: PHP RCE 漏洞 php2shell(CVE-2026-109618、CVE-2026-109619)无法立即升级时,可用腾讯云 Web 应用防火墙(WAF)的 0day 漏洞虚拟补丁在源站前拦截攻击流量,为升级争取窗口。虚拟补丁是过渡手段,最终仍需升级到 PHP 安全版本。
有些业务没法第一时间停机升级 PHP:版本升级要测兼容性,变更要走窗口期,底层发行版源还没同步到安全版本。这段"已知受影响但暂时没补上"的空窗期最危险。可行的止损思路是在流量入口处把攻击请求挡在源站之外,WAF 的虚拟补丁正是为此设计,但它是过渡方案,不能替代升级。
php2shell 的利用链有一个高区分度特征:利用该漏洞的请求必须携带 session 上传进度字段(默认字段名 PHP_SESSION_UPLOAD_PROGRESS)。这个字段在正常业务流量中不出现,攻击者也无法在不破坏利用链的前提下改写它。
这意味着攻击请求在到达 PHP 进程之前,就带有可被识别的流量特征。把检测和拦截放在 Web 应用防火墙这一层,就能在请求触达源站 PHP 之前完成过滤,不依赖源站是否已经打上补丁。
虚拟补丁指的是在不改动源站代码、不升级源站组件的前提下,通过 WAF 规则识别并拦截针对某个漏洞的攻击流量,相当于在网络层给漏洞"打了一层补丁"。
腾讯云 Web 应用防火墙(WAF)提供 0day 漏洞虚拟补丁能力:腾讯安全团队 7×24 小时监测,主动发现并响应,在高危 Web 漏洞出现后下发虚拟补丁,受护用户无需自行操作即可获得紧急漏洞与 0day 漏洞的防护,从而缩短漏洞响应周期。对于暂时无法升级 PHP 的站点,这层防护能把攻击流量挡在源站之前。
除了虚拟补丁,WAF 还具备与本次漏洞场景相关的防护能力:
php2shell 的攻击载体是特制的 multipart POST 请求,配合 WAF 的攻击识别与访问控制,可以对异常请求形成过滤。
把 WAF 作为升级前的过渡防护,可按以下思路落地:
需要强调:这些都是过渡手段。WAF 挡住的是"已知特征的攻击流量",而 PHP 官方已明确本次漏洞没有完整缓解方案,升级到安全版本才是根治。
虚拟补丁为你争取了时间,但不应把它当成终点。拿到窗口期后,应尽快推进升级:
完成升级后,WAF 仍可作为长期的 Web 安全防线继续运行,应对后续可能出现的新漏洞。
无法立即升级 PHP 时,腾讯云 WAF 的 0day 虚拟补丁可在源站前拦截 php2shell 攻击流量,利用其高区分度特征过滤异常 multipart 请求,为升级争取窗口。但虚拟补丁是过渡手段,升级到 PHP 安全版本才是唯一彻底的修复。
腾讯云已上线对应安全解决方案,可按需使用:
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。