平时我真不怎么盯博客后台,毕竟就是个写写东西的地方,又不是什么大站。但 10 月 21 号那天刷手机看到一条视频,我扫了一眼,心里咯噔一下,PHP 出了两个严重漏洞,能直接远程执行代码,代号叫php2shell。
回家第一件事,打开电脑,阿里云控制台连 SSH,敲 php -v。一看版本,好家伙,正好在受影响的范围里。说实话,我平时连 WordPress 自动更新都懒得点,插件能不动就不动,结果这次是 PHP 本身出了问题,你再怎么折腾主题、插件都没用,根儿烂了。
我直接把站点停了。
至于吗?一个小博客,谁盯上你啊。话是这么说,但这次漏洞不太一样。两个 CVE 编号,CVE-2026-109618 和 CVE-2026-109619,CVSS 评分都是 9.2,严重级别。关键是,不需要登录,不需要任何认证,攻击者构造个请求就能在服务器上跑代码。CERT-EU 那边甚至说,概念验证代码已经在流传了,利用的可能性在升高。英国 NCSC 更直接:没法更新的话,考虑把系统下线。
所以我停了
这次漏洞是怎么来的,也挺有意思
说出来你可能不信,这俩漏洞在 PHP 代码里藏了十多年,靠人肉审计一直没揪出来。最后是 AI 帮的忙。
OpenAI 那边搞了个叫Patch the Planet的项目,资助安全公司 Calif 的研究员 Ryan Austin 用 GPT-5.6 Sol 去扫 PHP 源码。八月的时候,Austin 发现了内存处理上的异常,后来确认是致命错误处理时留下了脏数据,后续请求可能复用到没清干净的内存。差不多同时,Wiz 的研究团队也在用 Gemini 4 Argon 和 GPT-5.6 Sol 做类似的事,独立找到了同一类问题。Wiz 的人说,这漏洞的利用链条复杂到人类研究员几乎做不到的程度,是 AI 把门槛降下来了。
AI 一边帮人写代码这回算是当了回好人。
修复过程比想象中折腾
我一开始想偷懒,直接用宝塔面板的软件商店升级 PHP。结果点了更新,转了半天圈,提示失败。一看日志,某个扩展编译不过去。又试了两次,还是不行。
没办法,老老实实换回命令行。先把站点切到维护模式,备份数据库,然后加了个 PHP 的第三方源,用 apt 升级。中间还遇到依赖冲突,删了俩包才过去。折腾了大概四十分钟,php -v 终于显示 8.4.27。
这个版本号我记住了。官方修好的版本是:8.5 升到 8.5.12,8.4 升到 8.4.27,8.3 升到 8.3.36,8.2 升到 8.2.35。如果你还在 8.1 或更早,官方已经不给补丁了,只有社区或发行版可能提供,最稳的办法是升到受支持的版本。
升完之后,我把站点重新打开确认没什么报错,才松了口气。
几句实在话
我知道很多人跟我一样,博客就是图个乐,平时根本想不起来看版本号。但这次的事给我提了个醒:PHP 是底层的底层,WordPress、Drupal、Joomla 这些全都跑在它上面。Wiz 那边演示了,不登录直接就能打穿最新版的 WordPress。你插件再新、主题再安全,PHP 本身漏了,全是白搭。
我停站那会儿确实有点反应过度,但我不后悔。一个晚上不能访问,换一个安心睡觉,这买卖不亏。







_compressed.jpeg)


