![]()
来 源 | 九卦金融圈综合
一个潜伏在PHP核心代码里超过十年的内存破坏漏洞,被OpenAI的AI模型在几天内挖了出来。更让人后背发凉的是,连专门教别人防黑客的荷兰国家网络安全中心(NCSC),收到风声后的第一反应都是:赶紧把自家官网关了。
10月21日,PHP官方紧急发布补丁,修复CVE-2026-109618和CVE-2026-109619两个漏洞,CVSS评分均为9.2(满分10),合称“PHP2Shell”。攻击者不需要任何账号密码,发个特制请求,就可能让服务器执行任意代码。
PHP是网站后台最常用的语言之一。W3Techs的数据显示,在能识别服务端语言的网站里,69.3%跑的是PHP。底层引擎出问题,大量网站都得跟着检查、升级。
![]()
01
关站的比打补丁的快
补丁还没到,官网先下线。
10月21日,荷兰政府确认多个网站“出于预防”临时关闭,包括Overheid.nl、MijnOverheid.nl和DigiD。DigiD是荷兰人的电子身份证,几乎办什么事都绕不开它。荷兰第二议院网站、数据保护局网站也停了。最扎眼的是荷兰国家网络安全中心(NCSC)自己的官网——负责发预警的机构,先把自己拔了网线。
日本那边,财务省和厚生劳动省的部分网页暂停,佐贺县警方也临时下线了官网。瑞穗银行暂停了网点预约服务,乐天市场部分页面紧急维护。
斯洛伐克和斯洛文尼亚的CERT都发了预警,斯洛文尼亚方面明确建议:没法立刻修的,把网站从公网撤下来。英国NCSC的说法类似——更新不了,就考虑下线。
截至目前,没有公开证据表明这些关站是因为已经被打。荷兰NCSC关站时明确说,还没发现实际攻击。但关站这个动作本身,比任何评分都直白地说明了问题的分量。
![]()
02
GPT怎么找到的
把时间拨回8月。Calif的研究者Ryan Austin参与OpenAI的“Patch the Planet”计划,用GPT-5.6 Sol审计PHP代码。切入点很巧妙:2004年PHP的内存限制机制就出过远程攻击问题,他让模型沿着这条老线索查,看同类错误还在不在。
很快就找到了。PHP处理请求时,数据要临时塞进内存,有额度限制。攻击者用不到8MiB的请求,就能耗尽默认128MiB的额度。按规矩,这时该中断、报错、清理。但模型在PHP内部哈希表里发现了一个致命顺序:新增记录时,先把计数加一,再去申请内存填内容。如果申请内存时正好耗尽额度,程序跳走了,计数却已经加了。清理程序照着计数检查,把半截数据当完整记录用了。
与此同时,Google旗下Wiz的研究团队独立找到了同样的漏洞,还验证了攻击路径:在WordPress、Drupal、Joomla上,无需登录就能触发;甚至能读取内存里的密码、令牌和API密钥。Wiz研究员Sagi Tzadik在X上写了一句:“AI干了这里的大部分工作”。
03
最后48小时,保密崩了
各方原本约好10月22日晚统一发布。但10月20日晚,两个CVE编号在网上流传。PHP团队紧急把发布时间提前了整整24小时,改成21日。
但通知发了,不等于补丁能装上。发行商还在打包。预告发出约半小时,攻击演示视频也漏了。到21日下午,含修复的构建镜像提前公开,外界已经可以对比新旧代码反推漏洞。
同一天下午,Cloudflare首席技术官Dane Knecht发帖:已经看到了早期攻击。他发帖时,距离补丁统一发布还有六个多小时。Cloudflare给使用其WAF的客户部署了临时防护,但Dane强调,这只是缓兵之计,补丁出来就得装。
21日晚,PHP 8.5.12、8.4.27、8.3.36和8.2.35终于发布。但攻击已经先到了。
![]()
04
这只是开始
OpenAI在公告里说了一句值得琢磨的话:据他们所知,前沿AI比攻击者更早发现了这些漏洞,为防御方打开了一个窗口。但同一份公告也预告:PHP只是“已发现、正在修复的多项重大漏洞之一”,未来几个月,同类发现预计会显著增加。
一个在PHP里藏了十几年的洞,AI几天就翻出来了。或许下一批漏洞,已经在排队了。
![]()
![]()
![]()
![]()
![]()
![]()
![]()
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.