Netskope 威胁实验室披露了一起大规模恶意投递活动:超过 5400 个中小企业网站被攻陷,用于向访客推送 ClickFix 诱饵,恶意配置则存放在 BNB 智能链的智能合约中。被波及组织超过 2200 家,涵盖诊所、维修商与在线商店等小型站点,多数运行 WordPress,部分为 PrestaShop。研究人员至今未确认攻击者的初始入侵方式,这意味着用户访问一个真实存在、平时完全可信的公司官网,同样可能撞上恶意弹窗。
事件概述
该活动把两份现成的攻击手法组合使用。EtherHiding 负责”藏”:把载荷地址与配置写进区块链智能合约,由被植入的页面脚本在运行时读取,攻击者不必再在代码里写死域名或 IP,也就无法通过静态分析或域名封禁来切断。ClickFix 负责”骗”:伪造一个看起来极其普通的 CAPTCHA 验证界面,提示用户打开 Windows 运行对话框并粘贴一段命令。Netskope 监测显示活动密度并不低——每天有数百个被攻陷站点处于活跃状态,最近每个工作日都有 300 个以上站点与恶意基础设施通信。
技术细节
被攻陷站点的页面中植入了经过混淆的脚本,脚本向智能合约发起只读查询,取回一条最新的投递域名。攻击者只需更新合约内容即可完成基础设施切换,被感染的站点代码无需任何改动,这使传统基于黑名单的封堵几乎失效。当前版本使用的是 BNB 智能链的测试网合约,成本低且难以被强制下架。
诱导环节沿用 ClickFix 模板:页面加载后模糊背景并弹出验证框,指示用户复制命令并粘贴到运行对话框执行。命令会访问远程 WebDAV 路径并拉起一个伪装成普通文件的 DLL,由 32 位 rundll32.exe 按导出序号调用,随后解密出内存驻留的窃密载荷。研究人员同时记录到该活动的新变种:新版不再依赖社会工程,而是滥用 WebRTC 篡改握手逻辑、跳过信令服务器直接建立加密的 UDP 隐蔽通道,代码仅在内存中执行,并复用页面已有的 nonce 绕过内容安全策略。两条路径均已在真实流量中被观测到。
影响评估
该活动的目标是可快速变现的凭据与数字资产,而不是破坏企业内网,因此受害者往往在资金被盗后才会察觉。载荷配置中包含数百条采集规则,覆盖浏览器、扩展、即时通讯、加密货币钱包、密码管理器、认证器、邮件客户端与远程访问工具,并会定向搜索常见目录下的私钥、钱包备份、API 与 OAuth 凭据以及证书文件。对中小企业而言,风险是双重的:自身站点被攻陷会同时损害品牌信誉与访客安全,而访客在真实站点上遭遇伪造验证框时,心理防线往往比在陌生站点上更低。
修复建议
- 站点侧排查未被授权的脚本与外链:检查主题与插件文件的最近改动、Cloudflare Worker 等边缘配置,确认是否存在被注入的混淆代码;
- 收紧 WordPress 后台与文件系统的写权限,启用文件完整性监控,及时更新主题、插件与核心版本;
- 在 WAF 与浏览器侧阻断点击劫持与伪造验证类页面元素,对站外引用的 JS 与 WebSocket/WebRTC 连接做白名单控制;
- 员工与企业用户侧执行硬性规范:任何网页要求打开运行对话框、粘贴命令或执行脚本,一律视为攻击,不做验证、直接关闭;
- 把区块链托管载荷纳入检测思路,不要只依赖域名黑名单,可结合脚本行为与内存执行特征做端点侧监测。