这几天的主线只有一条:打补丁。WordPress 在五天里发了第二个安全版,cPanel 一口气修掉三个洞——其中最严重的那个,能把任意一个托管账号直接变成 root。
WordPress 7.1.2:距上一个安全版只有五天(9 月 22 日)
WordPress 9 月 22 日放出 7.1.2,只含一个修复,编号 CVE-2026-87902,官方定级为 critical,安全厂商 Patchstack 给出的 CVSS 分数是 9.2。
问题出在挑选页面模板文件的那段逻辑里。模板文件名的一部分直接来自 URL,而在受影响的版本中,这个值没有过一遍旁边代码早就在用的 ../ 穿越检查,名字最终拼成 page-{值}.php。于是一次成功攻击需要三个条件叠加:当前主题下存在一个以 page- 开头的顶层文件夹、目标文件以 .php 结尾,并且服务器上恰好有一个「被加载就有用」的 PHP 文件。这三样凑齐之后,未登录的攻击者就能让站点加载活动主题目录之外的一个可读本地 PHP 文件,并在特定环境下升级为远程代码执行——这正是官方措辞里那个「某些服务器」的限定。
两个放大风险的开关值得单独记一下。部分旧版默认主题自带符合 page- 前缀的目录,现在的默认主题没有;PHP 的 register_argc_argv 在 8.5 上默认关闭,在更早版本上默认打开,官方 Docker 镜像与 cPanel 环境同样是打开的。
真正值得注意的是节奏。上一个版本 7.1.1 是 9 月 17 日发的安全版,修的是 11 个与这次无关的问题。五天之后又来一个,意味着上周刚更新过的站点这次还得再更新一遍。修复已回迁到 4.7 以来所有仍在接收安全更新的分支,对应关系是 7.1.x 升到 7.1.2、7.0.x 到 7.0.6、6.9.x 到 6.9.9、6.8.x 到 6.8.10,最老一直到 4.7.37。WordPress 没有提供单独的临时规避方案,升级就是修复本身。
cPanel 一次修了三个洞,其中一个能把账号变成 root(9 月 22 日)
同一天,cPanel 发布了三个漏洞的修复。最严重的 CVE-2026-87899 位于 CalDAV 与 CardDAV 服务里,公告写得相当直白:一个已登录的账号持有人可以以 root 身份执行代码,进而取得整台服务器的控制权。它列出的前置条件只有一项——你得有一个 cPanel 账号。放到共享主机上,这句话意味着任何一个套餐用户、任何一个靠钓鱼或撞库拿到客户密码的人,都能走到同一个位置。

第二个洞 CVE-2026-87900 在 WP Toolkit 插件里,允许一个已登录的 cPanel 用户修改其他账号下的数据库,问题出在插件处理建库命令的方式上。cPanel 没有说明可以做哪些修改、能否读取其他账号的数据。这里有个容易漏掉的点:WP Toolkit 是独立的包,有自己的升级路径,升级 cPanel & WHM 并不会把它一起带上去。第三个洞 CVE-2026-68490 同样在 CalDAV 与 CardDAV 服务里,本地用户可以读到其他账号的日历与联系人,但不能修改,也拿不到 root。
受影响的版本是 cPanel & WHM 120 及以后,修复版本按分支分别是 11.134.0.57、11.136.0.41、11.138.0.8,WP Squared 则是 11.138.1.11。三个洞都由研究者 Ali Mustafa(代号 rz1027)报告。截至 9 月 23 日,它们都还没有进入 CISA 的已利用漏洞目录,cPanel 也没有给出「如何判断服务器在打补丁前是否已被攻破」的方法。
机器上跑着 cPanel 的,今天就去后台看一遍版本号,并单独确认 WP Toolkit 的版本。 命令行下更新面板用 /usr/local/cpanel/scripts/upcp --force,这次更新还会顺带修好已有账号上日历与联系人的权限。
顺手要过一遍的:PHP、nginx、Redis、libxml2 的 9 月补丁
这几个组件平时不太被直接接触,但它们的漏洞会通过上层应用传导。PHP 出了 8.5.10 与 8.4.25 两个安全版本;nginx 主线更新到 1.31.6,同日的稳定版 1.30.5 携带同一个修复 CVE-2026-90439——HTTP/3 模块里的一个堆缓冲区溢出,CVSS 6.9,只在使用 OpenSSL 3.5.0 及更早版本、并且真的在提供 HTTP/3 服务时才会命中,影响范围是 1.29.2 到 1.31.5。有一点可以省心:cPanel 的 EasyApache 4 并不构建这个模块,所以 EA4 环境不受这条影响。
Redis 8.10.2 把更新级别标成了安全,修的是两件事。一是事务队列里的命令,在执行前 ACL 权限被撤销之后,仍然可能访问到对应的键;二是集群总线协议在不启用 tls-cluster 时没有自己的认证,任何能连到某节点总线端口的机器都能加入这个集群,新版为此加了启动告警和一个新的 cluster-bus-port-protected-mode 选项(默认关闭)。libxml2 从 2.15.3 升到 2.15.4,其中包含 CVE-2026-86140 这条高危的栈缓冲区溢出。
这里有一条最容易被忽略的纪律:只更新包、不重启对应的服务进程,等于没更新。 多数发行版需要重启服务单元,运行中的进程才会真正加载新版本;面板类工具对 PHP 版本另有更新节奏,OpenLiteSpeed 这类特定环境未必同步,需要单独确认一遍。
这几天你可以做什么
跑 WordPress 的,把站点升到 7.1.2,升完确认一下当前主题的顶层目录里有没有以 page- 开头的文件夹。
用 cPanel / WHM 的,核对面板版本号,并单独把 WP Toolkit 升到 6.11.3 或更高。
跑 nginx、PHP、Redis、libxml2 的,对照上面几个版本号自查,改完记得重启服务进程,别只看包版本。
附:本文信息来源
一手信息
- WordPress 7.1.2 发布公告
- WordPress 版本 7.1.2 说明(含受影响分支清单)
- WordPress 7.1.1 发布公告(9 月 17 日)
- cPanel 安全公告:CVE-2026-87899(CalDAV / CardDAV)
- cPanel 安全公告:CVE-2026-87900(WP Toolkit 建库)
- cPanel 安全公告:CVE-2026-68490(CalDAV / CardDAV 权限)
- cPanel EasyApache 4 更新日志(nginx / PHP / libxml2 版本号)
- Redis 8.10.2 发布说明
- PHP 发行归档
- nginx 1.30.5 / 1.31.6 变更记录
媒体报道
- The Hacker News:WordPress 修掉一个可导致代码执行的高危漏洞
- The Hacker News:cPanel 新漏洞让托管账号以 root 运行代码
- Hackvolt:cPanel 三个漏洞与各分支修复版本对照
- Mangodeveloper:WordPress 路径穿越漏洞的工作原理与放大条件
- WPWithin:WordPress 7.1.2 的暴露面怎么判断
- Linux Compatible:nginx CVE-2026-90439 的影响范围
- A5 站长网:9 月服务器软件安全更新盘点
原创声明:本文由 618A 情报站整理撰写,基于公开信息与实测记录,转载请注明出处并保留原文链接。