DarkGate最新攻击样本攻击链详细分析
字数 1730 2025-08-03 16:48:18
DarkGate恶意软件攻击链分析与防御指南
1. DarkGate恶意软件概述
DarkGate是一款首次曝光于2018年的商业恶意软件加载器,具有以下特点:
-
功能特性:
- 下载文件并执行到内存
- 隐藏虚拟网络计算模块
- 键盘记录功能
- 信息窃取能力
- 权限提升功能
- 使用合法的AutoIt程序加载运行加密脚本
-
开发与分发:
- 由作者RastaFarEye开发
- 在俄语地下网络犯罪论坛推广出售
- 采用订阅模式,月费高达1.5万美元
- 持续更新,目前最新版本为V6(分析时版本为6.5.9)
2. 攻击链详细分析
2.1 初始感染阶段
-
初始载体:HTML文件
- 受害者打开恶意HTML文件
- 显示诱导性界面,引导用户点击"How to fix"按钮
-
CMD命令执行:
- 点击后执行预设的CMD命令
- 命令内容包含下载HTA文件的指令
2.2 下载与执行阶段
-
HTA样本下载:
- 从远程服务器下载恶意HTA文件
- HTA文件包含PowerShell脚本执行指令
-
PowerShell脚本执行:
- 从远程服务器下载恶意脚本
- 脚本功能:
- 创建隐藏目录
- 下载恶意压缩包
- 解压并执行其中的程序
2.3 AutoIt加载阶段
-
AutoIt执行:
- 通过合法的AutoIt3.exe程序加载script.a3x文件
- script.a3x文件特征:包含"AU3!EA06"标识
-
脚本解密与执行:
- 提取并解密AutoIt脚本中的恶意代码
- 在内存中加载执行解密出的ShellCode
2.4 恶意负载阶段
-
ShellCode分析:
- 动态调试获取相关函数地址
- 跳转执行解密出的Payload代码
-
Payload特性:
- Delphi编写的程序
- 编译时间被篡改
- 功能验证:
- 检测是否为人为执行(反沙箱技术)
- 获取系统信息(键盘布局、OS版本、磁盘空间等)
- 检查Delphi运行环境(查询注册表FPUMaskValue值)
2.5 DarkGate主体加载
-
内存解密:
- 读取并解密AutoIt脚本中的DarkGate主体程序
- 主体程序同样为Delphi编写,编译时间被篡改
-
持久化机制:
- 生成LNK快捷方式并设置自启动项
- LNK命令行通过加载器执行AutoIt恶意脚本
- 在指定目录下部署加载器和恶意脚本
2.6 恶意功能分析
-
安全软件检测:
- 扫描系统安全软件目录
- 收集主机系统目录数据
-
信息窃取功能:
- 键盘记录
- 剪贴板监控(特别关注bitcoin地址)
- 系统信息收集
-
C2通信:
- 与域名flexiblemaria.com通信
- 支持多种C2指令(具体指令可参考DarkGate文档)
3. 防御与检测建议
3.1 预防措施
-
用户教育:
- 警惕不明来源的HTML、HTA文件
- 不随意点击"修复"等诱导性按钮
-
系统加固:
- 禁用或限制AutoIt程序执行(如非必要)
- 限制PowerShell执行策略
- 监控注册表关键项修改(如Borland相关项)
3.2 检测方法
-
行为检测:
- 监控异常AutoIt进程启动
- 检测内存中加载ShellCode的行为
- 关注Delphi程序异常行为
-
IOC检测:
- 文件特征:AU3!EA06标识
- 网络特征:flexiblemaria.com等C2域名
- 注册表访问:HKEY_LOCAL_MACHINE\SOFTWARE\Borland\Delphi\RTL
-
沙箱检测:
- 注意反沙箱技术(人为执行检测)
- 监控程序对系统信息的过度收集
3.3 应急响应
-
隔离与清除:
- 检查并删除可疑LNK启动项
- 清除%AppData%等目录下的可疑文件
- 检查最近创建的隐藏目录
-
取证分析:
- 收集内存转储分析ShellCode
- 检查AutoIt脚本执行记录
- 分析网络连接记录(特别是与C2的通信)
4. 总结
DarkGate作为一款持续更新的商业恶意软件,具有高度模块化、强隐蔽性和持续演进的特点。防御此类威胁需要:
- 多层防护:从终端到网络的全方位防护
- 持续监控:针对新型攻击手法的持续监测
- 及时更新:保持安全防护系统的及时更新
- 安全意识:提高用户对新型攻击的识别能力
安全团队应密切关注DarkGate的更新动态,及时调整防御策略,以应对其不断演变的新型攻击手法。