DarkUniverse:神秘的APT框架

来源:岁月联盟 编辑:猪蛋儿 时间:2020-03-16

2017年4月,ShadowBrokers发布了知名的Lost in Translation泄露事件,其中含有一个可以在被黑的系统中检查其他APT的踪迹。

2018年,研究人员发现了描述该脚本第27个函数的APT,研究人员将其命名为DarkUniverse。该APT组织活跃了至少8年,从2009年到2017年。由于有很高的代码重合,研究人员有理由相信DarkUniverse是ItaDuke的一部分。ItaDuke是从2013年开始活跃的一个黑客组织,使用PDF漏洞利用来释放恶意软件,用Twitter账号来保存C2服务器URL。
技术细节
感染向量
鱼叉式钓鱼攻击是一种常用的恶意软件传播方式。为了获得受害者的关注,研究人员为每个受害者准备了一封信,并弹窗来打开一个附件恶意office文档。
每个恶意软件都是在发送之前编译的,并包含最新的恶意软件可执行文件版本。因此,该框架是从2009年到2017年都在进化,而最后发布的版本与最初发布的版本是完全不同的,所以本文只分析2017年使用的最新版本。
文档中嵌入的可执行文件可以从中提取出2个恶意文件,updater.mod和glue30.dll,然后将这两个文件保存在恶意软件的工作目录下——%USERPROFILE%/AppData/Roaming/Microsoft/Windows/Reorder。
然后,恶意软件会将合法的rundll32.exe可执行文件复制到相同目录中,然后用它来运行updater.mod库。
updater.mod模块
该模块是以只有一个导出函数callme@16的动态链接库实现的。该模块负责像为C2服务器提供通信、提供恶意软件完整性和驻留截至、管理其他恶意软件模块等任务。
驻留截至是由一个链接文件提供的,updater.mod会将该链接文件放在开始菜单文件夹中,以确保恶意软件在重启后会执行。如果链接文件被破坏了,updater.mod模块就会将其复原。
C2通信
在该攻击活动中,C2服务器主要位于mydrive.ch的云存储上。对每个受害者来说,操作人员创建了一个账号,并将其他的恶意软件模块和含有命令的配置文件来执行。执行后,updater.mod模块会连接到C2服务器并执行以下动作:
下载命令文件到工作目录;
上传其他恶意模块收集和准备的文件到C2服务器。这些文件位于工作目录中‘queue’ 或‘ntfsrecover’中的文件夹中。目录中的文件扩展为.d或.upd,扩展是根据是否上传到服务器来决定的。
下载其他的恶意软件模块:
dfrgntfs5.sqt – 负责从C2服务器执行命令;
msvcrt58.sqt – 负责窃取邮件凭证和邮件的模块;
zl4vq.sqt – dfrgntfs5使用的合法zlib库;
%victim_ID%.upe –  dfrgntfs5的可选插件。但研究人员无法获取该文件。
所有的恶意软件模块都是由定制的算法加密的:

C2账号的凭证保存在位于注册表中的配置数据中,但updater.mod模块也会保存一个可执行文件中的加密字符串的副本。配置文件还会指定updater.mod连接C2的频率,支持主动模式和部分主动模式。
注册表中的恶意软件配置
恶意软件配置数据保存在SOFTWARE/AppDataLow/GUI/LegacyP 记录中的恶意软件配置中。不同的值和表示的意思如下所示:

glue30.dll和msvcrt58.sqt模块
glue30.dll恶意软件模块提供了键盘记录功能。updater.mod模块使用Win API函数SetWindowsHookExW来为键盘安装hook,并注入glue30.dll到获取键盘数据的进程中。然后,glue30.dll会加载和开始拦截每个hook进程的输入。
msvcrt58.sqt模块会拦截未加密的POP3流量来收集邮件会话和受害者的凭证。该模块会寻找以下进程中的流量:
outlook.exe;
winmail.exe;
msimn.exe;
nlnotes.exe;
eudora.exe;
thunderbird.exe;
thunde~1.exe;
msmsgs.exe;
msnmsgr.exe.
恶意软件会分析拦截的POP3流量,然后发送结果到主模块来上传到C2服务器。这是通过hook以下网络相关的Win API函数来完成的:
ws2_32.connect;
ws2_32.send;
ws2_32.recv;
ws2_32.WSARecv;
ws2_32.closesocket.
dfrgntfs5.sqt模块
这是DarkUniverse框架最重要的功能模块。它会处理来自C2的命令,如下表所示:

结论
DarkUniverse是使用了至少8年的一个框架。恶意软件中含有收集所有种类与用户和受感染系统相关的所有模块。由于代码重叠,研究人员认为DarkUniverse的创建者和ItaDuke的活动有关。攻击者在该攻击活动的整个生命周期内保持更新,所以来自2017年的样本与2009年最初的样本是完全不同的。攻击者可能已经决定转向更加现代的方法并使用更主流的一些方法。