DarkHydrus技术手段分析
一半人生 发表于 浙江 技术文章 2140浏览 · 2024-02-21 00:50

  DarkHyDrus有“黑暗之蛇”的别称,疑似来自于亚洲网络间谍组织,至少从2016年起就开始针对中东的政府机构和教育机构,该组织大力利用开源工具和定制有效负载进行攻击。

组件分析

Powershell

执行xx.iqy格式文件,下载releasenotes.txt

执行cmd调用Powershell下载winupdate.ps1,如下所示:

Powershell是经过压缩后的base64,如下所示:

解密后powershell如下所示:

反虚拟机,WMI 接口查询BIOS/VBOX/Vm等

检测物理内存以及Wireshark/Sysinternals进程


释放.bat和ps1,利用.bat执行OneDriver.ps1,如下所示:

OneDriver.ps1相对于本体只是减去了启动执行代码,创建OneDriver快捷方式,持久化。

  初始化网络配置,使用了自定义的DNS隧道,有效域名使用卡巴,微软等字符串,C2连接成功后,采集系统信息base64编码,通过DNS隧道发送服务器。

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

功能模块梳理

指令 功能
$fileDownload 上传指定内容
$importModule 将指定的PowerShell模块添加到当前脚本
$screenshot 代码中iex $command,不能确定为截屏
$command 运行powershell
$slp:\d+ 睡眠
$testmode DNS解析模块
$showconfig 载荷当前配置上传
$slpx:\d+ DNS请求时长设置
$fileUpload 下载payload写入本地

  通过.lqy载荷投递,触发web远程下载,Powershell进行主机感染,自定义DNS隧道C2命令控制,完成目标主机入侵。

Exe

函数并不从入口点执行,main函数之前执行shellcode,如下所示:

Tmep下创建文件,WinExec执行


释放Aspack加壳程序

是否需要提权,根据系统版保存结构体偏移。


注册表设置

内存数据解密


为每一个非光驱,已知磁盘设备创建单独的线程,用于递归遍历感染。

分发的线程两个感染动作,分别针对exe和rar


  Winrar.exe被重定向至temp目录下,重命名为{随机数}.exe,进行压缩包感染,解压后感染exe,重新打包,利用CreateProcess执行WinRar指令。

WinRar命令
%s X -ibck \"%s\" \"%s\\\
"%s M %s -r -o+ -ep1 \"%s\" \"%s\\*\"

exe感染,第一次写入shllcode,大小625字节,用于Api动态寻址,第二次写入样本本体,大小0x3A00,如下所示:


创建线程用于请求网络和文件下载,如下所示:

http://ddos.dnsnb8.net:799/cj//k1.rar

下载k1.rar到本地{随机数}.exe,FileMap将文件映射到内存,解密数据,WinExec执行文件。


Bat删除文件收尾工作

  Exe组件属于杀伤链第五个环节安装植入,蠕虫传播类型下载器,对于单纯下载器来说更具有危害,造成大量文件被恶意感染。

.Net

Net组件和Powershell功能一样,自定义DNS隧道代理进行C2通信。

DNS隧道

刷新DNS解析缓存,主机从本地域查找dns缓存,如果查询不到,请根域等待最终解析结果。

构造Windows nslookup解析指令,如下所示:


参数-q=TXT请求域名文本信息,域名格式{固定字符}.List.

固定格式,676f6f646c75636b.gogle.co



解析请求返回状态,成功失败

通过正则来匹配返回域纪录,DNS回包C2指令和数据,TXT请求会包含很多信息,如下所示

Address:\\s+(\\d+.\\d+.\\d+.\\d+)
Address:\\s+(([a-fA-F0-9]{0,4}:{1,2}){1,8})
Address:\\s+(([a-fA-F0-9]{0,4}:{1,4}[\\w|:]+){1,8})

循环遍历List可用域名,Wmi获取本地域,主机名,给予管理员权限获取域列表。

DNS包解析和构建,如下所示:

magic函数使用正则解析DNS查询类型MZ/TXT等回包,如下所示:

客户端解析DNS回应包C2指令和数据,保存command命令执行C2功能。

总结

  通过样本分析未发现加密传输,明文进行传输,DNS隧道流量检测根据上文分析细节取关键字符如List列表和C2检测,请求频率(睡眠)都可以流量检测。
  2017年思科Talos团队发现一起名为DNSMessenger的攻击,该恶意软件的所有命令与控制通信都经过DNS TXT类型查询和响应,上述攻击手法类似,通过TXT查询和响应,通过回包来穿透内网。

IOC

0c6cbf288d94a85d0fb9e727db492300
6267BBC7BEC7BEB134A92F6F9E523B4F
bd764192e951b5afd56870d2084bccfd
953a753dd4944c9a2b9876b090bf7c00
B3432432B49EFCC4B5AB1C00C84827AC
A164A2341F4F54DBD0FA881E5C067C1A
0 条评论
某人
表情
可输入 255