APT28分析之X-agent样本分析
字数 2161 2025-08-03 16:44:35
APT28组织X-agent木马样本分析技术文档
1. 概述
X-agent是APT28组织(与俄罗斯政府相关的高级攻击团伙)的旗舰木马程序,具有多平台版本。该木马通常作为第二阶段攻击载荷,具备完整的功能模块。本文档将详细分析X-agent样本的技术细节。
2. 样本基础信息
2.1 初始加载器(spoolhost.exe)
- 文件名称: spoolhost.exe
- SHA-256: dfba21b4b7e1e6ebd162010c880c82c9b04d797893311c19faab97431bf25927
- 创建时间: 2013-05-21 14:01:00
- 文件大小: 145 KB (148,805 字节)
- 功能: 下载执行后释放ose00000.exe和83D2CDE2-8311-40CB-B51D-EBE20FA803D1.dll两个文件
2.2 X-agent主模块
- 文件名称: 83D2CDE2-8311-40CB-B51D-EBE20FA803D1.dll
- SHA-256: 5f6b2a0d1d966fc4f1ed292b46240767f4acb06c13512b0061b434ae2a692fa1
- 创建时间: 2013-05-21 13:53:21
- 文件大小: 107 KB (109,568 字节)
- 主要模块:
- AgentKernel: 核心模块,负责与C&C通信
- modKey: 键盘记录模块
- modFS: 文件系统操作模块
- modProcRet: 进程相关模块
3. 反分析技术
样本包含以下反分析机制:
- 时间检测: 检查系统时间是否超过正常机器速度,若检测到调试则直接退出
- 环境变量获取: 通过获取系统环境变量来释放DLL文件
- 持久化机制: 通过rundll32.exe执行dll中的init导出函数
4. 核心功能分析
4.1 初始化流程
- 获取临时文件路径并启动参数线程
- 获取硬盘信息
- 配置各功能模块:
- LocalAgentWinHttpProxySender
- AgentModuleRemoteKeyLogger
- ModuleFileSystem
- ProcessRetranslatorModule
- 启动主线程和其他模块线程
4.2 网络通信机制
4.2.1 网络检测
- 首先连接adobeincorp.com测试网络连通性
- 发现两个备份C&C地址:
- 94.23.254.109
- 216.244.65.34
4.2.2 通信加密
-
数据构造:
- 使用硬编码key连接硬盘序列号
- 将组合数据进行RC4加密(密钥为随机4字节)
- 生成随机字符串进行异或操作,形成0x20字节数据
- 结构:4字节随机 + 4字节RC4密钥 + 密文(包含硬编码key和硬盘序列号)
-
Base64编码:
- 使用非标准Base64算法
- 可打印字符表被修改(最后两个字符不同)
-
通信频率:
- POST和GET请求间隔15分钟发送
4.2.3 POST数据包
- 结构:
- 0-19字节: 硬编码key(用于验证)
- 20-21字节: 0100表示AgentKernel模块
- 22-39字节: 包含的模块列表,用"#"分隔
- 0100: AgentKernel模块
- 0110: modKey模块
- 0111: modFS模块
- 0113: modProcRet模块
4.2.4 GET请求
- 在POST发送15分钟后发送
- 使用相同的加密方式
5. 模块功能详解
5.1 临时文件操作
- 在临时文件夹写入zdg6EF885E2.tmp文件
- 文件结构:
- 0-3字节: 字符串大小
- 4-7字节: 0x5c997933(硬盘信息)
- 8-9字节: 0x0001(AgentKernel ID)
- 后续内容: 模块配置列表,用"#"分隔
5.2 硬盘信息获取
- 构建设备ID
- 用于生成唯一标识
5.3 屏幕截图功能
- 通过邮槽(mailslot)机制等待指令
- 匹配"SCREEN"指令触发截图
5.4 键盘记录功能
- 监控系统最前窗口
- 记录键盘输入
5.5 文件系统操作
- 文件写入
- 文件查找、执行和删除
6. 持久化机制(ose0000.exe)
主要功能:
- 设置DLL木马的持久化
- 确保恶意DLL在系统启动时自动加载
7. 检测与防御建议
7.1 检测指标
-
文件特征:
- 特定SHA-256哈希值
- 非常规文件名(GUID格式DLL)
-
网络特征:
- 对adobeincorp.com的连接测试
- 特定IP地址通信(94.23.254.109, 216.244.65.34)
- 15分钟间隔的POST/GET请求
- 非标准Base64编码数据
-
行为特征:
- 临时目录创建特定格式文件
- 邮槽通信
- 窗口监控行为
7.2 防御措施
- 监控和阻止非常规Base64编码的网络通信
- 限制rundll32.exe执行非常规路径的DLL
- 检测邮槽通信中的"SCREEN"指令
- 监控临时目录中的可疑文件创建
- 实施硬盘序列号白名单机制
8. 总结
X-agent木马展示了APT28组织的高度专业化能力,具备:
- 模块化设计
- 多重反分析技术
- 复杂加密通信
- 多种信息收集能力
- 可靠的持久化机制
理解这些技术细节有助于安全团队更好地检测和防御此类高级威胁。