样本分析-DarkComet远控木马
字数 2012 2025-08-22 12:23:18

DarkComet远控木马技术分析与防御指南

1. DarkComet概述

DarkComet是一种功能强大的远程访问木马(RAT),具有以下主要特征:

  • 隐蔽运行:以隐蔽方式在受害者系统中运行
  • 信息窃取:收集系统数据、用户凭据、密码等敏感信息
  • 持久控制:允许攻击者长期控制受感染设备
  • 扩展功能:可安装其他恶意软件或将设备纳入僵尸网络
  • 防御规避:能够禁用防病毒软件等安全功能

传播方式

  • 与免费软件捆绑分发
  • 伪装成电子邮件附件
  • 利用网站软件漏洞攻击

2. 样本行为分析

2.1 规避检测技术

文件属性修改

"C:\Windows\System32\cmd.exe" /k attrib "C:\Users\admin\AppData\Local\Temp\jPWRwWFD.exe" +s +h
  • 使用attrib命令添加系统(+s)和隐藏(+h)属性
  • 目的:掩盖恶意文件的存在,避免被用户发现

进程权限提升

  • 通过修改进程权限获取更高系统权限
  • 便于执行需要特权的恶意操作

2.2 文件释放与执行

典型释放路径

C:\Users\admin\Documents\MSDCSC\msdcsc.exe
  • 释放文件与原文件相同,实现多位置启动
  • 增加清除难度,确保持久性

2.3 信息收集功能

硬件配置收集

  • 使用GetCurrentHwProfileA()获取硬件配置文件
  • 收集HWID(硬件唯一标识符)
  • 检测坞站状态(dwDockInfo字段)

系统时间与位置

  • 获取设备日期和时间
  • 查询注册表获取地理位置设置:
    \REGISTRY\USER{SID}\Control Panel\International\Geo\Nation
    

3. 数据处理机制

3.1 数据解析函数

核心函数sub_4735E8负责:

  • 管理恶意软件资源
  • 处理关键数据元素:
    • C2(命令与控制)域信息
    • 用户SID(安全标识符)
    • 互斥量值(确保单实例运行)

3.2 DARKCOMET数据结构

样本中包含的典型数据结构:

#BEGIN DARKCOMET DATA --
MUTEX ={ DC_MUTEX-D1SPNDG }
SID ={ Sazan }
FWB ={ 0 }
NETDATA ={ 8 .tcp.eu.ngrok.io:27791 }
GENCODE ={ fKTZRKdv0Nij }
INSTALL ={ 1 }
COMBOPATH ={ 7 }
EDTPATH ={ MSDCSC \\ msdcsc.exe }
KEYNAME ={ MicroUpdate }
EDTDATE ={ 16 /04/2007 }
PERSINST ={ 0 }
MELT ={ 0 }
CHANGEDATE ={ 0 }
DIRATTRIB ={ 6 }
FILEATTRIB ={ 6 }
FAKEMSG ={ 1 }
EF ={ 1 }
MSGCORE ={{ 42696C67697361796172FD6EFD7A20332073616E6979652069E7696E64652079656E6964656E206261FE6C6174FD6C6163616B74FD722E2E2E }
MSGICON ={ 48 }
SH1 ={ 1 }
CHIDEF ={ 1 }
CHIDED ={ 1 }
PERS ={ 1 }
OFFLINEK ={ 1 }
#EOF DARKCOMET DATA --

关键字段解析

字段 说明
MUTEX 互斥量名称(DC_MUTEX-D1SPNDG)
NETDATA C2服务器地址(.tcp.eu.ngrok.io:27791)
EDTPATH 可执行文件路径(MSDCSC\msdcsc.exe)
KEYNAME 注册表项名称(MicroUpdate)
EDTDATE 文件创建日期(16/04/2007)
CHANGEDATE 是否修改日期(0=不修改)

4. 持久性机制

DarkComet采用多种技术确保在系统中的持久存在:

4.1 注册表修改

启动项添加

SOFTWARE\Microsoft\Windows\CurrentVersion\Run\MicroUpdate
  • 指向恶意可执行文件路径
  • 实现开机自启动

WinLogon修改

\REGISTRY\MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\UserInit
  • 确保用户登录时自动运行

4.2 文件属性保留

  • CHANGEDATE=0:不修改投放文件的原始创建日期
  • 避免引起怀疑,增强隐蔽性

5. 恶意行为API分析

5.1 用户输入模拟

鼠标控制

  • 使用mouse_event函数模拟:
    • 鼠标移动
    • 按钮点击

键盘模拟

  • 使用keybd_event函数模拟键盘输入
  • 可在用户不知情下执行操作

5.2 键盘记录功能

键盘类型检测

GetKeyboardType(0)
  • 返回7表示Unicode键盘
  • 适应不同键盘布局

按键状态捕获

  • 获取256个虚拟键的状态
  • 使用VkKeyScanA(ch)将字符转换为虚拟键码
  • 精确记录用户输入

5.3 显示设备枚举

  • 使用EnumDisplayDevicesA获取显示设备信息
  • 可能用于屏幕截图或界面适配

5.4 剪贴板监控

  • 访问剪贴板数据,特别是0xE格式(EMF)
  • 窃取复制的图像或文本内容

6. 防御与检测建议

6.1 检测指标

文件特征

  • 常见路径:AppData\Local\TempDocuments\MSDCSC
  • 文件名:msdcsc.exe或随机名称(如jPWRwWFD.exe)
  • 具有系统+隐藏属性

进程特征

  • 可疑的cmd.exe调用attrib命令
  • 修改注册表启动项的行为

网络特征

  • 连接ngrok等隧道服务的异常流量
  • 与已知C2域(.tcp.eu.ngrok.io)通信

6.2 防护措施

  1. 权限控制

    • 限制用户权限,避免管理员权限滥用
    • 监控注册表敏感位置修改
  2. 行为监控

    • 检测异常的文件属性修改
    • 监控键盘记录和屏幕捕获行为
  3. 网络防护

    • 阻止与ngrok等隧道服务的异常连接
    • 监控异常外发数据
  4. 终端防护

    • 保持防病毒软件更新
    • 启用行为检测功能
  5. 用户教育

    • 警惕不明来源的软件和邮件附件
    • 定期检查系统启动项

7. 分析工具推荐

  1. 静态分析

    • IDA Pro/Ghidra:逆向分析二进制
    • PEiD/Exeinfo PE:检测加壳情况
  2. 动态分析

    • Process Monitor:监控文件/注册表操作
    • Wireshark:分析网络流量
    • API Monitor:跟踪API调用
  3. 内存分析

    • Volatility:检测内存中的恶意代码
  4. 行为分析

    • Cuckoo Sandbox:自动化恶意行为分析

通过全面了解DarkComet的技术细节和防御方法,可以有效提升对此类远控木马的检测和防护能力。

DarkComet远控木马技术分析与防御指南 1. DarkComet概述 DarkComet是一种功能强大的远程访问木马(RAT),具有以下主要特征: 隐蔽运行 :以隐蔽方式在受害者系统中运行 信息窃取 :收集系统数据、用户凭据、密码等敏感信息 持久控制 :允许攻击者长期控制受感染设备 扩展功能 :可安装其他恶意软件或将设备纳入僵尸网络 防御规避 :能够禁用防病毒软件等安全功能 传播方式 与免费软件捆绑分发 伪装成电子邮件附件 利用网站软件漏洞攻击 2. 样本行为分析 2.1 规避检测技术 文件属性修改 : 使用 attrib 命令添加系统(+s)和隐藏(+h)属性 目的:掩盖恶意文件的存在,避免被用户发现 进程权限提升 : 通过修改进程权限获取更高系统权限 便于执行需要特权的恶意操作 2.2 文件释放与执行 典型释放路径 : 释放文件与原文件相同,实现多位置启动 增加清除难度,确保持久性 2.3 信息收集功能 硬件配置收集 : 使用 GetCurrentHwProfileA() 获取硬件配置文件 收集HWID(硬件唯一标识符) 检测坞站状态(dwDockInfo字段) 系统时间与位置 : 获取设备日期和时间 查询注册表获取地理位置设置: 3. 数据处理机制 3.1 数据解析函数 核心函数 sub_4735E8 负责: 管理恶意软件资源 处理关键数据元素: C2(命令与控制)域信息 用户SID(安全标识符) 互斥量值(确保单实例运行) 3.2 DARKCOMET数据结构 样本中包含的典型数据结构: 关键字段解析 : | 字段 | 说明 | |------|------| | MUTEX | 互斥量名称(DC_ MUTEX-D1SPNDG) | | NETDATA | C2服务器地址(.tcp.eu.ngrok.io:27791) | | EDTPATH | 可执行文件路径(MSDCSC\msdcsc.exe) | | KEYNAME | 注册表项名称(MicroUpdate) | | EDTDATE | 文件创建日期(16/04/2007) | | CHANGEDATE | 是否修改日期(0=不修改) | 4. 持久性机制 DarkComet采用多种技术确保在系统中的持久存在: 4.1 注册表修改 启动项添加 : 指向恶意可执行文件路径 实现开机自启动 WinLogon修改 : 确保用户登录时自动运行 4.2 文件属性保留 CHANGEDATE=0 :不修改投放文件的原始创建日期 避免引起怀疑,增强隐蔽性 5. 恶意行为API分析 5.1 用户输入模拟 鼠标控制 : 使用 mouse_event 函数模拟: 鼠标移动 按钮点击 键盘模拟 : 使用 keybd_event 函数模拟键盘输入 可在用户不知情下执行操作 5.2 键盘记录功能 键盘类型检测 : 返回7表示Unicode键盘 适应不同键盘布局 按键状态捕获 : 获取256个虚拟键的状态 使用 VkKeyScanA(ch) 将字符转换为虚拟键码 精确记录用户输入 5.3 显示设备枚举 使用 EnumDisplayDevicesA 获取显示设备信息 可能用于屏幕截图或界面适配 5.4 剪贴板监控 访问剪贴板数据,特别是0xE格式(EMF) 窃取复制的图像或文本内容 6. 防御与检测建议 6.1 检测指标 文件特征 : 常见路径: AppData\Local\Temp 和 Documents\MSDCSC 文件名: msdcsc.exe 或随机名称(如 jPWRwWFD.exe ) 具有系统+隐藏属性 进程特征 : 可疑的cmd.exe调用attrib命令 修改注册表启动项的行为 网络特征 : 连接ngrok等隧道服务的异常流量 与已知C2域(.tcp.eu.ngrok.io)通信 6.2 防护措施 权限控制 : 限制用户权限,避免管理员权限滥用 监控注册表敏感位置修改 行为监控 : 检测异常的文件属性修改 监控键盘记录和屏幕捕获行为 网络防护 : 阻止与ngrok等隧道服务的异常连接 监控异常外发数据 终端防护 : 保持防病毒软件更新 启用行为检测功能 用户教育 : 警惕不明来源的软件和邮件附件 定期检查系统启动项 7. 分析工具推荐 静态分析 : IDA Pro/Ghidra:逆向分析二进制 PEiD/Exeinfo PE:检测加壳情况 动态分析 : Process Monitor:监控文件/注册表操作 Wireshark:分析网络流量 API Monitor:跟踪API调用 内存分析 : Volatility:检测内存中的恶意代码 行为分析 : Cuckoo Sandbox:自动化恶意行为分析 通过全面了解DarkComet的技术细节和防御方法,可以有效提升对此类远控木马的检测和防护能力。