News · Security · November 12, 2026
PHP2Shell 三周后:哪些已证实,哪些没有
已知语言的网站中约 69% 使用 PHP,而非 80%。关于 PHP 漏洞已证实的内容:暴露、被扫描、被利用、已被入侵。
DRIVE 369 DAO · English · Русский
PHP 发布两个严重漏洞的修复三周后,这件事分成了两部分:真实而严重的技术问题,以及一批超出证据的说法。下面按层级说明报告究竟证明了什么。以下内容均于 2026 年 11 月 12 日核对。
漏洞是什么
CVE-2026-109618 和 CVE-2026-109619 是 PHP 核心中的内存安全漏洞,PHP 自己评为 9.2 分(满分 10),允许未经认证以网络服务器权限远程执行代码(Rapid7、watchTowr、Unit 42)。第一个是请求处理中的内存不足漏洞,精心构造的 multipart 上传可以触发它。第二个会留下过期状态,同一工作进程上的下一个请求可能重用它。Wiz 演示了它在默认的 WordPress、Drupal 和 Joomla 镜像上有效,并称这个漏洞可追溯到 PHP 5.4。能否利用取决于 PHP 的运行方式:Apache mod_php 风险最高,据 CISA、Rapid7 和 watchTowr,PHP-FPM、php-cgi、FrankenPHP 和 LiteSpeed 同样在范围内。
修复版本:8.5.12、8.4.27、8.3.36 和 8.2.35,于 10 月 21 日发布。PHP 7.4、8.0 和 8.1 只获得了源码回移补丁,cPanel、CloudLinux 和 Ondrej Sury 为旧版本发布了软件包。第三个相关漏洞 CVE-2026-115560 于 10 月 23 日披露,需要非默认配置(Rapid7 建议在修复进入 PHP 8.6 之前关闭会话上传进度)。
时间线
- 2026 年夏季: Calif 在 OpenAI 的“Patch the Planet”计划下报告了无条件远程代码执行;Wiz 报告了自己的发现。PHP 基金会称协调修复于 9 月开始(PHP Foundation)。
- 10 月 17 日: 亚马逊的蜜罐记录到最早的利用尝试,比披露早四天。
- 10 月 20 日: CVE 编号泄露,PHP 提前了发布时间。
- 10 月 21 日: 补丁发布,Cloudflare 为所有套餐部署防火墙规则,大规模利用尝试开始。
- 10 月 26 日: CISA 将两个漏洞加入已被利用清单,联邦机构期限为 10 月 29 日(CISA 公告)。
对“AI 发现了它”这种说法要谨慎:PHP 基金会称,内存不足的根因在 2024 年的审计中已被注意到,但没有修复。AI 模型让利用链的构建变快了,这才是真正的变化。
证据的四个层级
| 层级 | 已证实的内容 | 来源 |
|---|---|---|
| 暴露 | 约 2,920 万台 PHP 主机;披露时 1,840 万台(63.1%)显示为易受攻击版本,其中约 1,100 万台运行已终止支持的分支。版本标识会夸大数字,因为发行版在不改版本号的情况下回移修复。 | Bitsight |
| 被扫描 | Cloudflare 在披露后看到数百万次尝试。Imperva 在最初 24 小时内统计到 482,342 个请求。Bitsight 警告说,扫描量的激增很大程度上是测量假象,而且许多公开的利用代码并不能用。 | Cloudflare(CEO 帖子)、TechTarget 转引 Imperva、Bitsight |
| 被利用 | 亚马逊、watchTowr 和 CISA 表示实际利用确实存在。Rapid7 截至 10 月 27 日自己没有观察到。 | AWS、CISA |
| 已被入侵 | 确认的案例很少而且很窄:约 25 台 Palo Alto PAN-OS 管理服务器(Unit 42 已核实)和一台夺旗赛服务器。Wordfence 截至 10 月 28 日不知道任何被入侵的 WordPress 站点。Unit 42 撤回了此前与欧洲某政府机构的关联。不存在权威的被入侵站点数量。 | Unit 42、Wordfence |
“80% 的互联网被攻破”是真的吗?
不是。W3Techs 显示,在其能检测到服务器端语言的网站中,68.8% 使用 PHP(2026 年 11 月 12 日),并明确说明该数字排除了语言未知的网站。标题常说“约 70%”。那是使用份额,不是易受攻击的份额,更不是被攻破的份额。许多离线的网站是预防性关停:荷兰、加拿大、法国、德国等在打补丁期间将政府网站下线或限制访问,日本的瑞穗银行暂停了服务。德国和荷兰官员表示,他们看到了攻击,但没有看到成功利用。
诚实的结论是:弱点广泛而严重,利用尝试数量巨大,成功入侵真实存在,但数量不多且无人统计。 修补很慢:Bitsight 发现,发布一周后,此前易受攻击的主机中只有 33.5% 完成了更新,在已终止支持的分支上只有 6.4%。
现在该做什么
- 更新 PHP 到已修复的版本,或包含两个修复的厂商软件包,并重启工作进程。用更新后的镜像重建容器。
- 运行 PHP 8.1 或更旧的版本? 使用厂商的回移补丁,或像 CISA 建议的那样把网站下线。
- 视为窗口仍然敞开。 补丁不会清除更早植入的 Web Shell。保留 10 月 17 日起的日志和备份,并排查痕迹。
- 缩小爆炸半径。 让管理界面脱离互联网(PAN-OS 案例),不要把数据库密码和 API 密钥放在网站根目录,如果曾暴露就更换。
- 记住这只是权宜之计。 防火墙规则能管一天,只有更新才能修复。
Ghostdrive 的位置
Ghostdrive 的网站是静态构建的,节点运行 TypeScript 而不是 PHP,所以这个漏洞不适用于它们。第一篇简报的要点是:如果存放你文件的服务器被攻破,问题在于攻击者能得到什么。在 Ghostdrive 中,得到的是封存的数据块,因为文件在你的设备上加密。这是对损害的限制,不是对其他漏洞的免疫。