原文链接:Gamaredon group grows its game
作者:知道创宇404实验室翻译组
研究人员发现,高度活跃的Gamaredon威胁组织在各种恶意活动中使用了未被记录的工具,其中一个是针对微软Outlook的VBA宏(使用电子邮件向受害者的Microsoft Office通讯簿中的联系人发送鱼叉式钓鱼邮件)。我们还进一步分析了Gamaredon工具,这些工具能够将恶意宏和远程模板注入到现有的Office文档中。
自2013年起Gamaredon组织开始活跃。CERT-UA和乌克兰其他官方机构的报告中证实了它曾对乌克兰机构发起了袭击。在过去的几个月里,这个群体的活动有所增加,不断有恶意邮件袭击他们目标的邮箱。这些电子邮件的附件是带有恶意宏的文档,在执行时会尝试下载多种不同的恶意软件变种。Gamaredon使用了许多不同的编程语言,从 c#到VBScript、批处理文件和c/c++。
Gamaredon使用的工具非常简单,旨在从受到威胁的系统中收集敏感信息并进一步传播。与其他APT组织不同的是,Gamaredon组织行为却非常高调。尽管他们的工具具有下载和执行更隐秘的任意二进制文件的能力,但该小组的主要重点却是在试图窃取数据的同时,在目标网络中尽可能快地传播。
背景
下图说明了Gamaredon运动中的典型折衷链
近期大众将重点放在冒充电子邮件以及它们所包含的下载器上,但该文关注的是部署在这些系统上的危害工具。
Outlook VBA模块
Gamaredon组织使用的程序包包括一个自定义Microsoft Outlook Visual Basic应用程序(VBA)。在调查恶意活动时,很少使用Outlook宏来分发恶意软件。
这个恶意代码包从一个VBScript开始,如果Outlook进程正在运行,它会首先终止该进程,然后通过更改注册表值来移除Outlook中VBA宏,保证运行环境的安全性。它还会将包含宏、恶意电子邮件附件以及在某些情况下将电子邮件发送到收件人列表的恶意OTM文件(Outlook VBA项目)保存到磁盘。
接下来,它用一个特殊的选项/altvba otm filename来重启Outlook,该选项加载 Gamaredonvba项目。在收到Application.Startup命令后,将执行恶意代码。他们运用这个模块以三种不同方式发送给:
- 受害者通讯录中的所有人
- 同一组织内的每个人
- 预定义目标列表
虽然未经受害者的同意而滥用受威胁的邮箱来发送恶意电子邮件并不是一项新技术,但我们认为这是攻击小组使用OTM文件和Outlook宏来实现的第一个公开记录的案例。
基于这个恶意VBA代码的“发送给所有联系人列表”行为,我们认为这个模块可能导致一些组织认为他们是Gamaredon的目标, 如可以通过此模块的操作来解释最近上传到VirusTotal的样本来对传统上不受Gamaredon攻击的区域如日本。
如图2所示,VBA代码将恶意文档附加到电子邮件(我们已经看到.docx和.lnk文件都被用作附件)。这些与Gamaredon最初的鱼叉式广告活动中使用的恶意附件的内容非常相似,下图显示了此恶意组件生成的电子邮件。
该电子邮件包含英语和俄语文本,但是如上图所示俄语编码存在问题,此问题在后续过程中得到了解决。
Office宏注入模块– CodeBuilder
我们分析了Gamaredon组织使用的恶意模块的不同变体,以将恶意宏或远程模板注入受感染系统的文档中。这是一种非常有效的在组织网络内横向移动的方式,因为文档在同事之间是共享的。同样,由于这些宏是在打开文档时是运行的,因此这是一种在系统上持久保存的好方法。
这些宏注入模块还具有篡改Microsoft Office宏安全设置的功能。因此,受影响的用户不知道他们在打开文档时会再次损害电脑工作站。我们已经看到了用两种不同语言实现的模块:C#和VBScript。
C#
像其他工具一样,此模块是在7z自解压存档中提供的。里面有一个受密码保护的RAR存档,其中包含一些文件。值得注意的是,有两个文本文件,一个用于Word,一个用于Excel,其中包含要插入目标文档中的恶意宏的VBA源代码,以及用于查找和破坏现有文档的.NET程序集。如图所示,程序集名称为CodeBuilder。
此.NET模块首先通过修改以下注册表值来减少各种文档类型的Office宏安全设置:
HKCU\Software\Microsoft\Office\
主要针对迭代Word、Excel和Office版本,然后扫描所有连接到系统驱动器上有效的Word和Excel扩展名文档。对于包含Windows安装的驱动器,它只扫描特定的位置(Desktop和Downloads文件夹),其他部分会整体扫描。恶意软件将每个找到的文档移动到AppData文件夹中,使用Microsoft.Office.Interop对象将恶意的Word或Excel宏插入其中,然后将文档移回到原始文件夹中。在我们分析的样本中,注入的宏是简单的下载器。
VBScript模块
该模块的VBScript版本与.NET类似。但区别在与它没有在现有文档中插入恶意宏,而是插入了远程模板引用。
这个VBScript模块也打包在一个自解压文件夹中,其中包含一个批处理文件和两个VBS文件,这些文件负责查看文档并向其中添加远程模板引用。
模块更新
有趣的是,Palo Alto Networks在2017年有关Gamaredon的文章中描述的一些自定义工具仍在更新和使用。目前有些与之相似,有些使用了编码语言进行了重写。在受损计算机上下载并安装的工具大致可以分为两类:下载器和后门。
下载器
他们的下载器有很多变体,其中大多数都是用C#或VBScript编写的。本节将仅介绍其两个最原始的变体。
C#编译器模块
该.NET可执行文件与Gamaredon组使用的工具类似,会将垃圾代码插入和字符串混淆,它的主体中包含下载程序的base64编码的源代码。使用内置的Microsoft.CSharp.CSharpCodeProvider类对该源代码进行解码并直接在系统上进行编译,它将生成的可执行文件放置在现有目录中,创建一个计划任务(该任务每10分钟启动一次)。如图所示:
GitHub项目模块
如图所示,此.NET可执行文件使用GitHub存储库获取并执行下载程序。
该存储库包含一个文件readme.txt(文件是base64编码的.NET下载程序可执行文件)。GitHub项目模块的作用是下载此文件,对其进行解码并执行。
后门–文件窃取者
虽然功能上存在一些变化,但是这些模块的主要目的是列举受感染系统上的所有文档,并将其上载到C&C服务器,这些文件窃取者可以从C&C服务器下载并执行任意代码。与Gamaredon使用的其他工具一样,它们具有四种不同的编码语言:C/C++、C#,批处理文件和VBScript。
C/C++
变体是此处描述的USBStealer模块的后继产品。尽管和现在的最新版本大不相同,但在整个模块开发过程中通过样本检查发现它们具有相同的源代码。
如:Harvesterx64.dll的64位DLL,该DLL于2019年6月编译,使用了大量的字符串,但在新版本中有两个改进之处。首先它通过Hash解析Windows API,其次它使用文本文件而不是SQLite数据库来跟踪哪些文件已经上传到C&C服务器。
该模块的行为非常简单:它在系统上扫描本地文件和可移动驱动器上的新Microsoft Office文档,并将其上载到C&C服务器。为了知道文档是否是新文档,该模块将一个上传到服务器的文件的MD5 Hash保存在一个文本文件中。这些MD5 Hash不是基于文件内容,而是基于文件名、文件大小和上次修改时间组成的字符串。模块的字符串存储在其.data节中,并使用简单的XOR密钥进行加密。它还具有从C&C服务器下载并执行任意代码的能力。
C#
这是C/C++版本的C#中重新实现。主要区别在于它还从受感染计算机中获取屏幕快照。如图所示,我们分析的版本具有五个名称的线程。
批处理文件和VBScript
此版本包含以批处理文件形式和VBScript编写的几个脚本。但是,最终目标是相同的:在系统中扫描敏感文档。主要机制是批处理文件,该文件在系统上搜索Word文档(.doc)并将其名称存储在文本文件中。
该软件包还包含名为1.log,2.log,3.log,4.log和5.log的加密脚本文件。一旦解密,这些脚本就会成为模糊的VBScript下载器,它们可以下载并执行任意代码。
网络基础设施
Gamaredon为其C&C服务器使用许多不同的域,包括免费域和付费域。免费域名主要是来自No-IP的DDNS:hopto.org,ddns.net,myftp.biz,而付费域名是通过REG.RU注册商注册的,其中包括.fun,.site,.space,.ru,.website和.xyz TLD。
他们不断地更改其工具所使用的域,但主要是在少数ASN上。仔细分析研究发现他们针对少数受害者使用了单独的域。检查ESET的GitHub帐户以获取Gamaredon使用的广泛域列表。
执行质量
我们能够收集Gamaredon小组在整个竞选活动中使用的大量不同示例的恶意脚本、可执行文件和文档。我们注意到其中的一些错误(脚本中的)。虽然不知道这些错误或疏忽背后的确切原因,但是该小组生产的样本数量及其迅速发展程度可以解释这一点。一些C#编译器模块示例中包含的源代码保留了注释、Outlook VBA模块生成的电子邮件中的俄语编码错误,这些事实表明,在发布它们的许多工具并使用它们之前,没有进行严格的审查或测试。
尽管这些错误可能会降低工具的整体效率,但该小组的快速执行和适应能力也具有一些优势。攻击的数量可能使目标处于不断恐惧的状态。
而且GitHub项目使我们可以快速了解他们的工具开发状况。最初的版本没有混淆的迹象,后来开发人员添加了不同的字符串混淆垃圾代码,使分析变得更加困难。
在持久性方面,使用了几种不同的技术,但最常见的技术是计划任务、自动运行注册表项和启动文件夹。尽管这些技术非常简单且已为人所知,但Gamaredon的策略是尝试在每个系统上安装多个脚本和可执行文件,并不断对其进行更新。
结论
尽管大多数工具都非常简单,但Gamaredon也能够部署一些新颖性的工具,如Outlook VBA模块。从长远来看,这对于一个有能力的组织来说是绝无仅有的。Gamaredon拥有的各种工具可以非常有效地对机器进行指纹识别并了解可用的敏感数据,然后在整个网络中传播,这可能是部署更隐蔽的有效载荷的一种方法。
IoCs
MITRE ATT&CK techniques
本文由 Seebug Paper 发布,如需转载请注明来源。本文地址:https://paper.seebug.org/1245/