深度解析:黑客如何通过CDN劫持,悄无声息拿下百万级WP站点?

admin 2026-06-22 04:31:11 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文深度解析了黑客通过供应链攻击劫持CDN资源,针对WordPress插件PushEngage等实施精准投毒的技术路径。攻击利用管理员会话劫持创建隐藏后门账户和WebShell,影响超120万站点。文章提供了服务器端文件排查、数据库审计、日志分析等具体清理指南,并强调重置安全密钥等关键操作。 综合评分: 87 文章分类: 供应链安全,WEB安全,应急响应,漏洞分析,安全运营


cover_image

深度解析:黑客如何通过CDN劫持,悄无声息拿下百万级WP站点?

原创

Kit Chung Kit Chung

安全圈动向

2026年6月18日 08:33 广东

在小说阅读器读本章

去阅读

最近在搞 WordPress 的朋友们需要高度警惕了。

就在这几天,安全圈爆出了一个大瓜:Awesome Motive 旗下的三大头部插件——PushEngage、OptinMonster 和 TrustPulse 遭遇了供应链攻击。据安全机构 Sansec 估计,这波攻击的潜在影响范围超过了 120 万个站点!

这不是普通的撞库或者弱口令爆破,而是一次蓄谋已久、针对 CDN 静态资源的精准投毒。今天,我就带大家深度拆解一下这次攻击的技术路径,看看黑客是如何在我们的眼皮子底下玩了一出“暗度陈仓”,以及如果我们中招了,该如何彻底清理这些“毒瘤”。

🕵️‍♂️ 极其隐蔽的攻击链路:专门“钓”管理员的毒饵

这次攻击最让我拍案叫绝(当然也是最恶心)的地方在于它的触发机制

通常的挂马或者投毒,往往是无差别攻击,普通访客一访问就触发了。但这次被篡改的 JavaScript 文件(比如 PushEngage 的 pushengage-web-sdk.js)极其狡猾。普通用户访问时,它就是一段正常的代码,什么都不会发生。 它在等什么?它在等带有高权限 Session 的 WordPress 管理员登录并加载这个页面。

一旦管理员在登录状态下触发了这段被污染的 JS 脚本,攻击链瞬间启动,整个过程分为四步:

  1. 会话劫持与权限滥用:

    恶意脚本利用当前管理员的有效 Cookie/Session,绕过身份验证,直接以最高权限执行操作。

  2. 创建影子账户:

    偷偷在后台创建一个受黑客控制的全新管理员账户(通常命名为 developer_api1 或类似的 dev_xxxxxx 格式)。

  3. 植入隐形 Web Shell:

    这是最核心的一步!脚本会自动安装一个恶意的 WordPress 插件。这个插件在代码层面做了 Hook,故意在 WordPress 的仪表盘中将自己隐藏起来,普通管理员在后台的“已安装插件”列表里根本看不到它。

  4. 数据外发:

    最后,脚本会将新创建的账号密码和站点关键信息,悄悄发送到一个名为 tidio[.]cc 的伪造域名(故意模仿合法的客服插件 tidio.com,极其容易在抓包分析时被忽略)。

技术解析:

这个被植入的隐藏插件,本质上就是一个 Web Shell。只要黑客知道特定的 URL,甚至都不需要登录刚才创建的影子账号,就能直接在你的服务器上执行任意 PHP 代码。这意味着他们可以脱裤、植入持久化后门、挂黑链、甚至注入信用卡侧录代码。

🔍 溯源疑云:黑客到底是怎么拿到钥匙的?

既然是被 CDN 下发的官方 JS 文件投毒,黑客是如何打穿官方防线的?这就涉及到了一个非常经典的安全短板。

目前,关于入口点,官方和安全机构两边各执一词:

  • PushEngage 官方的说法:

    黑客并没有攻破他们的主程序或核心客户数据库,而是通过一个名为 UpdraftPlus 的 WordPress 备份插件的已知漏洞(CVE-2026-10795,CVSS 评分高达 8.1 的身份验证绕过漏洞),黑进了他们外围的营销网站服务器。

  • 致命的越权获取:

    虽然营销服务器不存客户数据,但上面存放着一把极其致命的钥匙——CDN API Key。黑客拿到这把钥匙后,直接通过 API 替换了 CDN(BunnyNet)节点上的正常 JS 文件。

  • Sansec 的质疑:

    安全机构 Sansec 认为目前定论尚早,Awesome Motive 自己的主服务器依然有被入侵的嫌疑。

但不论真相如何,作为技术人员我们能学到两点:第一,永远不要在非核心服务器上硬编码或长期存放高权限的 API 密钥;第二,备份插件往往是权限最高的组件之一,出现高危漏洞(如 CVE-2026-10795)必须第一时间打补丁。

🛠️ 排查与清理指南:别看后台,直接查服务器!

如果你的站点在 6月12日到 6月14日 期间,运行过 PushEngage、OptinMonster 或 TrustPulse 这三个插件中的任何一个,请直接假设你已经中招

划重点:千万别去 WordPress 的后台看有没有异常插件! 前面说了,这个后门是隐形的,看 Dashboard 只会被欺骗。你必须直接进行服务器端排查。

跟着我做以下几步硬核排查:

1. 检查文件系统

直接 SSH 连上服务器,或者通过宝塔/CPanel 的文件管理器,进入 wp-content/plugins 目录。如果你看到了以下两个文件夹中的任何一个,说明你 100% 中招了,立即彻底删除:

  • content-delivery-helper
  • database-optimizer

2. 查杀影子账户

进入你的 MySQL 数据库,查看 wp_users 表,或者使用 WP-CLI。查找并删除所有非你本人创建的管理员账号,重点排查名为 developer_api1 或前缀为 dev_ 的账号。

3. 审查 Web 访问日志

拉出 6月12日 至 6月14日(UTC时间)的 Nginx 或 Apache 访问日志。使用 grep 命令全局搜索以下特征:

  • 向外网请求 tidio.cc(尤其是包含 /cdn-cgi/ 路径的请求)
  • 目标 IP 为黑客的 C2 服务器:84.201.6.54

4. 终极重置

如果你在上述任何一步中发现了异常,不要仅仅删除了事。因为黑客手握 Web Shell,很可能已经留下了更深层的持久化后门。你必须立刻、马上重置以下所有凭据:

  • 所有 WordPress 管理员密码

  • 数据库连接密码

  • 所有的第三方 API Keys

  • 最重要的一点:

    重新生成 wp-config.php 中的所有安全密钥。这可以强制使黑客现有的所有登录 Session 瞬间失效。


网络安全没有万无一失,供应链攻击更是防不胜防。我们能做的,就是保持敏感的嗅觉,定期审查服务器日志,以及严格控制权限边界。

兄弟们,赶紧去排查一下你们的服务器吧!如果觉得这篇技术拆解对你有帮助,别忘了点赞、在看、转发给身边做开发和运维的朋友,帮他们避个大坑!


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:安全圈动向 Kit Chung Kit Chung《深度解析:黑客如何通过CDN劫持,悄无声息拿下百万级WP站点?》

评论:0   参与:  0