APT-C-08(蔓灵花)是一个拥有南亚地区政府背景的APT组织,近几年来持续对南亚周边国家进行网络攻击活动,攻击目标涉及政府、军工、高校和驻外机构等企事业单位组织。
蔓灵花组织通过投递内部携带有chm恶意文档的压缩包附件的钓鱼邮件,诱导用户打开其中的chm文档,利用计划任务周期性回传受影响用户的机器名及用户名,当远端服务器验证回传信息后,通过响应请求将后续恶意脚本下发给受影响机器并执行,从而实现后续攻击组件的下发与执行。
其攻击流程图如下图1-1所示:
在本次的攻击活动中,我们捕获到了蔓灵花组织使用的新型的攻击组件,分别是Shellcode加载器与文件收集器。因其都有pdb路径,故我们将其命名为KugelBlitz_ShellCode_Loader与Kiwi2.0。
同时,我们获取到了蔓灵花组织下发的后续恶意脚本,如下图所示:
该脚本将通过curl从远端服务器上下载dune64.bin和shl.tar.gz,利用系统程序tar将shl.tar.gz包解压,且执行时传入命令行参数为dune64.bin。恶意样本shl.exe同样带有pdb,其实际为ShellCode加载器——即加载远端下载的dune64.bin。
MD5 | fd5f2cf4b8df27f27dc2e6bddc1a7b2e |
路径 | c:\programdata\kiwizig.exe |
类型 | PE EXE64 |
PDB | X:\Resource\VSRepo2\Kiwi2.0\Kiwi\x64\Release\Kiwi.pdb |
该样本属于文件信息收集器,在样本启动后首先将会创建命令行互斥量“rabadaisunique”以防止多开,在执行中动态解密相关字符串,其解密算法采用字符串反转+变种凯撒密码的组合。
该样本获取了当前机器名与用户名,接着打开文件C:\ProgramData\date.txt读取其内容,该内容将会设定之后收集文件信息时指定要收集的文件时间范围。删除文件C:\ProgramData\winlist.log。
之后开始遍历查找C:\users\用户名\AppData\Roaming\Microsoft\Windows\Templates目录下文件及遍历整个驱动器收集文件信息,其主要策略为:
.z7 | .txt | .doc | .docx | .xls |
.xlsx | .ppt | .pptx | .pdf | .rtf |
.jpg | .zip | .rar | .apk | .neat |
.err | .eln | .ppi | .er9 | .azr |
.pfx | .ovpn |
接着将收集到的文件路径、文件最后修改时间以一行一个的格式写入文件C:\ProgramData\winlist.log,然后连接ebeninstallsvc[.]com:80,将上述收集到的文件信息及其文件内容回传到远端服务器上,回传地址为:“http://ebeninstallsvc[.]com/uplh4ppy.php?mn=机器名_用户名”
上传完成后,将该文件路径和文件最后修改时间写入C:\ProgramData\uprise.log文件中。另外值得注意的是,在该样本中有关的错误日志会写入文件C:\ProgramData\err.txt中。
MD5 | 88c9cfcf76a94c34b85eb1f07b197ffe |
路径 | c:\programdata\shl.exe |
类型 | PE EXE64 |
PDB | C:\Users\DOMS\KugelBlitz\VSRepos\DEV\ShellCode_Loader\x64\Release\ShellCode_Loader.pdb |
该样本属于Shellcode加载器,其工作依赖命令行参数。该样本启动后会从命令行参数中打开读取指定的文件,并申请内存执行。
在本次攻击活动中,我们捕获到的攻击载荷多为开源远控Havoc,其载荷配置如下所示:
通过投递chm文档诱导用户打开是蔓灵花组织惯用的“敲门”手法,在回传URL方面与历史依旧高度相似,依然采用将机器名与用户名用‘_’分割。
在持久化方面,依然会通过chm文档内嵌恶意命令来实现,在计划任务中将受影响用户的机器名和用户名回传,并下发恶意脚本执行,在恶意脚本中又利用诸如curl、tar等系统命令来下载执行恶意组件。
基于对本次报告中提到的攻击流程进行分析,我们认为可以从以下几个方向排查设备是否存在被感染的痕迹:
ac808a0f7eaea2b267e68b56ec868d60
C2&URL: