ESET 研究人员分析了该组织在 2022 年的几次活动中使用的一系列不断增长的 OilRig 下载器,以保持对特殊利益目标组织的访问(所有组织均位于以色列)。这些轻量级下载程序(我们将其命名为 SampleCheck5000 (SC5k v1-v3)、OilCheck、ODAgent 和 OilBooster)因使用多种合法云服务 API 之一进行 C&C 通信和数据泄露而闻名:Microsoft Graph OneDrive 或 Outlook API 以及Microsoft Office Exchange Web 服务 (EWS) API。
在所有情况下,下载者都使用 OilRig 运营的共享(电子邮件或云存储)帐户与 OilRig 运营商交换消息;同一个帐户通常由多个受害者共享。下载者访问此帐户以下载操作员暂存的命令和附加有效负载,并上传命令输出和暂存文件。
我们于 5 年 1 月发现了该系列中最早的 SC2021k (vXNUMX) 下载器,当时它被用于 OilRig 的外太空活动,记录在我们的 最近的博文。在当前的博文中,我们重点关注 OilRig 在 5 年开发的所有 SC2022k 后继产品,每隔几个月就会推出一个新版本;我们还将仔细研究这些下载器所采用的机制。我们还将这些下载器与其他使用基于电子邮件的 C&C 协议的 OilRig 后门进行了比较,这些后门今年早些时候由 趋势科技 (完美先生经理)和 赛门铁克 (电源交换)。
最后,这篇博文还扩展了我们的 LABScon 2023 演示,我们深入研究了 OilRig 如何保持对选定以色列组织的访问:本博文中研究的所有下载器都部署在之前受多个 OilRig 工具影响的网络中,这突显了 OilRig 持续针对相同组织的事实,并决心在受感染的网络中保持立足点。
这篇博文的要点:
- OilRig 在 2022 年积极开发并使用了一系列具有类似逻辑的下载器:三个新的下载器 – ODAgent、OilCheck、OilBooster – 以及更新版本的 SC5k 下载器。
- 下载程序使用各种合法的云服务 API 进行 C&C 通信和数据泄露:Microsoft Graph OneDrive API、Microsoft Graph Outlook API 和 Microsoft Office EWS API。
- 目标全部位于以色列,包括医疗保健部门的组织、制造公司、地方政府组织和其他组织。
- 所有目标此前均受到多个 OilRig 活动的影响。
归因
OilRig,也称为 APT34、Lyceum、Crambus 或 Siamesekitten,是一个网络间谍组织,至少自 2014 年以来一直活跃,并且 通常认为 总部设在伊朗。该组织的目标客户是中东政府和各种垂直行业,包括化学、能源、金融和电信。
OilRig 开展了 DNSpionage 活动 2018 和 2019,其目标是黎巴嫩和阿拉伯联合酋长国的受害者。 2019年和2020年,OilRig继续发起攻击 硬通行证 该活动利用 LinkedIn 来针对中东能源和政府部门的受害者。 2021 年,OilRig 更新了其 丹宝 后门并开始部署 鲨鱼, 米兰和 Marlin 后门,如 T3 2021 ESET 威胁报告的问题。 2022 年和 2023 年,该组织利用其新后门对以色列地方政府实体和医疗机构进行了多次攻击 太阳能和芒果。 2023 年,OilRig 以中东组织为目标 电力交换 和 完美经理先生 后门和相关工具来收集内部邮箱帐户凭据,然后利用这些帐户进行渗透。
根据以下指标,我们对 SC5k (v1-v3)、ODAgent、OilCheck 和 OilBooster 下载者的信任度很高:
- 目标:
- 代码相似点:
概述
2022 年 XNUMX 月,我们检测到一个新的 OilRig 下载器,我们根据其文件名将其命名为 ODAgent: ODAgent.exe。 ODAgent 是一个 C#/.NET 下载器,类似于 OilRig 的 马林后门,使用 Microsoft OneDrive API 进行 C&C 通信。与支持全面的后门命令列表的 Marlin 不同,ODAgent 的功能仅限于下载和执行有效负载以及窃取暂存文件。
ODAgent 在以色列一家制造公司的网络中被检测到 – 有趣的是,该组织此前也曾受到 OilRig 的影响 SC5k下载器,随后又在 2022 年 5 月至 XNUMX 月期间由另一个新下载程序 OilCheck 提供。SCXNUMXk 和 OilCheck 具有与 ODAgent 类似的功能,但使用基于云的电子邮件服务进行 C&C 通信。
在整个 2022 年中,我们观察到相同的模式在多个场合重复出现,新的下载器被部署在之前 OilRig 目标的网络中:例如,在 2022 年 5 月至 1 月期间,我们检测到 OilBooster、SC5k v2 和 SCXNUMXk vXNUMX 下载器以及 鲨鱼后门,所有这些都在以色列当地政府组织的网络中。后来,我们在一家以色列医疗保健组织的网络中检测到了另一个 SC5k 版本 (v3),该组织也是之前的 OilRig 受害者。
SC5k 是一个 C#/.NET 应用程序,其目的是使用 Office Exchange Web Services (EWS) API 下载并执行其他 OilRig 工具。新版本引入了一些更改,使分析师更难检索和分析恶意负载(SC5k v2),并引入了新的渗透功能(SC5k v3)。
图 1 中总结的所有下载程序都共享相似的逻辑,但具有不同的实现,并且随着时间的推移,复杂性不断增加,将 C#/.NET 二进制文件与 C/C++ 应用程序交替使用,改变用于 C&C 通信的云服务提供商,以及其他细节。
OilRig 仅针对有限数量的目标使用这些下载器,这些目标全部位于以色列,并且根据 ESET 遥测数据,所有这些下载器在几个月前就一直是其他 OilRig 工具的目标。由于组织访问 Office 365 资源很常见,因此 OilRig 的云服务驱动的下载器可以更轻松地融入常规网络流量中,这显然也是攻击者选择将这些下载器部署到一小群特别感兴趣的人的原因,多次成为受害目标。
截至撰写本文时,以下组织(如上所述,仅限以色列)受到影响:
- 一家制造公司(SC5k v1、ODAgent 和 OilCheck),
- 地方政府组织(SC5k v1、OilBooster 和 SC5k v2),
- 医疗保健组织 (SC5k v3),以及
- 以色列的其他身份不明的组织(SC5k v1)。
不幸的是,我们没有关于用于破坏本博文中讨论的目标的初始攻击向量的信息 - 我们无法确认攻击者是否能够成功地反复破坏相同的组织,或者他们是否设法保持他们的在网络中立足,部署各种工具。
技术分析
在本节中,我们对 OilRig 在 2022 年使用的下载器进行了技术分析,详细介绍了他们如何滥用各种云存储服务和基于云的电子邮件提供商进行 C&C 通信。所有这些下载器都遵循类似的逻辑:
- 他们使用共享(电子邮件或云存储)帐户与 OilRig 操作员交换消息;同一个帐户可以用于对付多个受害者。
- 他们访问此帐户以下载操作员暂存的命令和附加有效负载,并上传命令输出和暂存文件。
在我们的分析中,我们重点关注下载者的以下特征:
- 网络通信协议的细节(例如,Microsoft Graph API 与 Microsoft Office EWS API)。
- 用于区分共享帐户中不同攻击者上传和下载者上传的消息的机制,包括区分从各个受害者上传的消息的机制。
- 下载程序如何处理命令和有效负载的细节是从共享帐户下载的。
表 1 总结并比较了各个下载器如何实现这些特性;然后,我们分别详细分析第一个 (SC5k) 和最复杂的 (OilBooster) 下载器,作为滥用基于云的电子邮件服务和云存储服务的工具的示例。
表1. OilRig下载者滥用合法云服务提供商的主要特征总结
机制 |
SC5k v1 |
SC5k v2 |
SC5k v3 |
油检查 |
油助推器 |
OD代理 |
C&C协议 |
共享的 Microsoft Exchange 电子邮件帐户,草稿消息中嵌入的 C&C 通信。 |
共享 OneDrive 帐户;具有各种扩展名的文件以区分操作类型。 |
||||
网络通讯 |
微软Office EWS API |
Microsoft Graph (Outlook) API |
Microsoft Graph (OneDrive) API。 |
|||
受害者识别机制 |
sg 扩展属性 电子邮件草稿的设置为 . |
未知的扩展电子邮件属性设置为 . |
从 字段将电子邮件地址的用户名部分设置为 . |
电子邮件草稿的zigorat扩展属性设置为 . |
特定受害者的所有通信都会上传到名为的受害者特定子目录 . |
|
保持活动消息 |
类型 电子邮件草稿的扩展属性设置为 3;当前 GMT 时间位于电子邮件正文中。 |
电子邮件草稿的未知扩展属性设置为 0;电子邮件正文为空。 |
从 电子邮件草稿的字段设置为 @yahoo.com;当前 GMT 时间位于电子邮件正文中。 |
电子邮件草稿的类型扩展属性设置为 3;当前 GMT 时间位于电子邮件正文中。 |
名为的文件 /setting.ini. |
名为的文件 /info.ini. |
文件供下载 |
类型 电子邮件草稿的扩展属性设置为 1;附加文件的扩展名不是 .json. |
电子邮件草稿的未知扩展属性设置为 1;附加文件的扩展名不是 彬. |
从 电子邮件草稿的字段设置为 @outlook.com,消息类别设置为 文件. |
电子邮件草稿的类型扩展属性设置为 1;附件中有一个 biz是 延期。 |
一个带有 。的docx 扩展在 /项目 子目录。 |
中的非 JSON 文件 /o 子目录。 |
泄露的文件 |
类型 电子邮件草稿的扩展属性设置为 2;附件中有 .tmp1 延期。 |
电子邮件草稿的未知扩展属性设置为 2;附件中有一个 。Tm值p 延期。 |
从 电子邮件草稿的字段设置为 @aol.com,与 文件 类别。 |
电子邮件草稿的类型扩展属性设置为 2;附件中有一个 biz是 延期。 |
一个带有 .XLSX 扩展在 /项目 子目录。 |
中的非 JSON 文件 /i 子目录。 |
执行命令 |
类型 电子邮件草稿的扩展属性设置为 1;附件中有一个 .json 延期。 |
电子邮件草稿的未知扩展属性设置为 1;附件中有一个 彬 延期。 |
从 电子邮件草稿的字段设置为 @outlook.com, 也完全不需要 此 文件 类别。 |
电子邮件草稿的类型扩展属性设置为 1;附加文件的扩展名不是 biz是. |
扩展名为 .doc 的文件 /项目 子目录。 |
JSON 文件位于 /o 子目录。 |
命令输出 |
类型 电子邮件草稿的扩展属性设置为 2;附件中有一个 .json 延期。 |
电子邮件草稿的未知扩展属性设置为 2;附件中有一个 彬 延期。 |
从 电子邮件草稿的字段设置为 @aol.com,与 文本 类别。 |
电子邮件草稿的类型扩展属性设置为 2. |
一个带有 的.xls 扩展在 /项目 子目录。 |
JSON 文件位于 /i 子目录。 |
SC5k下载器
SampleCheck5000(或 SC5k)下载器是一个 C#/.NET 应用程序,也是 OilRig 的一系列轻量级下载器中的第一个,该下载器使用合法的云服务进行 C&C 通信。我们简要记录了我们的第一个变体 最近的博文,并且此后发现了两个更新的变体。
所有 SC5k 变体都使用 Microsoft Office EWS API 与共享 Exchange 邮件帐户进行交互,作为下载附加负载和命令以及上传数据的一种方式。电子邮件草稿及其附件是此下载器所有版本中 C&C 流量的主要载体,但更高版本增加了此 C&C 协议 (SC5k v3) 的复杂性,并添加了检测规避功能 (SC5k v2)。本节重点强调这些差异。
用于C&C通信的交换帐户
在运行时,SC5k 通过 EWS API 连接到远程 Exchange 服务器,以获取其他有效负载和命令,以便从与攻击者(通常还有其他受害者)共享的电子邮件帐户执行。默认情况下,通过以下方式访问 Microsoft Office 365 Outlook 帐户: https://outlook.office365.com/EWS/Exchange.asmx 使用硬编码凭据的 URL,但某些 SC5k 版本还能够在存在带有硬编码名称的配置文件时连接到其他远程 Exchange 服务器(设置键, 设置idl)以及里面相应的凭证。
我们发现 SC5k 版本使用以下电子邮件地址进行 C&C 通信,第一个电子邮件地址为下载程序提供了名称:
- Samplecheck5000@outlook.com
- FrancesLPierce@outlook.com
- SandraRCharles@outlook.com
在 SC5k v2 中,默认的 Microsoft Exchange URL、电子邮件地址和密码不包含在主模块中 - 相反,下载器的代码已拆分为多个模块。我们仅检测到主应用程序的变体,该变体登录到远程 Exchange 服务器,循环访问 草稿箱 目录,并从其附件中提取额外的有效负载。但是,此应用程序依赖于两个外部类,这些外部类不存在于检测到的样本中,并且可能在缺失的模块中实现:
- 班级 初始化 应提供一个接口来获取登录远程 Exchange 帐户所需的电子邮件地址、用户名和密码,以及来自其他模块的其他配置值。
- 班级 结构体 应该实现用于加密、压缩、执行下载的有效负载的函数以及其他辅助函数。
引入这些更改可能是为了让分析师更难检索和分析恶意负载,因为这两个缺失的类对于识别用于恶意软件分发的 Exchange 帐户至关重要。
C&C 和渗透协议
在所有版本中,SC5k 下载程序使用以下命令重复登录远程 Exchange 服务器: 交换服务 .NET 类中 Microsoft.Exchange.WebServices.Data 与 EWS API 交互的命名空间。连接后,SC5k 会读取草稿目录中带有附件的电子邮件,以提取攻击者命令和其他有效负载。相反,在每个连接中,SC5k 通过在同一电子邮件帐户中创建新的电子邮件草稿来从本地暂存目录中窃取文件。暂存目录的路径因示例而异。
有趣的是操作员和该下载程序的各种实例可以区分共享电子邮件帐户中不同类型草稿的方式。首先,每封电子邮件草稿都包含一个 ,这允许同一 Exchange 帐户用于多个 OilRig 受害者:
- 对于 v1 和 v2,下载器传输 作为电子邮件草稿的自定义属性 设置扩展属性 方法。
- 对于 v3,下载器包含 到 从 电子邮件草稿的字段。
通常是使用受感染系统的信息生成的,例如系统卷 ID 或计算机名称,如下所示 图2。
此外,各种电子邮件属性可用于区分操作员创建的消息(命令、附加负载)和恶意软件实例创建的消息(命令输出、泄露文件)。 SC5k v1 和 v2 使用文件扩展名(草稿附件)来进行区分,而 SC5k v3 使用 从 和 邮件项目.类别 电子邮件草稿的字段来区分各种操作。在每个点上,共享电子邮件帐户中的电子邮件草稿都可以用于各种目的,如表 2 中总结并在下文中解释。请注意,中使用的电子邮件地址 从 字段不是正品;由于 SC5k 从不发送任何实际的电子邮件消息,因此这些属性仅用于区分不同的恶意行为。
表 2. SC5k v3 用于 C&C 通信的电子邮件消息类型
从 |
邮件项目.类别 |
由...制作 |
更多信息 |
@yahoo.com |
无 |
SC5k v3 实例 |
创建的目的是向 C&C 服务器注册受害者,并定期更新以表明恶意软件仍然处于活动状态。 |
@outlook.com |
文件 |
C&C服务器 |
附件文件被解密、解压缩并转储到受害者的计算机上。 |
@outlook.com |
以外 文件 |
C&C服务器 |
附加的命令被解密、解压缩,然后作为参数传递给已存在于受感染机器(可能是命令解释器)上的文件。 |
@aol.com |
文件 |
SC5k v3 实例 |
创建用于从暂存目录中提取文件。 |
@aol.com |
文本 |
SC5k v3 实例 |
创建用于将命令输出发送到 C&C 服务器。 |
更具体地说,SC5k v3 处理(然后删除)来自共享 Exchange 帐户的那些电子邮件,这些电子邮件具有 从 字段设置为 @outlook.com,并通过消息类别区分命令和附加负载(邮件项目.类别):
- 对于有效负载,使用硬编码密钥对附加文件进行异或解密 &5z,然后gzip解压并转储到工作目录中。
- 对于 shell 命令,草稿附件经过 base64 解码、XOR 解密,然后使用本地执行 CMD.EXE 或者,对于 SC5k v3,使用位于名称下的自定义命令解释器 *Ext.dll。然后通过加载该文件 程序集.LoadFrom,以及使用作为参数传递的命令调用的扩展方法。
为了与攻击者通信,SC5k v3 使用不同的消息创建草稿消息 从 领域: @aol.com。这些消息附加的是先前接收到的命令的输出或本地暂存目录的内容。文件在上传到共享邮箱之前始终经过 gzip 压缩和 XOR 加密,而 shell 命令和命令输出经过 XOR 加密和 Base64 编码。
最后,SC5k v3 在共享 Exchange 帐户上重复创建新草稿 从 字段设置为 @yahoo.com,向攻击者表明该下载器实例仍然处于活动状态。此保持活动消息的结构如图 3 所示,没有附件,并且每次连接到远程 Exchange 服务器时都会更新。
使用基于电子邮件的 C&C 协议的其他 OilRig 工具
除了 SC5k 之外,随后(2022 年和 2023 年)还发现了其他著名的 OilRig 工具,这些工具滥用合法的基于云的电子邮件服务的 API 进行渗透及其 C&C 通信的双向。
OilCheck 是 2022 年 5 月发现的 C#/.NET 下载器,它还使用共享电子邮件帐户中创建的草稿消息进行 C&C 通信的双向。与 SCXNUMXk 不同,OilCheck 使用 基于 REST 的 Microsoft Graph API 访问共享的 Microsoft Office 365 Outlook 电子邮件帐户,而不是 基于 SOAP 的 Microsoft Office EWS API。而 SC5k 使用内置 交换服务 .NET 类透明地创建 API 请求,OilCheck 手动构建 API 请求。 OilCheck 的主要特征总结于上表 1 中。
2023 年初,另外两个 OilRig 后门被公开记录:MrPerfectionManager (趋势科技,2023 年 XNUMX 月)和 PowerExchange(赛门铁克,2023 年 5 月),两者都使用基于电子邮件的 C&C 协议来窃取数据。这些工具与本博文中研究的 OilRig 下载器之间的一个显着区别是,前者使用受害组织的 Exchange 服务器在攻击者的电子邮件帐户之间传输电子邮件。相比之下:使用 SCXNUMXk 和 OilCheck,恶意软件和操作员都访问同一 Exchange 帐户,并通过创建电子邮件草稿进行通信,而从不发送实际消息。
无论如何,新的发现证实了 OilRig 的趋势,即从之前使用的基于 HTTP/DNS 的协议转向使用合法的云服务提供商来隐藏其恶意通信并掩盖该组织的网络基础设施,同时仍在尝试此类替代协议的各种风格。
油助推器下载器
OilBooster 是一个用 Microsoft Visual C/C++ 编写的 64 位可移植可执行文件 (PE),具有静态链接的 OpenSSL 和 Boost 库(因此得名)。与 OilCheck 一样,它使用 微软图形API 连接到 Microsoft Office 365 帐户。与 OilCheck 不同,它使用此 API 与攻击者控制的 OneDrive(而非 Outlook)帐户进行交互,以进行 C&C 通信和渗透。 OilBooster 可以从远程服务器下载文件、执行文件和 shell 命令并窃取结果。
概述
执行后,OilBooster 会隐藏其控制台窗口(通过 ShowWindow API)并验证它是否是使用命令行参数执行的;否则它立即终止。
OilBooster 然后构建一个 通过组合受感染计算机的主机名和用户名: -。此标识符随后用于 C&C 通信:OilBooster 在共享 OneDrive 帐户上为每个受害者创建一个特定的子目录,然后用于存储后门命令和其他有效负载(由操作员上传)、命令结果和泄露的数据(上传)由恶意软件)。这样,同一个 OneDrive 帐户就可以由多个受害者共享。
图4显示了共享OneDrive帐户和本地工作目录的结构,并总结了C&C协议。
如图 4 所示,OilRig 操作员将后门命令和其他有效负载上传到 OneDrive 上的受害者特定目录,作为带有 .DOC 和 。的docx 分别是扩展名。在 C&C 协议的另一端,OilBooster 将命令结果和窃取的数据作为文件上传,其中包含 的.xls 和 .XLSX 分别是扩展名。请注意,这些不是真正的 Microsoft Office 文件,而是具有 XOR 加密和 Base64 编码值的 JSON 文件。
图 5 显示 OilBooster 在无限循环中生成两个线程的实例,每次迭代后休眠 153,123 毫秒:
两个线程都与共享 OneDrive 帐户交互:
- 下载器线程处理 C&C 通信并执行下载的有效负载。
- 渗漏线程从本地暂存目录中渗漏数据。
下载器线程连接到攻击者控制的 OneDrive 帐户,并使用以下命令迭代所有文件 .DOC 和 。的docx 然后下载、解密和解析这些扩展,以便在受感染的主机上提取并执行其他有效负载。名为的本地子目录 项目 当前工作目录(OilBooster 部署所在目录)中用于存储下载的文件。如图 6 所示,每个连接尝试都在一个单独的线程实例中处理,每 53,123 毫秒启动一次。
渗漏线程迭代另一个本地子目录,名为 临时文件,并将其内容渗透到共享 OneDrive 帐户,这些帐户作为单独的文件上传到那里 .XLSX 扩大。在单独的线程实例中,每 43,123 毫秒以这种方式清除一次暂存目录,如图 6 所示。
网络通讯
对于 C&C 通信和渗透,OilBooster 使用 Microsoft Graph API 访问共享 OneDrive 帐户,并使用各种 HTTP GET、POST、PUT 和 DELETE 请求来访问共享 OneDrive 帐户。 graph.microsoft.com 通过标准 443 端口主机。为简洁起见,我们还将这些请求称为 OneDrive API 请求。处理 SSL 通信的静态链接 OpenSSL 库促进了加密通信。
为了使用 OneDrive 帐户进行身份验证,OilBooster 首先获取 OAuth2 访问令牌 从 Microsoft 身份平台(授权服务器)通过端口 443 发送带有以下正文的 POST 请求到 login.microsoftonline.com/common/oauth2/v2.0/token,使用硬编码凭证:
client_id=860b23a7-d484-481d-9fea-d3e6e129e249
&redirect_uri=https://login.live.com/oauth20_desktop.srf
&client_secret=<redacted>
&refresh_token=<redacted>
&grant_type=refresh_token
OilBooster 通过这种方式获取新的访问令牌,该令牌将与新的刷新令牌一起用在后续 OneDrive API 请求的授权标头中。 OilBooster 还有一个备份通道,可在连续 10 次连接到 OneDrive 服务器失败后从其 C&C 服务器请求新的刷新令牌。如图 7 所示,可以通过在端口 80 上发送简单的 HTTP GET 请求来获取新令牌 host1[.]com/rt.ovf (一个合法的、可能受到威胁的网站),后面应该是 HTTP 响应中明文形式的新刷新令牌。
OilBooster 进行的各种网络连接总结为 图8。
下载器循环
在下载器循环中,OilBooster 重复连接到共享 OneDrive 帐户以 获取文件列表 与 。的docx 和 .DOC 名为的受害者特定子目录中的扩展名 /项目/ 通过端口 443 向此 URL 发送 HTTP GET 请求:
graph.microsoft.com/v1.0/me/drive/root://items:/children?$filter=endsWith(name,'.doc')%20or%20endsWith(name,'.docx') &$select=id,名称,文件
如果连接不成功( HTTP_STATUS_DENIED 响应状态)10 次尝试后,OilBooster 连接到其后备 C&C 服务器, host1[.]com/rt.ovf,获取新的刷新令牌,如前所述。
或者,如果指定的目录尚不存在(HTTP_STATUS_NOT_FOUND),OilBooster 首先通过端口 443 向以下 URL 发送 HTTP POST 请求,在共享 OneDrive 帐户上注册受害者: graph.microsoft.com/v1.0/me/drive/items/root:/:/children 与 JSON 字符串 {“名称”:“项目”,“文件夹”:{}} 作为请求体,如图 图 9. 此请求创建整个目录结构 /项目 同时,攻击者稍后将使用它来存储命令和伪装成的附加有效负载 .DOC 和 。的docx 文件。
在后续连接上(使用 HTTP_STATUS_OK),OilBooster 处理这些文件以提取并执行有效负载。 OilBooster 首先从 OneDrive 帐户下载每个文件,并在处理文件后将其从 OneDrive 中删除。
最后,在经历了所有的事情之后 .DOC 和 。的docx 从 OneDrive 子目录下载的文件中,OilBooster 通过在端口 443 上向此 URL 发出 HTTP PUT 请求,在受害者的 OneDrive 子目录中创建一个名为 settings.ini 的新文件,记录最后的连接时间戳(当前 GMT 时间): graph.microsoft.com/v1.0/me/drive/root://setting.ini:/content.
处理 .doc 文件
文件与 .DOC 从共享 OneDrive 帐户下载的扩展名实际上是 JSON 文件,其中包含要在受感染主机上执行的加密命令。一旦 .doc 下载后,OilBooster 解析名为的值 s (解密密钥的一部分)和 c (加密命令)来自文件内容。它首先进行 Base64 解码,然后进行 XOR 解密 c 值,使用通过附加最后两个字符创建的键 s 的最后两个字符的值 .
解密后,OilBooster 使用 CreateProcessW API 在新线程中执行命令行,并通过连接到进程的无名管道读取命令结果。然后 OilBooster 将命令结果作为名为的新文件上传到共享 OneDrive 帐户 .xls 通过端口 443 发送 HTTP PUT 请求到 graph.microsoft.com/v1.0/me/drive/root://items/.xls:/content.
处理 .docx 文件
文件与 。的docx 从共享 OneDrive 帐户下载的扩展名实际上是压缩和加密的文件,名为 ..docx 它将被丢弃并解压缩到受感染的系统上。 OilBooster首先将加密文件下载到本地目录名为 项目,使用原始的完整文件名。
在下一步中,它使用 XOR 密码读取并解密文件内容 .<原始扩展名> 作为解密密钥,并将其放入同一目录中名为的文件中 ..doc,而第一个被删除。最后,OilBooster 读取并 gzip 解压缩解密的文件,将结果放入与名为的文件相同的目录中 .,并删除另一个。
请注意,在此过程中不必要地创建了多个文件 - 这对于 OilRig 来说是典型的情况。我们之前描述了该组织在受感染主机上的噪音操作 出海活动.
渗漏循环
在渗漏线程中,OilBooster 循环遍历本地目录的内容 临时文件,并将文件内容上传到共享 OneDrive 帐户上受害者的文件夹中。每个文件都是这样处理的:
- OilBooster gzip 压缩原始文件 . 并将结果写入名为的文件 ..xlsx 在同一个目录。
- 然后,它使用 XOR 密码对压缩文件进行加密,并 . 作为钥匙。如果没有文件扩展名, 4cx 用作默认键。
最后将加密文件上传到OneDrive账户,并删除本地文件。
ODAgent 下载器:OilBooster 的前身
ODAgent 是一个 C#/.NET 应用程序,它使用 Microsoft Graph API 访问攻击者控制的 OneDrive 帐户以进行 C&C 通信和渗透 - 简而言之,ODAgent 大致是 OilBooster 的 C#/.NET 前身。与 OilBooster 类似,ODAgent 反复连接到共享 OneDrive 帐户并列出受害者特定文件夹的内容,以获取其他有效负载和后门命令。
如图 10 所示,ODAgent 然后解析每个远程文件的元数据。随后,它使用的值 mime类型 与文件关联的密钥,用于区分后门命令(格式为 JSON 文件)和加密的有效负载 - 这与 OilBooster 不同,OilBooster 使用文件扩展名来进行区分。在本地处理文件后,ODAgent 通过 OneDrive API 从远程 OneDrive 目录中删除原始文件。
如果下载的文件是JSON文件,ODAgent会解析a1(命令ID), a2 (加密后门命令)和 a3 (秘密)论据。它首先通过将提供的秘密与硬编码值进行异或来导出会话密钥 15a49w@]。然后,它使用该会话密钥对后门命令进行 Base64 解码和 XOR 解密。表 3 列出了 ODAgent 支持的所有后门命令。
表 3. ODAgent 支持的后门命令
后门命令 |
课程描述 |
奥德特> |
返回当前工作目录的路径。 |
dly> |
配置每次连接后等待的秒数 . |
|
执行指定的 通过本机 API 并返回命令输出。 |
从共享 OneDrive 帐户下载的其他(非 JSON)文件是文件和附加负载,均已加密。 ODAgent XOR 使用硬编码密钥解密这些文件 15a49w@],并将它们放入本地 o 相同文件名下的目录。如果原始文件有 .c 扩展名,其内容也经过 gzip 解压缩(然后从文件名中删除扩展名)。
每次连接结束时,ODAgent都会上传本地目录的内容 我 到 /i 共享 OneDrive 帐户上的目录,保留原始文件名并添加 .c 延期。
结论
整个 2022 年,OilRig 开发了一系列新的下载器,全部使用各种合法的云存储和基于云的电子邮件服务作为其 C&C 和渗透渠道。这些下载器专门针对以色列的目标进行部署 - 通常在几个月内针对相同的目标。由于所有这些目标之前都受到其他 OilRig 工具的影响,因此我们得出结论,OilRig 使用此类轻量级但有效的下载器作为其选择的工具来维护对感兴趣网络的访问。
这些下载程序与 MrPerfectionManager 和 PowerExchange 后门有相似之处,后者是 OilRig 工具集中最近添加的其他使用基于电子邮件的 C&C 协议的工具,除了 SC5k、OilBooster、ODAgent 和 OilCheck 使用攻击者控制的云服务帐户,而不是受害者的内部基础设施。所有这些活动都证实了 C&C 通信正在转向合法的云服务提供商,作为隐藏恶意通信和掩盖该组织网络基础设施的一种方式。
与 OilRig 的其他工具集一样,这些下载器并不是特别复杂,而且同样会给系统带来不必要的噪音。然而,不断开发和测试新变体、尝试各种云服务和不同的编程语言,以及一次又一次地对相同目标进行重新妥协,使 OilRig 成为一个值得警惕的组织。
如果对我们在 WeLiveSecurity 上发表的研究有任何疑问,请通过以下方式联系我们 威胁intel@eset.com.
ESET Research 提供私人 APT 情报报告和数据源。 有关此服务的任何查询,请访问 ESET 威胁情报 页面上发布服务提醒。
国际石油公司
档
SHA-1 |
文件名 |
检测 |
课程描述 |
0F164894DC7D8256B66D0EBAA7AFEDCF5462F881 |
CCLibrary.exe |
MSIL/OilRig.A |
OilRig 下载器 – SC5k v1。 |
2236D4DCF68C65A822FF0A2AD48D4DF99761AD07 |
acrotray.exe |
MSIL/OilRig.D |
OilRig 下载器 – SC5k v1. |
35E0E78EC35B68D3EE1805EECEEA352C5FE62EB6 |
微软com.exe |
MSIL/OilRig.D |
OilRig 下载器 – SC5k v1. |
51B6EC5DE852025F63740826B8EDF1C8D22F9261 |
CCLibrary.exe |
MSIL/OilRig.A |
OilRig 下载器 – SC5k v1. |
6001A008A3D3A0C672E80960387F4B10C0A7BD9B |
acrotray.exe |
MSIL/OilRig.D |
OilRig 下载器 – SC5k v1. |
7AD4DCDA1C65ACCC9EF1E168162DE7559D2FDF60 |
AdobeCE.exe |
MSIL/OilRig.D |
OilRig 下载器 – SC5k v1. |
BA439D2FC3298675F197C8B17B79F34485271498 |
AGS服务程序 |
MSIL/OilRig.D |
OilRig 下载器 – SC5k v1. |
BE9B6ACA8A175DF61F2C75932E029F19789FD7E3 |
CCXProcess.exe |
MSIL/OilRig.A |
OilRig 下载器 – SC5k v1. |
C04F874430C261AABD413F27953D30303C382953 |
AdobeCE.exe |
MSIL/OilRig.A |
OilRig 下载器 – SC5k v1. |
C225E0B256EDB9A2EA919BACC62F29319DE6CB11 |
微软com.exe |
MSIL/OilRig.A |
OilRig 下载器 – SC5k v1. |
E78830384FF14A58DF36303602BC9A2C0334A2A4 |
armsvc.exe |
MSIL/OilRig.D |
OilRig 下载器 – SC5k v1. |
EA8C3E9F418DCF92412EB01FCDCDC81FDD591BF1 |
node.exe |
MSIL/OilRig.D |
OilRig 下载器 – SC5k v1. |
1B2FEDD5F2A37A0152231AE4099A13C8D4B73C9E |
控制台应用程序 |
Win64/OilBooster.A |
OilRig 下载器 – OilBooster。 |
3BF19AE7FB24FCE2509623E7E0D03B5A872456D4 |
owa服务程序 |
MSIL/OilRig.D |
OilRig 下载器 – SC5k v2. |
AEF3140CD0EE6F49BFCC41F086B7051908B91BDD |
owa服务程序 |
MSIL/OilRig.D |
OilRig 下载器 – SC5k v2. |
A56622A6EF926568D0BDD56FEDBFF14BD218AD37 |
owa服务程序 |
MSIL/OilRig.D |
OilRig 下载器 – SC5k v2。 |
AAE958960657C52B848A7377B170886A34F4AE99 |
链接同步程序 |
MSIL/OilRig.F |
OilRig 下载器 – SC5k v3. |
8D84D32DF5768B0D4D2AB8B1327C43F17F182001 |
应用程序加载器 |
MSIL/OilRig.M |
OilRig 下载器 – OilCheck。 |
DDF0B7B509B240AAB6D4AB096284A21D9A3CB910 |
检查更新程序 |
MSIL/OilRig.M |
OilRig 下载器 – OilCheck。 |
7E498B3366F54E936CB0AF767BFC3D1F92D80687 |
ODAgent.exe |
MSIL/OilRig.B |
OilRig 下载器 – ODAgent。 |
A97F4B4519947785F66285B546E13E52661A6E6F |
无 |
MSIL/OilRig.N |
OilRig 的 OilCheck 下载器 - CmEx 使用的帮助实用程序。 |
商业网络
IP |
域名 |
托管服务商 |
初见 |
更多信息 |
188.114.96[.]2 |
主机1[.]com |
Cloudflare,Inc。 |
2017-11-30 |
一个合法的、可能受到感染的网站,被 OilRig 滥用作为后备 C&C 服务器。 |
MITRE ATT&CK 技术
该表是使用 14版 MITRE ATT&CK 框架.
战术 |
ID |
名字 |
课程描述 |
资源开发 |
收购基础设施:领域 |
OilRig 已注册一个用于 C&C 通信的域名。 |
|
获取基础设施:服务器 |
OilRig 已购买一台服务器作为 OilBooster 下载器的备份通道。 |
||
获取基础设施:Web 服务 |
OilRig 已设置 Microsoft Office 365 OneDrive 和 Outlook 帐户,可能还设置其他 Exchange 帐户以用于 C&C 通信。 |
||
开发能力:恶意软件 |
OilRig 开发了多种用于其操作的自定义下载器:SC5k 版本、OilCheck、ODAgent 和 OilBooster。 |
||
建立账户:云账户 |
OilRig 操作员创建了新的 OneDrive 帐户,用于其 C&C 通信。 |
||
建立帐户:电子邮件帐户 |
OilRig 操作员已注册新的 Outlook 以及可能的其他电子邮件地址,用于其 C&C 通信。 |
||
舞台能力 |
OilRig 操作员在合法的 Microsoft Office 365 OneDrive 和 Outlook 以及其他 Microsoft Exchange 帐户中部署了恶意组件和后门命令。 |
||
执行 |
命令和脚本解释器:Windows 命令外壳 |
SC5k v1 和 v2 使用 CMD.EXE 在受感染的主机上执行命令。 |
|
原生API |
OilBooster 使用 创建进程W 用于执行的 API 函数。 |
||
防御规避 |
去混淆/解码文件或信息 |
OilRig 的下载器使用字符串堆栈来混淆嵌入的字符串,并使用 XOR 密码来加密后门命令和有效负载。 |
|
执行护栏 |
OilRig 的 OilBooster 需要任意命令行参数来执行恶意负载。 |
||
隐藏文物:隐藏窗口 |
执行后,OilBooster 会隐藏其控制台窗口。 |
||
指标删除:文件删除 |
OilRig 的下载程序在成功渗漏后删除本地文件,并在受感染的系统上处理完这些文件或电子邮件草稿后,从远程云服务帐户中删除这些文件或电子邮件草稿。 |
||
间接命令执行 |
SC5k v3 和 OilCheck 使用自定义命令解释器在受感染的系统上执行文件和命令。 |
||
伪装:匹配合法名称或位置 |
OilBooster 模仿合法路径。 |
||
混淆的文件或信息 |
OilRig 使用各种方法来混淆下载器中嵌入的字符串和有效负载。 |
||
药物发现 |
系统信息发现 |
OilRig 的下载程序获取受感染的计算机名称。 |
|
系统所有者/用户发现 |
OilRig 的下载程序获取受害者的用户名。 |
||
购物 |
存档收集的数据:通过自定义方法存档 |
OilRig 的下载程序在渗漏之前对数据进行 gzip 压缩。 |
|
数据暂存:本地数据暂存 |
OilRig 的下载程序创建中央暂存目录以供其他 OilRig 工具和命令使用。 |
||
指挥和控制 |
数据编码:标准编码 |
OilRig 的下载器在将数据发送到 C&C 服务器之前对数据进行 Base64 解码。 |
|
加密通道:对称密码学 |
OilRig 的下载器使用 XOR 密码来加密 C&C 通信中的数据。 |
||
后备通道 |
OilBooster 可以使用辅助通道获取新的刷新令牌来访问共享 OneDrive 帐户。 |
||
入口工具传输 |
OilRig 的下载器能够从 C&C 服务器下载其他文件以供本地执行。 |
||
Web 服务:双向通信 |
OilRig 的下载器使用合法的云服务提供商进行 C&C 通信。 |
||
渗出 |
自动渗漏 |
OilRig 的下载程序会自动将暂存文件泄露到 C&C 服务器。 |
|
通过 C2 通道进行渗透 |
OilRig 的下载者使用其 C&C 渠道进行渗透。 |
||
通过 Web 服务进行渗透:向云存储渗透 |
OilBooster 和 ODAgent 将数据窃取到共享 OneDrive 帐户。 |
||
通过 Web 服务进行渗透 |
SC5k 和 OilCheck 将数据窃取到共享的 Exchange 和 Outlook 帐户。 |
- :具有
- :是
- :不是
- :在哪里
- $UP
- 1
- 10
- 11
- 114
- 2014
- 2019
- 2020
- 2021
- 2022
- 2023
- 22
- 24
- 43
- 49
- 7
- 8
- 80
- 9
- a
- Able
- 关于
- 以上
- 滥用
- ACCESS
- 访问
- 根据
- 账号管理
- 账户
- 获得
- 后天
- 横过
- 操作
- 行动
- 要积极。
- 积极地
- 活动
- 实际
- 加
- 添加
- 额外
- 增加
- 地址
- 地址
- 影响
- 后
- 再次
- 驳
- 对齐
- 对齐
- 所有类型
- 允许
- 沿
- 已经
- 还
- 替代
- 时刻
- an
- 分析
- 分析师
- 分析
- 分析
- 和
- 另一个
- 任何
- API
- APIs
- 应用领域
- 应用领域
- 四月
- APT
- 阿拉伯
- Arab Emirates
- 档案
- 保健
- 论点
- 参数
- AS
- 相关
- At
- 攻击
- 攻击
- 尝试
- 尝试
- 属性
- 八月
- 认证
- 授权
- 自动
- 远离
- 后门
- 后门程序
- 备份工具
- 基于
- BE
- 因为
- 很
- before
- 开始
- 作为
- 如下。
- 之间
- 混合
- 身体
- 促进
- 都
- 简要地
- 建立
- 建
- 内建的
- 商业
- 但是
- by
- 计算
- 营销活动
- 活动
- CAN
- 能力
- 能力
- 进行
- 案件
- 例
- 产品类别
- 中央
- 更改
- 渠道
- 通道
- 特点
- 字符
- 化学
- 选择
- 选择
- 暗号
- 程
- 类
- 接近
- 云端技术
- 云服务
- 云存储
- 码
- COM的
- 结合
- 相当常见
- 通信
- 沟通
- 沟通
- 通信
- 公司
- 比较
- 复杂
- 复杂
- 组件
- 全面
- 妥协
- 妥协
- 一台
- 总结
- 信心
- 配置
- 确认
- 分享链接
- 已联繫
- 地都
- 连接
- 所连接
- 连续
- 安慰
- 施工
- CONTACT
- 内容
- Contents
- 持续
- 连续
- 对比
- 受控
- 反过来
- 相应
- 创建信息图
- 创建
- 创建
- 创造
- 创建
- 资历
- 关键
- 电流
- 习俗
- data
- 贡献
- 默认
- 国防
- 依靠
- 部署
- 部署
- 部署
- 描述
- 细节
- 详情
- 检测
- 检测
- 决心
- 发达
- 研发支持
- 差异
- 差异
- 不同
- 目录
- 发现
- 讨论
- 区别
- 区分
- 分配
- do
- 不
- 域
- 别
- 向下
- 下载
- 下载
- 下载
- 草案
- 下降
- 滴
- e
- 每
- 此前
- 最早
- 容易
- 东部
- 东
- 有效
- 邮箱地址
- 电子邮件
- 嵌入式
- 酋长国
- 就业
- 编码
- 加密
- 加密
- 结束
- 能源
- 实体
- 特别
- 逃税
- 所有的
- 进化
- 例子
- 例子
- 除
- 交换
- 只
- 执行
- 执行
- 执行
- 执行
- 执行
- 渗出
- 存在
- 展开
- 解释
- 延长
- 扩展
- 延期
- 扩展
- 外部
- 提取
- 提取物
- 促进
- 事实
- 二月
- 少数
- 部分
- 字段
- 数字
- 文件
- 档
- 终于
- 金融
- 发现
- 姓氏:
- 专注焦点
- 重点
- 遵循
- 其次
- 以下
- 针对
- 前
- 止
- ,
- 功能
- 功能
- 功能
- 给
- 产生
- 真正
- 得到
- GMT
- 去
- 政府
- 政府实体
- 政府
- 各国政府
- 图形
- 团队
- 组的
- 成长
- 手柄
- 更难
- 收成
- 有
- 医疗保健
- 医疗保健行业
- 于是
- 老旧房屋
- 隐藏
- 高
- 突出
- 主持人
- 为了
- 创新中心
- 但是
- HTML
- HTTP
- HTTPS
- ID
- 鉴定
- 识别码
- 确定
- 身分
- if
- 图片
- 立即
- 实施
- 实现
- 实施
- in
- 包括
- 包含
- 成立
- 合并
- 增加
- 表明
- 指标
- 个人
- 信息
- 基础设施
- 初始
- 咨询内容
- 内
- 例
- 代替
- 房源搜索
- 相互作用
- 兴趣
- 有趣
- 利益
- 接口
- 内部
- 成
- 介绍
- 调用
- 伊朗
- 以色列
- 以色列
- 问题
- IT
- 项目
- 迭代
- 它的
- JSON
- 六月
- 保持
- 保持
- 键
- 已知
- 语言
- 名:
- 后来
- 推出
- 最少
- 黎巴嫩
- 合法
- Level
- 杠杆作用
- 库
- 自学资料库
- 轻巧
- 喜欢
- 容易
- 有限
- Line
- 链接
- 清单
- 书单
- 生活
- 本地
- 地方政府
- 当地
- 位于
- 日志
- 逻辑
- 看
- 低
- 机
- 制成
- 主要
- 保持
- 使
- 制作
- 恶意软件
- 管理
- 手动
- 制造业
- 马林
- 面膜
- 匹配
- 机制
- 机制
- 提到
- 的话
- 条未读消息
- 元数据
- 方法
- 方法
- 微软
- 中间
- 中东
- 毫秒
- 失踪
- 模块
- 模块
- 个月
- 更多
- 最先进的
- 多
- 姓名
- 命名
- 狭窄
- 本地人
- 净
- 网络
- 网络流量
- 网络
- 决不要
- 全新
- 新访问
- 下页
- 没有
- 显着
- 注意
- 注意到
- 十一月
- 2021年 十一月
- 数
- 获得
- 获得
- 获得
- 场合
- 十月
- of
- 优惠精选
- 办公
- 经常
- on
- 一旦
- 一
- 正在进行
- 仅由
- openssl的
- 运营
- 操作者
- 运营商
- or
- 秩序
- 组织
- 组织
- 原版的
- 其他名称
- 除此以外
- 我们的
- 输出
- 外层空间
- Outlook
- 产量
- 输出
- 超过
- 简介
- 市盈率
- 页
- 部分
- 尤其
- 通过
- 密码
- 径
- 路径
- 模式
- 执着地
- 管
- 平台
- 柏拉图
- 柏拉图数据智能
- 柏拉图数据
- 请
- 点
- 点
- 手提
- 一部分
- 或者
- 帖子
- 在练习上
- 先导
- 当下
- 保存
- 以前
- 先前
- 小学
- 私立
- 大概
- 过程
- 处理
- 过程
- 处理
- 代码编程
- 编程语言
- 财产
- 协议
- 协议
- 提供
- 提供
- 供应商
- 公然
- 出版
- 目的
- 目的
- 放
- 宁
- 原因
- 收到
- 最近
- 记录
- 参考
- 寄存器
- 在相关机构注册的
- 寄存器
- 定期
- 有关
- 远程
- 切除
- 续约
- 重复
- 反复
- 报告
- 报道
- 业务报告
- 请求
- 要求
- 必须
- 需要
- 研究
- 研究人员
- 资源
- 分别
- 响应
- 提供品牌战略规划
- REST的
- 导致
- 成果
- 回报
- 运行
- s
- 同
- SEA
- 次
- 秒
- 秘密
- 部分
- 扇形
- 行业
- 保安
- 看到
- 选
- 提交
- 发送
- 发送
- 分开
- 系列
- 服务
- 服务器
- 服务器
- 服务
- 服务供应商
- 特色服务
- 会议
- 集
- 设置
- 几个
- Share
- 共用的,
- 壳
- 转换中
- 短
- 应该
- 显示
- 如图
- 作品
- 类似
- 相似之处
- 简易
- 自
- 小
- 一些
- 不知何故
- 极致
- 极致
- 太空
- 特别
- 具体的
- 特别是
- 细节
- 指定
- 分裂
- SSL
- 堆叠
- 分期
- 标准
- Status
- 步
- 仍
- 存储
- 商店
- 流
- 串
- 结构体
- 研究
- 随后
- 后来
- 成功
- 顺利
- 这样
- 概要
- 支持
- 支持
- Switch 开关
- 系统
- 表
- 采取
- 目标
- 针对
- 瞄准
- 目标
- 文案
- 技术分析
- 电信
- 测试
- 比
- 这
- 其
- 他们
- 然后
- 那里。
- 博曼
- 他们
- Free Introduction
- 今年
- 那些
- 威胁
- 威胁报告
- 三
- 通过
- 始终
- 从而
- 次
- 时间表
- 时间戳
- 至
- 象征
- 工具
- 工具
- 交通
- 发送
- 透明地
- 趋势
- 二
- 类型
- 类型
- 普遍
- 一般
- 下
- 独特
- 联合的
- 阿联酋
- 阿拉伯联合酋长国
- 不明
- 不像
- 无名
- 不必要的
- 不必要
- 更新
- 上传
- 网址
- us
- 使用
- 用过的
- 使用
- 运用
- 平时
- 效用
- v1
- 折扣值
- 价值观
- 变种
- 各种
- 各个
- 变化
- 汽车
- 版本
- 版本
- 垂直
- 通过
- 受害者
- 受害者
- 参观
- 视觉
- 体积
- vs
- 等待
- 是
- 了解
- 方法..
- we
- 卷筒纸
- Web服务
- 您的网站
- 井
- 为
- ,尤其是
- 是否
- 这
- 而
- 全
- 谁的
- 为什么
- 宽度
- 将
- 窗口
- 窗户
- 中
- 加工
- 写作
- 书面
- 年
- 但
- 和风网