一个藏了十几年的漏洞,差点让大半个互联网停摆

源自93位全网作者

16:47

10月20日下午,HackerNews上冒出一条帖子,说PHP有两个评分10.0的远程代码执行漏洞。帖子很快被删,截图已传开。几小时内,安全公司watchTowr确认漏洞属实,其中一个已经复现。

随后两天,荷兰的电子身份系统DigiD、个人服务平台MijnOverheid停了,国家网络安全中心自己的网站也一度关闭。36氪第一财经

日本那边,pixiv、Niconico、BOOTH一起进入紧急维护,芬兰、丹麦、法国的政务系统也陆续下线。

一个藏了十几年的漏洞,差点让大半个互联网停摆

让这些网站宁可先下线的,是两个编号CVE-2026-109618和CVE-2026-109619的漏洞。

安全社区给它们起了个直白的名字:PHP2Shell——发一个请求,就能在服务器上拿到一个shell。

PHP不在页面上露面,却像楼里的水电管线:你打开水龙头,它才被想起。

WordPress、Drupal、MediaWiki都跑在它上面。按W3Techs统计,能识别服务端技术的网站里,69.3%用PHP,第二名JavaScript只有8.1%。

一个藏了十几年的漏洞,差点让大半个互联网停摆

这次的问题不在插件,也不在应用,而在PHP解释器内核。发现者之一Wiz说:哪怕你的网站上只跑着一个HelloWorld,也照样受影响。36氪

漏洞不是新长出来的。2004年,安全研究员Stefan Esser就发现过PHP内存限制机制里的远程代码执行问题。2020年,有人报告相关缺陷,没被重视。

2024年,PHP做了多年来第一次外部安全审计,核心开发者已经盯上内存耗尽时的状态错乱,却始终证明不了它真能被利用。

修复方案又会破坏兼容、引入新风险,没人敢拍板,PHP基金会后来把这段拖延称为一次“结构性失败”。36氪

转折发生在今年夏天。安全公司Calif的研究员Ryan Austin在GPT-5.6 Sol辅助下,几天内找到一条能打穿WordPress的路径,8月11日报告给PHP团队。

同一天,OpenAI独立报告了相同根因。8月19日,谷歌旗下的Wiz用WizAtlas配合Gemini 4 Argon,先后验证了免登录远程代码执行。

媒体最初的标题是“AI发现了漏洞”。Ryan Austin随后澄清:方向来自人。他顺着Esser的线索找过去,模型把“发现异常”推进到“证明可利用”。

过去要顶尖团队几个月的活,现在一个人加一个模型,一周就能跑完。

一个藏了十几年的漏洞,差点让大半个互联网停摆

10月21日,PHP发布8.5.12、8.4.27、8.3.36、8.2.35四个版本,两个漏洞的CVSS评分都是9.2。补丁公开的那一刻,攻防双方拿到的是同一份代码修改记录。36氪知乎

Cloudflare当天就观测到攻击流量。之后几天,针对漏洞的扫描和尝试涨到数百万次。还没有确认的成功入侵案例。微博

更值得盯住的是另一组数字。补丁发布前一天,安全公司Modat扫了全网:438万个PHP服务、188万台主机,79%的服务跑在已停止维护的分支上。

按主机算,141万台至少挂着一个生命周期结束的版本。其中PHP 7.4最多:87万个服务、31.6万台主机。知乎

一个藏了十几年的漏洞,差点让大半个互联网停摆

PHP官方只维护8.2到8.5,这些机器大多拿不到现成补丁,连“要不要升级”都做不了。

cPanel、Plesk把7.4焊在共享主机上,WordPress为兼容老环境不肯抬高版本要求,Docker镜像也保留着历史tag。

每一方都有道理,合起来就是几百万个服务在没有安全维护的分支上裸奔。

所以“已修复”这三个字,这次只对大约四分之一的机器成立。剩下的四分之三,修复方案写在迁移计划里,不在补丁里。

AI把“早就知道但证明不了”变成了“马上能用”,这个能力不会只站在防守方这边。下一次,从漏洞公开到攻击落地的那段窗口,只会更短。

对还在运维网站的人来说,选择很朴素:能升到8.2以上的直接升;升不动的,先把memory_limit设为-1、关掉session.upload_progress,再安排迁移。

内容由AI生成
0
扫一下,分享更方便,购买更轻松
0评论

当前文章无评论,是时候发表评论了
提示信息

取消
确认
评论举报

最新文章 热门文章