多个APT组织趁着俄乌乱局的掩护发起针对其他目标的攻击

2022-05-04 12:28:37 0 1376

CheckPointResearch (CPR) 观察到世界各地的高级持续威胁 (APT) 组织发起了新一拨活动,以冲突为诱饵的鱼叉式网络钓鱼电子邮件随处可见,根据目标和地区的不同,攻击者使用的诱饵从官方文件到新闻文章,甚至是职位公告。这些诱饵文档利用恶意宏或模板注入来获得目标组织的初始立脚点,然后发起恶意攻击。


对于网络攻击者来说,任何人们的事件,都可以成为他们发起攻击的一个理由。当然最近发生的地缘政治紧张局势也不例外。在过去一个月里,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 活动及其使用的工具进行监测。

关于作者

benben144篇文章230篇回复

评论0次

要评论?请先  登录  或  注册