本帖最后由 神奇的人鱼 于 2025-11-14 10:29 编辑
深度剖析恶意 HTA 样本 ChromeSetup.hta:硬编码密钥、魔改 ZIP 库与银狐木马投递链
近年来,利用 HTML Application(HTA)进行初始投递的恶意软件日益增多。其中,伪装成 Chrome 安装程序的 ChromeSetup.hta 是一个高度工程化的复合型样本。它融合了反调试、COM 交互、.NET 反序列化、白加黑加载、远程载荷投递等多种技术,并通过一个魔改的 C# ZIP 解压器释放核心恶意 DLL。本文将结合最新样本行为,还原其真实攻击链,并附上清晰流程图,助力防御者精准识别。
一、样本核心特点
- HTA 伪装:文件名为
ChromeSetup.hta,诱导用户双击执行
- 完全隐藏:利用
<HTA:APPLICATION> 标签隐藏窗口、任务栏图标
- 三层混淆:三段 JavaScript 分别负责反调试、环境侦察、远程通信
- C# 作为“可信解密器”:嵌入 Base64 编码的 .NET 程序集,硬编码 ZIP 解密密钥
- 恶意载荷隔离:三个嵌入 ZIP 中,仅
package2 包含银狐木马 DLL
- 白加黑加载:通过合法程序 sideloading 启动
LIBEAY32.dll
- 持久化与自删除:利用
%APPDATA% 快捷方式实现开机自启,并在执行后清理痕迹
二、真实攻击流程
解密逻辑完全由 嵌入的 C# 程序集 承担。该 C# 代码基于开源 ZIP 库(如 SharpZipLib)魔改而成,硬编码了解密密钥,仅能解密攻击者预置的三个 ZIP 块。
真正的恶意核心是 package2 中的 LIBEAY32.dll——这是一个经 VMProtect (VMP) 加壳 的银狐(Silver Fox)后门,具备 C2 通信、屏幕捕获、横向移动等高级功能。
三、攻击流程图
为清晰展示其多阶段行为,我们绘制了以下流程图。主干为必然执行的核心链,分支为并行或可选操作:
说明:
- 蓝色为主路径:从用户点击到银狐 DLL 成功加载,缺一不可
- 橙色为辅助行为:自删除与远程载荷为并行/可选操作
- C# 是关键枢纽:只有它能使用硬编码密钥正确解密
package
四、关键技术细节解析
1. HTA 隐藏启动
<HTA:APPLICATION
SHOWINTASKBAR="no"
WindowState="hidden"
INNERBORDER="NO"
SCROLL="NO"
SELECTION="NO" />
确保窗口完全不可见,规避用户察觉。
2. 第一段 JS:反调试对抗
- 重写
console.* 为空函数
- 调用
window.moveTo(-3000, -3000) 将窗口移出屏幕
- 使用动态
Function("Function(...)") 构造 debugger 关键字,触发无限递归反调试
3. C# 程序集:魔改 ZIP 解压器
- 嵌入在 HTA 中,Base64 编码
- 通过
ActiveXObject 注册为 window.o
UnZipFilesFix() 方法内部:
- 提取名为
package1/package2/package3 的 ZIP 块
- 使用硬编码解密内容
- 仅
package2 包含恶意 DLL(如 LIBEAY32.dll)
4. 白加黑加载银狐 DLL
- 释放合法白文件
- 释放银狐 DLL
LIBEAY32.dll(仿冒 OpenSSL 库)
- 通过 CMD 命令或快捷方式参数触发加载
5. 持久化与清理
- 在
%APPDATA% 创建 .lnk 快捷方式`
- 部分样本将快捷方式打包进启动文件夹 ZIP,绕过 EDR 监控
- 成功加载后,删除自身、临时文件、快捷方式,降低驻留痕迹
6. 第三段 JS:远程载荷投递
var url = "https://note.youdao.com/yws/api/personal/share?method=get&shareKey=xxx";
滥用有道云笔记公开 API 作为 C2 通道,下载配置或第二阶段载荷。
五、检测与防御建议
| 检测维度 |
建议 |
| 终端行为 |
监控 mshta.exe 执行、临时目录写入 .NET DLL、%APPDATA% 下异常 .lnk |
| 文件特征 |
HTA 中包含大段 Base64(可解码为 PE/ZIP)、硬编码密钥字符串 |
| 网络行为 |
非浏览器进程访问 note.youdao.com 且携带 shareKey 参数 |
| 进程链 |
mshta.exe → cmsadasd.dsadsad → LIBEAY32.dll(无签名、VMP 特征) |
| 策略防护 |
禁用 HTA 执行(GPO)、阻止未签名 .NET 程序集加载、启用 AMSI |
六、结语
ChromeSetup.hta 不仅是一个钓鱼载荷,更是一个模块化、抗分析、多阶段的投递平台。其巧妙之处在于:
- 利用 HTA 的高权限与隐蔽性
- 通过 C# 组件实现“可信解密”,绕过 JS 沙箱检测
- 将真正恶意逻辑隔离在加密 ZIP 中,提升静态分析门槛
安全团队应重点关注 HTA 与 .NET 的交互行为、ZIP 解密密钥是否硬编码、以及 Public 或 AppData 目录下的仿冒 DLL,才能有效阻断此类高级威胁。
注:银狐木马常与 APT 组织关联,发现此类样本建议立即隔离主机、上报 IOC 并开展横向排查。
|