Rank Math PRO 官方更新被投毒:11 小时窗口,后门会自己重建

Rank Math PRO 3.0.123 在 10 月 15 日 20:02 至 10 月 16 日 07:12(UTC)这 11 小时 10 分钟里,从官方站点发出的安装包带后门。版本号救不了你:正版 3.0.123 是 10 月 7 日发布的,投毒包沿用了同一个版本号。Wordfence 给出的编号是 CVE-2026-111862,CVSS 9.8。

事件概述

Rank Math 于 10 月 16 日发布安全通告,确认 PRO 版 3.0.123 在窗口期内通过官网直下与后台更新两条路径分发了带恶意代码的文件,随后下架并发布 3.0.124。WordPress.org 上的免费版(400 万以上安装量)不在影响范围内。

这是 2026 年第三起高级版 WordPress 插件更新通道被投毒事件;厂商未说明入侵途径、受影响站点数与自动更新是否也推了毒包。

技术细节

受影响状态分三种,判断依据只有时间:窗口内安装并激活——按已失陷处理,即使已升到 3.0.124;装了没激活——删文件、重装 3.0.124、扫一遍;只下载未安装——不构成失陷。

后门的行为设计得刻意难清:激活即落地,且每次有人访问站点都会重建隐藏后门,删掉单个文件只换来一次页面加载。投放位置包括 mu-plugins、其他插件目录、非默认主题的 inc/includes/lib、uploads,以及一个仿冒核心文件 wp-includes/class-wp-cache-util.php。

账号层面会创建以 wpsupport_ 为前缀、邮箱以 @wp-mail[.]net 结尾的管理员;写入三个 wp_options 条目,名字分别是 _uf6qdn2hmm、t8krdk990phb、_np5pvf754c;crontab 条目带 #ms6v46 标记;.htaccess 被加入让 .cache 文件按 PHP 执行的规则;代码混淆用 base64_decode 叠加 XOR 循环(密钥 xmmqhn),配合 proc_open 与 PHP-FPM socket 调用,意味着命令能落到服务器层,不限于 WordPress 内部。

外联域名 rank1cdn[.]com 注册于 10 月 14 日 19:31 UTC,比投毒窗口早约 24 小时——C2 先备好,毒包后发。BleepingComputer 在 VirusTotal 找到疑似同源样本 cache-preloader-fff033 (1).php,指标一致,可窃取 AWS、GCP、Azure 凭证与 SSH 密钥。

影响评估

9.8 分的依据是零前置条件:不需要口令与交互,激活即完全接管。真正麻烦的是不可虚拟补丁——攻击发生在厂商自己的分发系统上,WAF 与入侵检测无法区分「官方干净更新」和「官方投毒更新」。

国内用户还有一层:PRO 是付费授权,实际常见手动上传或第三方代下,后者没有校验环节。

修复建议

  • 先判定:只看「是否在窗口内下载或更新并激活过 3.0.123」,不要用版本号自我安慰。
  • 有 10 月 15 日 20:02 UTC 之前的干净备份:先还原文件与数据库、全站扫描,再轮换全部凭证(WP 与数据库口令、wp-config 盐值、API key、面板与 SSH、重置 2FA),最后装 3.0.124。
  • 无干净备份:整目录删除 rank-math-pro(停用不够)、删掉三个 wp_options 条目、出口封禁 rank1cdn[.]com,再按 IOC 找 mu-plugins、越权账号、计划任务与 .htaccess 残留。
  • 装了没激活:删文件,重下 3.0.124,扫一遍。

参考来源