黑产组织"银狐"向财务人员投递".chm"诱饵文件释放"Tianma"远控,诱饵执行流程及木马逆向分析
字数 2211 2025-08-06 00:25:08

黑产组织"银狐"攻击手法分析:CHM诱饵文件释放Tianma远控

一、攻击背景与概述

  1. 攻击组织:东南亚中文黑灰产团伙(被称为"银狐"、"谷堕"等)
  2. 攻击目标:国内金融、教育、电商、货运、设计等行业的财务/信息人员
  3. 攻击目的:窃取资金或敏感数据
  4. 主要工具:基于Ghost远控修改的"winos"变种及"Tianma"远控
  5. 攻击载体:通过微信/QQ/邮件/伪造网站进行钓鱼

二、样本基本信息

  1. 文件类型:MS Windows HtmlHelp Data (.chm)
  2. 哈希值
    • SHA256: 2edc73c7d2f05fe9ccc078b3456cb1fdfb25e1d7d042b027a038d2a67c1d5a46
    • MD5: d0d11b0cef237ca7db83d2de86d6ca7d
    • SHA1: 2297c9b2004d3ce994bfdaa201f0b678b02925b1

三、CHM文件分析

3.1 CHM文件结构

  1. 解压后包含:
    • test.html(主要恶意脚本)
    • 其他HTML资源文件

3.2 test.html分析

  1. 核心功能

    • 包含三段Base64编码的密文(shellcode)
    • 使用WScript.Shell对象读取注册表获取.NET Framework版本
    • 设置环境变量COMPLUS_Version
    • 通过BinaryFormatter.Deserialize反序列化执行恶意代码
  2. 技术细节

    // 示例代码结构
    function Base64ToStream(base64) {
        // Base64解码实现
    }
    
    var stage_1 = "AAEAAAD..."; // Base64编码的shellcode
    var stage_2 = "...";
    var stage_3 = "...";
    
    // 获取.NET版本并设置环境变量
    var shell = new ActiveXObject("WScript.Shell");
    try {
        var version = shell.RegRead("...\\FullVersion");
    } catch {
        // 回退处理
    }
    
    // 反序列化执行
    try {
        var obj = BinaryFormatter.Deserialize(Base64ToStream(stage_1));
    } catch {
        // 尝试stage_2
    }
    

3.3 Shellcode分析

  1. stage_1功能

    • 关闭DisableActivitySurrogateSelectorTypeCheck类型检查
    • 绕过.NET高版本框架对ActivitySurrogateSelector类的安全限制
  2. stage_2功能

    • 包含PE文件(4D5A开头)
    • 实际为.NET DLL模块(v4.0.30319)
    • PDB路径泄露:"2023-TianMa~\TMAir_Ghost10.0_dev_vs2022标记v4.2.0\CHM\KH\TestAssembly\obj\Release\TestAssembly.pdb"

四、.NET恶意模块分析

4.1 模块结构

  1. 两个主要功能模块:

    • shellcode
    • TestAssembly
  2. TestAssembly功能

    • 在c:\users\searches\创建随机文件名
    • 拼接URL:https://muchengoss.oss-cn-hongkong.aliyuncs.com/
    • 目标文件列表:
      • svchost.exe
      • libcef.dll
      • libcef.png
      • decod.exe
      • cache.dat
  3. Shellcode加载

    • Load2方法根据系统架构加载不同shellcode
    • x86:62,464字节
    • x64:99,840字节

4.2 Shellcode提取

  1. 定位方法

    • 在Hex数据中搜索"4D5A"(PE文件头)
    • x64和x86 shellcode在第10字节开始不同
  2. 提取后分析

    • 实际为C++编写的下载器
    • 功能:下载后续恶意组件

五、C++ Shellcode功能分析

  1. 工作流程

    • 请求.NET模块中拼接的URL路径
    • 在%temp%目录创建以PID重复组成的文件夹名
      • 示例:397239723972397239723972397239723972_b
    • 下载5个关键文件到该目录
  2. 下载文件功能

    文件名 功能描述
    cache.dat 加密的7z压缩包
    decod.exe 7zip解压工具
    libcef.dll aplib压缩数据,用于后续解压
    libcef.png 加密载荷,需libcef.dll解密
    svchost.exe/libcef.exe 公开可信工具,用于加载dll

六、Tianma远控分析

  1. 基础信息

    • 基于Ghost远控改造
    • 功能包括:
      • 键盘记录
      • 文件浏览
      • 命令执行
      • 浏览器信息窃取
  2. 加载流程

    • libcef.dll解密libcef.png
    • 释放并执行Tianma远控

七、IOC指标

7.1 MD5哈希

a0a49aa714d01c8e4249a58b70edf3c0
5a0e22748b83e10fbb1bc79725b01428
7e8fd3d8bc887455b76cbdfc338eed4e
3327b42f2c9aa4a98200ccdc4f781837
0792a18e287f2658d7f08dbf1a3b46bc

7.2 URL

https://muchengoss.oss-cn-hongkong.aliyuncs.com/

八、防御建议

  1. CHM文件防护

    • 禁用HTML帮助执行脚本功能
    • 对收到的CHM文件进行沙箱分析
  2. .NET防护

    • 监控BinaryFormatter反序列化行为
    • 限制ActivitySurrogateSelector类型的使用
  3. 系统防护

    • 监控%temp%目录异常文件创建
    • 拦截非常规的PID命名文件夹
  4. 网络防护

    • 拦截对oss-cn-hongkong.aliyuncs.com的可疑请求
    • 监控异常7zip解压行为
  5. 终端防护

    • 检测libcef.dll异常加载行为
    • 监控svchost.exe异常子进程

九、技术要点总结

  1. 攻击链
    CHM → HTML脚本 → .NET反序列化 → Shellcode → 下载器 → Tianma远控

  2. 关键技术

    • 利用CHM的脚本执行能力
    • .NET反序列化漏洞利用
    • 多阶段Shellcode加载
    • 白文件+恶意DLL组合
    • 多层加密压缩规避检测
  3. 溯源信息

    • PDB路径泄露开发环境信息
    • 使用"TianMa"、"Ghost10.0"等标识
    • 香港阿里云OSS作为C2
黑产组织"银狐"攻击手法分析:CHM诱饵文件释放Tianma远控 一、攻击背景与概述 攻击组织 :东南亚中文黑灰产团伙(被称为"银狐"、"谷堕"等) 攻击目标 :国内金融、教育、电商、货运、设计等行业的财务/信息人员 攻击目的 :窃取资金或敏感数据 主要工具 :基于Ghost远控修改的"winos"变种及"Tianma"远控 攻击载体 :通过微信/QQ/邮件/伪造网站进行钓鱼 二、样本基本信息 文件类型 :MS Windows HtmlHelp Data (.chm) 哈希值 : SHA256: 2edc73c7d2f05fe9ccc078b3456cb1fdfb25e1d7d042b027a038d2a67c1d5a46 MD5: d0d11b0cef237ca7db83d2de86d6ca7d SHA1: 2297c9b2004d3ce994bfdaa201f0b678b02925b1 三、CHM文件分析 3.1 CHM文件结构 解压后包含: test.html(主要恶意脚本) 其他HTML资源文件 3.2 test.html分析 核心功能 : 包含三段Base64编码的密文(shellcode) 使用WScript.Shell对象读取注册表获取.NET Framework版本 设置环境变量COMPLUS_ Version 通过BinaryFormatter.Deserialize反序列化执行恶意代码 技术细节 : 3.3 Shellcode分析 stage_ 1功能 : 关闭DisableActivitySurrogateSelectorTypeCheck类型检查 绕过.NET高版本框架对ActivitySurrogateSelector类的安全限制 stage_ 2功能 : 包含PE文件(4D5A开头) 实际为.NET DLL模块(v4.0.30319) PDB路径泄露:"2023-TianMa~\\TMAir_ Ghost10.0_ dev_ vs2022标记v4.2.0\\CHM\\KH\\TestAssembly\\obj\\Release\\TestAssembly.pdb" 四、.NET恶意模块分析 4.1 模块结构 两个主要功能模块: shellcode TestAssembly TestAssembly功能 : 在c:\users\searches\创建随机文件名 拼接URL:https://muchengoss.oss-cn-hongkong.aliyuncs.com/ 目标文件列表: svchost.exe libcef.dll libcef.png decod.exe cache.dat Shellcode加载 : Load2方法根据系统架构加载不同shellcode x86:62,464字节 x64:99,840字节 4.2 Shellcode提取 定位方法 : 在Hex数据中搜索"4D5A"(PE文件头) x64和x86 shellcode在第10字节开始不同 提取后分析 : 实际为C++编写的下载器 功能:下载后续恶意组件 五、C++ Shellcode功能分析 工作流程 : 请求.NET模块中拼接的URL路径 在%temp%目录创建以PID重复组成的文件夹名 示例:397239723972397239723972397239723972_ b 下载5个关键文件到该目录 下载文件功能 : | 文件名 | 功能描述 | |---|---| | cache.dat | 加密的7z压缩包 | | decod.exe | 7zip解压工具 | | libcef.dll | aplib压缩数据,用于后续解压 | | libcef.png | 加密载荷,需libcef.dll解密 | | svchost.exe/libcef.exe | 公开可信工具,用于加载dll | 六、Tianma远控分析 基础信息 : 基于Ghost远控改造 功能包括: 键盘记录 文件浏览 命令执行 浏览器信息窃取 加载流程 : libcef.dll解密libcef.png 释放并执行Tianma远控 七、IOC指标 7.1 MD5哈希 7.2 URL 八、防御建议 CHM文件防护 : 禁用HTML帮助执行脚本功能 对收到的CHM文件进行沙箱分析 .NET防护 : 监控BinaryFormatter反序列化行为 限制ActivitySurrogateSelector类型的使用 系统防护 : 监控%temp%目录异常文件创建 拦截非常规的PID命名文件夹 网络防护 : 拦截对oss-cn-hongkong.aliyuncs.com的可疑请求 监控异常7zip解压行为 终端防护 : 检测libcef.dll异常加载行为 监控svchost.exe异常子进程 九、技术要点总结 攻击链 : CHM → HTML脚本 → .NET反序列化 → Shellcode → 下载器 → Tianma远控 关键技术 : 利用CHM的脚本执行能力 .NET反序列化漏洞利用 多阶段Shellcode加载 白文件+恶意DLL组合 多层加密压缩规避检测 溯源信息 : PDB路径泄露开发环境信息 使用"TianMa"、"Ghost10.0"等标识 香港阿里云OSS作为C2