伪装主流会议软件 -- "银狐”样本分析及检测规则、思路分享
字数 1658 2025-08-24 10:10:13

"银狐"恶意软件高级分析与检测技术手册

一、概述

"银狐"是一种高度进化的恶意软件家族,近期被发现伪装成主流会议软件通过搜索引擎传播。本手册详细分析其最新变种的技术特点,并提供有效的检测方法。

二、样本加载机制

1. 初始加载器

  • 采用最小化API调用策略降低检测风险
  • 使用jmp rbx指令跳转到0x1B0000地址执行
  • 通过mov地址转移操作避免直接jmp rax的明显特征
  • 8月迭代版本新增了其他寄存器调用变体

2. Shellcode解密过程

  • 初始shellcode仅包含一个有效call指令,其余字节均为加密状态
  • 采用类似CobaltStrike的睡眠解密技术
  • 解密算法特征:
    • 循环右移操作
    • 减法运算
    • 取反操作
    • 动态解密后续指令

三、核心解密算法还原

unsigned char key = 0x91;
unsigned long shellcode_len = 0x9E15;
unsigned char *shellcode_ptr = (unsigned char *)0x18001F;

// 解密算法说明:倒序逐字节异或解密,key随位置变化
while(shellcode_len != 0) {
    *(shellcode_ptr + shellcode_len) ^= key;  // xor byte ptr ds:[r12+rcx], r9b
    key += *(shellcode_ptr + shellcode_len);  // add r9b,byte ptr ds:[r12+rcx]
    shellcode_len--;
}

四、高级环境检测与绕过技术

1. 基础防御绕过

  • ETW/AMSI绕过:通过patch目标函数开头为0x3C字节(ret指令)来跳过扫描和日志输出

2. 防病毒模拟器检测

  • 检查进程名是否匹配模拟环境名称(如myapp.exe)
  • 使用未公开函数获取ntdll导出表
  • 自定义ror算法计算apiHash检测Mpclient函数
  • 调用NtIsProcessInJobNtCompressKey传入无效句柄检测预定返回值
  • 返回错误码0xC0000462时退出进程

3. 沙箱检测技术

  • 尝试动态加载COM类对象检测返回值
  • 大内存堆分配测试
  • 调用VirtualAllocExNuma检测多CPU环境
  • 检查SxIn.dll模块(360沙箱分析dll)
  • 获取SYSTEM_INFO结构体分析硬件信息
  • 主机名互斥体检测
  • 令牌信息检查和权限提升尝试
  • 检测Gh0st后门创建的c:\xxxx.ini文件
  • 使用GetTickCount64__rdtsc()检测时间加速

4. 主动防御削弱

  • 扫描360杀软进程/服务/窗口类
  • 发送线程消息和控制信号尝试关闭杀软
  • 检测Windows Defender相关进程
  • 执行PowerShell命令添加扫描排除项:
    • C:\ProgramData
    • C:\User\Public
    • (8月版本新增Program Files (x86))

五、持久化与后门机制

1. 通信与下载

  • 使用凯撒密码解密字符串(固定key逐字节移位)
  • 从存储桶地址下载后门文件
  • 下载文件填入随机值使hash不固定
  • 文件存储位置:
    • C:\Users\Public\随机目录
    • C:\ProgramData (部分版本)

2. BYOVD驱动模块

  • 当权限不足时跳过
  • 内存dll形式解压payload
  • 使用RPC管道构建计划任务配置
  • 调用NdrClientCall3创建持久化任务
  • 驱动功能:
    • 使用控制码0x22E044和pid强制结束进程
    • 通过IOCTL命令执行(支持Win11)

3. 后门远控

  • 白加黑技术配合两个加密payload文件
  • DLL使用VMProtect保护
  • RC4算法解密payload
  • 加载log.src文件二次解密得到内存dll
  • 获取导出函数CLRCreateInstance实现:
    • 持久化任务创建
    • UAC禁用
  • 加载vcxproj文件解密得到Gh0st变种后门
  • 上线前检查ip地址表更新

六、检测与防御方案

1. YARA规则创建

  • 基于固定加解密函数代码结构
  • 关注连续且固定的代码模式

2. TTPs检测特征

  • 分析攻击者战术、技术和过程
  • 结合应急响应实际发现

3. IOC检测

推荐优先级:

  1. 域名情报
  2. 文件hash

已知IOC:

Hashes:

B736A809E7A0F1603C97D43BBC7D2EA8A9CD080B
A672825339ADBB5EEEF8176D161266D4E4A4A625
E49938CB6C4CE0D73DB2B4A32018B1FF71A2D7F0
9CAA4EC93CE1CD40BD5975645A110A4325310A3B
D7F41D457C8358AF840B06914D1BC969EF7939D0
48B2090FDCEA7D7C0EB1544EBCDAF911796A7F67

域名:

omss.oss-cn-hangzhou.aliyuncs.com
upitem.oss-cn-hangzhou.aliyuncs.com
1o2.oss-cn-beijing.aliyuncs.com
25o.oss-cn-beijing.aliyuncs.com
98o.oss-cn-beijing.aliyuncs.com
vauwjw.net
cinskw.net
hucgiu.net

七、进化趋势预测

  1. 向多段内存加载发展
  2. 运行时动态解密技术增强
  3. 可能开发rootkit类型完全隐蔽后门
  4. 防御对抗能力持续提升

八、防御建议

  1. 监控异常进程创建模式
  2. 关注非常规目录的文件创建(Public/ProgramData)
  3. 检测计划任务中的可疑RPC调用
  4. 监控ETW/AMSI的异常patch行为
  5. 加强对BYOVD驱动的检测能力
  6. 实施网络层对已知C2域名的阻断
"银狐"恶意软件高级分析与检测技术手册 一、概述 "银狐"是一种高度进化的恶意软件家族,近期被发现伪装成主流会议软件通过搜索引擎传播。本手册详细分析其最新变种的技术特点,并提供有效的检测方法。 二、样本加载机制 1. 初始加载器 采用最小化API调用策略降低检测风险 使用 jmp rbx 指令跳转到0x1B0000地址执行 通过mov地址转移操作避免直接 jmp rax 的明显特征 8月迭代版本新增了其他寄存器调用变体 2. Shellcode解密过程 初始shellcode仅包含一个有效call指令,其余字节均为加密状态 采用类似CobaltStrike的睡眠解密技术 解密算法特征: 循环右移操作 减法运算 取反操作 动态解密后续指令 三、核心解密算法还原 四、高级环境检测与绕过技术 1. 基础防御绕过 ETW/AMSI绕过 :通过patch目标函数开头为0x3C字节(ret指令)来跳过扫描和日志输出 2. 防病毒模拟器检测 检查进程名是否匹配模拟环境名称(如myapp.exe) 使用未公开函数获取ntdll导出表 自定义ror算法计算apiHash检测Mpclient函数 调用 NtIsProcessInJob 和 NtCompressKey 传入无效句柄检测预定返回值 返回错误码0xC0000462时退出进程 3. 沙箱检测技术 尝试动态加载COM类对象检测返回值 大内存堆分配测试 调用 VirtualAllocExNuma 检测多CPU环境 检查SxIn.dll模块(360沙箱分析dll) 获取 SYSTEM_INFO 结构体分析硬件信息 主机名互斥体检测 令牌信息检查和权限提升尝试 检测Gh0st后门创建的c:\xxxx.ini文件 使用 GetTickCount64 和 __rdtsc() 检测时间加速 4. 主动防御削弱 扫描360杀软进程/服务/窗口类 发送线程消息和控制信号尝试关闭杀软 检测Windows Defender相关进程 执行PowerShell命令添加扫描排除项: C:\ProgramData C:\User\Public (8月版本新增Program Files (x86)) 五、持久化与后门机制 1. 通信与下载 使用凯撒密码解密字符串(固定key逐字节移位) 从存储桶地址下载后门文件 下载文件填入随机值使hash不固定 文件存储位置: C:\Users\Public\随机目录 C:\ProgramData (部分版本) 2. BYOVD驱动模块 当权限不足时跳过 内存dll形式解压payload 使用RPC管道构建计划任务配置 调用 NdrClientCall3 创建持久化任务 驱动功能: 使用控制码0x22E044和pid强制结束进程 通过IOCTL命令执行(支持Win11) 3. 后门远控 白加黑技术配合两个加密payload文件 DLL使用VMProtect保护 RC4算法解密payload 加载log.src文件二次解密得到内存dll 获取导出函数 CLRCreateInstance 实现: 持久化任务创建 UAC禁用 加载vcxproj文件解密得到Gh0st变种后门 上线前检查ip地址表更新 六、检测与防御方案 1. YARA规则创建 基于固定加解密函数代码结构 关注连续且固定的代码模式 2. TTPs检测特征 分析攻击者战术、技术和过程 结合应急响应实际发现 3. IOC检测 推荐优先级: 域名情报 文件hash 已知IOC: Hashes: 域名: 七、进化趋势预测 向多段内存加载发展 运行时动态解密技术增强 可能开发rootkit类型完全隐蔽后门 防御对抗能力持续提升 八、防御建议 监控异常进程创建模式 关注非常规目录的文件创建(Public/ProgramData) 检测计划任务中的可疑RPC调用 监控ETW/AMSI的异常patch行为 加强对BYOVD驱动的检测能力 实施网络层对已知C2域名的阻断