对于网络攻击者来说,任何人们的事件,都可以成为他们发起攻击的一个理由。当然最近发生的地缘政治紧张局势也不例外。在过去一个月里,CheckPointResearch(CPR)观察到世界各地的高级持续威胁(APT)组织发起了新一拨活动,以冲突为诱饵的鱼叉式网络钓鱼电子邮件随处可见,根据目标和地区的不同,攻击者使用的诱饵从官方文件到新闻文章,甚至是职位公告。这些诱饵文档利用恶意宏或模板注入来获得目标组织的初始立脚点,然后发起恶意攻击。

以冲突为诱饵不仅限于特定地区或APT组织,从拉丁美洲、中东、亚洲,都有这种攻击的身影。在本文中,CPR将概述不同APT组织利用正在进行的俄乌冲突来提高其活动效率的几项活动。CPR将讨论这些运动的受害者,所使用的策略,并提供对观察到的恶意有效载荷和恶意软件的技术分析,这都是专门为这种网络间谍活动设计的。

发生在拉丁美洲地区的ElMacheteAPT

目标:金融和政府部门

卡巴斯基在2014年首次公开披露ElMachete,这是一个专注于拉丁美洲目标的西班牙语威胁组织,该组织的活动可以追溯到2010年。该组织的活动多年来一直持续,采用使用政府主题文件作为诱饵,以及使用与当前政治局势相关的诱饵。

就在3月中旬,有研究人员发现ElMachete向尼加拉瓜的金融组织发送鱼叉式网络钓鱼电子邮件,并附上一份名为“乌克兰新纳粹政权的黑暗计划”的Word文件。该文件包含由俄罗斯驻尼加拉瓜大使亚历山大·霍霍利科夫撰写并发表的一篇文章,该文章从克里姆林宫的角度讨论了俄乌冲突。

包含一篇关于俄乌冲突的文章的Lure文件,由ElMacheteAPT发送给尼加拉瓜金融机构

感染链

文档中的恶意宏会释放一个名为~djXsfwEFYETE.txt的base64编码文件,并使用内置的certutil.exe将其解码为~djXsfwEFYETE.vbe,这是一个编码的VBScript文件。然后,宏启动wscript.exe以执行.vbe文件,其主要目标是使用名为Adobe.msi的远程托管.msi文件执行msiexec.exe,该文件将自身伪装成Adobe软件。

感染链主要组成部分的架构

Adobe.msi安装程序最初会将恶意软件相关的文件安装到用户TEMP目录的子文件夹中。随后,恶意软件将自身从TEMP目录复制到工作目录C:\ProgramData\PD,该目录被设置为隐藏,以确保用户在文件资源管理器中打开ProgramData文件夹时不会看到它。该恶意软件主要是用Python编写的,并带有两个不同的Python解释器,它们也伪装成与Adobe、AdobeReaderUpdate.exe和ReaderSetting.exe相关的可执行文件。该恶意软件通过一个每5分钟运行一次的计划任务来建立持久性,伪装成名为UpdateAdobeReader的AdobeReader更新任务。该任务执行AdobeReaderUpdate脚本,这是开源Loki.Rat的自定义版本,自2020年以来一直被ElMacheteAPT组织用于正在进行的活动。

C&C通讯

该恶意软件没有硬编码的C&C服务器地址。相反,它依赖于一个名为license.dll的文件,该文件包含一个指向BlogSpot网页的Base64编码URL。该页面似乎包含与安全相关的内容并讨论了非对称加密。但是,BlogSpot页面中嵌入了另一个base64字符串,其中包含恶意软件最终将使用的编码C&CURL。为了找到相关的URL,恶意软件知道在两个6-7个字符长的硬编码字符串之间进行搜索。它们倾向于遵循/AAAA/和*AAAA/的模式,其中AAAA代表4-5个字母的字符串。

Adobe.msi使用的BlogSpot页面,C&C服务器在/noul/和*noul/之间进行编码

这种检索C&C服务器的方法有几个优点。最重要的是,它很容易让攻击者通过连接到已知且看似良性的服务器(blogspot.com)的子域来使初始连接看起来无害。此外,攻击者可以非常轻松地切换C&C基础设施,而无需将新代码重新部署到受害者的设备上。

数据以一种模糊但一致的JSON格式提交给C&C服务器:

Adobe恶意软件使用的d4字段中的标签是Utopiya_Nyusha_Maksim,ElMachete自2020年以来一直在使用该标签。

Loki.Rat后门

每个Python脚本文件都使用base64编码进行了模糊处理。然而,一旦从base64解码,代码就相对简单,只有很少的变量名混淆。

去除模糊处理的AdobeReaderUpdate脚本

恶意软件功能包括:

键盘记录——键盘记录器作为单独的进程和脚本运行:ReaderSetting.exePython解释器用于运行名为SearchAdobeReader的单独文件;

收集存储在Chrome和Firefox浏览器中的凭据;

上传和下载文件;

收集有关每个驱动器上文件的信息——收集具有以下扩展名的所有文件的文件名和文件大小:.doc、.docx、.pdf、.xlsx、.xls、.ppt、.pptx、.jpg、.jpeg、.rar、.zip、.odt、.ott、.odm、.ods、.ots、.odp。除了已经删除的(系统,临时)文件夹。

截屏;

收集剪贴板数据;

执行命令;

命令和有效载荷

攻击者首先发送几个命令来了解受感染的设备是否足够有趣以继续进行:这些命令执行屏幕截图、键盘记录和列出系统上的文件。如果认为值得,攻击者会执行命令,通过msiexec.exe下载并安装另一个恶意软件JavaOracle.msi。

与Adobe.msi类似,JavaOracle.msi安装基于Python的恶意软件并使用计划任务进行持久性。然而,Python脚本并非基于Loki.Rat后门,尽管它们通过Libs\site-packages\Java目录中的模块提供了一些类似的功能。观察到该恶意软件并行启动多个Python解释器,每个解释器运行不同的模块。Python可执行文件伪装成JavaHosts.exe、JavaExt.exe和JavaAdd.exe,并且攻击者还使用这些Python“clones”来根据进程名称检查某个脚本/模块是否正在运行。这些模块包括以下功能:

从C&C服务器(GAME模块)下载有效载荷-代码暗示有效载荷应为.exe或.msi文件。有效载荷被写入目录C:\ProgramData\ControlD\,它设置为具有系统和隐藏属性的文件夹。

键盘记录器(TIME模块)——这与Adobe.msi有效载荷附带的类似,但它从不写入磁盘。相反,它将键盘记录器数据直接发布到C&C服务器。

BOX模块——它遍历系统中的文件并上传小于5MB的感兴趣的文件,编码为base64。该模块首先通过打开到google.es的TCP套接字来检查连接性。如果该站点不可访问,则脚本退出。

屏幕截图(LIST模块)–该模块将屏幕截图保存到-shopt.png中的伪装成Microsoft的目录中,即%APPDATA%\Microsoft\ControlDesktop\。然后它将屏幕截图上传到C&C服务器并继续删除该目录中的所有PNG文件。与BOX类似,它最初检查是否可以打开到google.ru的TCP套接字。如果失败,则脚本退出。

剪贴板窃取程序(扫描模块——将数据直接发布到C&C服务器,无需将数据写入磁盘。在此之前,它会检查它是否可以打开到google.ru的TCP连接。

JavaOracle.msi文件中的恶意软件似乎使用了新的硬编码标签Foo_Fighters_Everlong。

JavaOracle代码窃取剪贴板内容并使用自定义标签将数据发布到C&C

尽管自定义的电子邮件漏洞针对的是尼加拉瓜的一家金融机构,但证据表明这是一场更大的活动的一部分,该活动也针对委内瑞拉的政府对象。从攻击者在受感染网络中执行的活动来看,整个活动的目的被视为网络间谍活动,与同一攻击组织先前披露的活动一致。这表明ElMacheteAPT组织在TTP略有变化的情况下继续运作,即使在研究人员发布了该组织使用的恶意软件的技术描述和危害指标之后。

以能源部门为目标

Lyceum是活跃在中东和非洲的伊朗APT组织,自2017年以来一直以国家战略重要部门为目标进行网络间谍活动。三月中旬,一家以色列能源公司收到一封电子邮件,地址是inews-reporter@protonmail[。与“俄乌冲突”的主题相呼应。这封电子邮件包含了一些从公共媒体来源拍摄的照片,并包含指向news-spot[.]live域上托管的一篇文章的链接:

由Lyceum组织发送的利用俄乌冲突主题的诱饵电子邮件

电子邮件中的链接指向一份文件,其中包含《卫报》发表的文章:

包含《卫报》关于俄乌冲突文章的诱饵文件

该域名还保存着一些与俄乌冲突有关的恶意文件,比如大西洋理事会(TheAtlanticCouncil)2020年一篇关于俄罗斯核武器的文章的副本,以及一则关于乌克兰“提取/保护机构”(Extraction/ProtectiveAgent)特工的招聘广告:

LyceumAPT组织使用的俄乌冲突相关诱饵文件

感染链

关闭文档时,恶意Office文档会执行宏代码。该宏对嵌入在文档中的可执行文件进行去混淆处理,并将其保存到%APPDATA%\Microsoft\Windows\StartMenu\Programs\Startup\目录中。通过使用这种方法,有效载荷不会直接由Office文档执行,而是会在下次重新启动计算机时运行。

作为更广泛的Lyceum活动的一部分,我们还观察到了不同的可执行文件。这些是带有PDF图标的可执行文件,而不是文档:

Lyceum感染链的两种变体:与RU-UA冲突(上)和与伊朗(下)相关的诱饵

所有可执行文件的编写方式略有不同,但主要思想是相同的:首先,滴管提取作为资源嵌入的诱饵PDF文件并在后台打开它,并且不会被受害者注意到,然后滴管下载并执行有效载荷。我们确定了三类滴管:

.NETDNS滴管——用于释放.NETDNS后门:

.NET滴管打开诱饵PDF并下载有效载荷

.NET TCP滴管——释放.NET HTTP后门变体,并添加一个计划任务来运行它。

Golang滴管——将Golang后门放入Startup文件夹和Public\Downloads文件夹。此外,它会将PDF文件(有关伊朗网络威胁的报告)放到Public\Downloads文件夹并执行它。打开PDF报告后,滴管最终从Public\Downloads文件夹执行Golang后门。

Golang释放程序的代码片段,它释放了一个Golang后门和一个名为“伊朗网络威胁”的PDF报告。

根据样本的不同,可以从网上下载被释放的文件,也可以从滴管本身提取这些文件。

有效载荷

每个滴管都有自己的有效载荷类型。我们观察到部署了以下后门:

.NETDNS后门

.NETDNS后门是名为DnsDig的工具的修改版本,在frm1中添加了使用HeijdenDNS和DnsDig功能的代码。

原始DnsDig工具(左)与修改后的DnsDig(添加frm1)

后门使用DNS隧道与其C&C服务器进行通信,并能够下载/上传文件并执行命令。

.NET TCP后门

后门程序使用原始TCP套接字与C&C通信,并在此基础上实现自己的通信协议。每个示例都包含一个配置,定义了它应该如何与C&C通信,包括分隔符、TCP端口和命令类型到数字的映射:

.NET TCP后门的配置片段

尽管恶意软件包含用于C&C通信的配置,但它仍然在代码本身中使用硬编码值,而不是配置常量。这表明该恶意软件可能仍在积极开发中。

此后门的功能包括:

执行命令;

截屏;

文件/目录列表;

已安装的应用程序列表;

上传/下载/执行文件;

Golang HTTP后门

用Golang编写的HTTP后门的执行包含3个阶段,它们在一个循环中发生:

第1阶段——连接检查。该恶意软件根据用户名的MD5哈希值为受害者生成一个唯一ID。然后它向C&C服务器的URI/GO/1.php发送一个空的HTTP POST请求。如果服务器以OK响应,则后门继续进入下一个阶段。

第2阶段——受害者登记。在此阶段,恶意软件通过POST请求向URI/GO/2.php发送受害者的基本详细信息,以在攻击者的C&C服务器中注册受害者。

第3阶段——命令检索和执行。首先,恶意软件向URI/GO/3.php发送HTTP POST请求以获取执行命令。与我们描述的其他后门一样,后门支持允许它下载/上传文件和执行shell命令的命令。

每个执行阶段Golang HTTP后门的网络流量

攻击目标分析

除了以色列能源部门的目标之外,在寻找与此次攻击相关的文件和基础设施时,CPR观察到一些从沙特阿拉伯上传到VirusTotal(VT)的工件。尽管这些工件包含与伊朗有关的漏洞,但在相关基础设施上发现的其他文件表明,该组织可能也在沙特阿拉伯使用了与俄乌冲突有关的诱饵。

除了明确的受害者外,其他表明该活动来自LyceumAPT组织的指标包括:

使用Heijden.DNS开源库,Lyceum在之前的攻击中使用了该库。这一次,攻击者没有混淆库名称,而是修改了一个名为DnsDig的工具,该工具使用Heijden.DNS;

在以前的Lyceum活动中广泛使用的C&C通信中的DNS隧道技术;

基础设施中的重叠,例如与本次活动中的C&C在同一网络中托管在同一ASN上的已知LyceumC&C服务器,以及使用相同的域注册商,例如Namecheap;

使用Protonmail电子邮件地址将恶意电子邮件发送到其目标或注册域。

从发现的时间戳工件和恶意域注册来看,这个特定的活动已经运行了几个月。采用更相关的诱饵和不断更新的恶意软件表明,Lyceum组织将继续进行和调整他们在中东的间谍活动。

巴基斯坦对象

SideWinder是一个疑似印度的APT组织,主要关注巴基斯坦和中国政府组织。SideWinder的恶意文件也利用了俄罗斯与乌克兰的冲突,于3月中旬被上传到VT。从内容来看,预定目标是巴基斯坦对象;诱饵文件包含伊斯兰堡巴赫里亚大学国家海洋事务研究所的文件,标题为“聚焦俄乌冲突对巴基斯坦的影响”。

SidewinderAPT提供的与俄乌冲突相关的诱饵文件

此恶意文件使用远程模板注入。当它被打开时,文档从一个参与者控制的服务器检索一个远程模板。下载的外部模板是一个RTF文件,该文件利用了CVE-2017-11882(方程式编辑器)漏洞。当漏洞被利用时,它会释放并执行1.a包,其中包含混淆的JavaScript。Sidewinder活动TTP在过去几年中的功能并没有发生改变。

然而,值得一提的是,典型的SideWinderAPT有效载荷是基于aaaaa.NET的信息窃取程序,最初称为“SystemApp.dll”,能够收集系统信息、从受感染设备中窃取文件并执行命令。自2019年初以来,该信息窃取程序已在该组织的间谍活动中进行了细微修改。

总结

本文讲述了一些APT组织试图滥用对俄乌冲突事件。由于其中一些活动包含以前未公开的技术细节或更新的恶意软件,CPR研究人员在附录中包含了Yara规则,这有助于对这些APT活动及其使用的工具进行监测。