针对一个有意思的钓鱼免杀样本的详细分析
字数 1453 2025-08-24 16:48:07
钓鱼免杀样本详细分析教学文档
1. 样本概述
这是一个具有高度对抗性的钓鱼攻击样本,主要特点包括:
- 沙箱无法检测出恶意行为(沙箱逃逸)
- 使用多阶段加载技术
- 包含复杂的混淆和反分析机制
- 最终从C2服务器下载并执行加密的Payload
2. 样本结构分析
2.1 初始文件结构
解压后的样本包含以下关键组件:
├── MACOSX目录(伪装成Mac相关文件)
├── LNK快捷方式(诱饵文件)
├── VBS脚本(初始执行入口)
└── DS_Strore.exe(核心恶意程序)
2.2 执行流程
- 用户点击LNK快捷方式
- 调用执行VBS脚本
- VBS脚本重命名目录下文件并启动DS_Strore.exe
- 执行PING操作(可能是延迟执行或反沙箱检测)
3. 核心恶意程序分析(DS_Strore.exe)
3.1 主函数结构
程序采用典型的ShellCode加载技术:
void main() {
// 分配内存空间
LPVOID mem = VirtualAlloc(NULL, shellcode_size, MEM_COMMIT, PAGE_EXECUTE_READWRITE);
// 拷贝ShellCode到内存
memcpy(mem, shellcode, shellcode_size);
// 跳转执行ShellCode
((void (*)(void))mem)();
}
3.2 ShellCode分析
3.2.1 反分析技术
- 包含大量混淆垃圾代码(干扰静态分析)
- 动态解密关键字符串(防止字符串扫描)
- 使用非常规API调用方式
3.2.2 关键功能
- 加载必要的DLL模块(kernel32.dll等)
- 动态解析所需API函数地址
- 解密关键字符串"LRcOSGV0ewEDBAQCQAA="(可能是C2通信密钥或标识)
3.3 C2通信机制
-
连接C2服务器:
- 域名:service-h87kxr41-1319584009.bj.tencentapigw.com.cn
- 使用HTTPS协议(伪装成正常API网关)
-
通信过程:
- 发送POST请求
- 上传解密出的字符串"LRcOSGV0ewEDBAQCQAA="
- 接收服务器返回的加密数据
-
数据处理:
// 分配内存接收数据 LPVOID payload_mem = VirtualAlloc(NULL, data_size, MEM_COMMIT, PAGE_READWRITE); // 读取加密数据 InternetReadFile(hRequest, payload_mem, data_size, &bytesRead); // 解密数据 decrypt_payload(payload_mem, data_size); // 设置内存为可执行 VirtualProtect(payload_mem, data_size, PAGE_EXECUTE_READ, &oldProtect); // 执行解密后的Payload ((void (*)(void))payload_mem)();
4. 反检测技术分析
4.1 沙箱逃逸技术
- 延迟执行(通过PING操作)
- 环境敏感行为(可能在沙箱中不执行关键代码)
- 多阶段加载(分离恶意组件)
4.2 静态分析对抗
- 字符串加密(所有关键字符串都动态解密)
- 代码混淆(插入大量无用指令)
- 非常规API解析(动态获取API地址)
4.3 动态分析对抗
- 创建互斥量"Yh-ioklsdf-san"(防止多实例)
- 网络通信加密(HTTPS+自定义加密)
- 分块传输Payload(避免一次性检测)
5. 威胁情报
- C2服务器:service-h87kxr41-1319584009.bj.tencentapigw.com.cn
- 互斥量:Yh-ioklsdf-san
- 关键字符串:LRcOSGV0ewEDBAQCQAA=
- 疑似Payload:基于分析可能是Cobalt Strike Beacon
6. 检测与防护建议
6.1 检测指标(IOC)
- 文件哈希(需获取样本后计算)
- 网络通信特征(特定域名和字符串)
- 进程行为(DS_Strore.exe异常行为)
6.2 防护措施
-
企业防护:
- 阻断与C2域名的通信
- 监控异常进程创建链(LNK→VBS→EXE)
- 检测VirtualAlloc+PAGE_EXECUTE_READWRITE模式
-
终端防护:
- 启用行为检测(非签名程序的内存操作)
- 限制脚本执行权限
- 监控异常互斥量创建
-
分析建议:
- 动态分析时模拟真实用户环境
- 重点关注网络通信后的内存操作
- 完整捕获多阶段Payload
7. 技术总结
该样本展示了现代恶意软件的典型特征:
- 多阶段加载:LNK→VBS→EXE→ShellCode→Payload
- 强对抗性:反沙箱、反调试、反静态分析
- 隐蔽通信:伪装成合法API请求
- 内存驻留:全程无文件落地操作(除初始阶段)
这种类型的攻击需要防御者采用深度防御策略,结合静态特征、行为分析和网络监控等多种手段进行防护。