完整分析cuba勒索软件(下)

文章正文
发布时间:2023-09-25 01:16

完整分析 cuba 勒索软件(上)

Veeamp

过了一段时间,研究人员发现一个恶意进程在相邻主机上启动;研究人员称之为 "SRV_Service":

恶意进程启动

Veeam.exe 是一个用 C# 编写的定制数据转储程序,它利用 Veeam 备份和恢复服务中的安全漏洞连接到 VeeamBackup SQL 数据库并获取帐户凭据。

Veeamp 分析

Veeamp 利用以下 Veeam 漏洞:CVE-2022-26500、CVE-2022-206501、CVE--2022-26504。前两个允许未经身份验证的用户远程执行任意代码,第三个允许域用户执行相同的代码。三个中的任何一个被利用后,恶意软件会在控制面板中输出以下内容:

用户名;

加密的密码;

解密的密码;

Veeam 凭据表中的用户描述:组成员资格、权限等;

该恶意软件并非 cuba 组织独有,Conti 和 yanlowang 种也会出现这些内容。

研究人员在 SRV_Service 上看到的活动与他们在 SRV_STORAGE 上使用 Bughatch 观察到的类似:

SRV_Service 上的 Bughatch 活动

与 SRV_STORAGE 的情况一样,恶意软件将三个文件放入临时文件夹,然后以相同的顺序执行这些文件,连接到相同的地址。

Avast Anti-Rootkit 驱动程序

在 Bughatch 成功建立了与 C2 的连接后,该组织使用了一种日益流行的技术:Bring Your Own Vulnerable Driver ( BYOVD ) 。

利用易受攻击的驱动程序

攻击者在系统中安装易受攻击的驱动程序,然后将其用于各种目的,例如终止进程或通过权限升级到内核级别来逃避防御。

攻击者被易受攻击的驱动程序所吸引,因为它们都在内核模式下运行,具有高级别的系统访问权限。此外,拥有数字签名的合法驱动程序不会在安全系统中引发任何危险信号,从而帮助攻击者在更长时间内不被发现。

在攻击过程中,恶意软件在临时文件夹中创建了三个文件:

aswarpot.sys:Avast 的合法反 rootkit 驱动程序,有两个漏洞:CVE-2022-26522 和 CVE-2022-206523,允许权限有限的用户在内核级别运行代码。

KK.exe:被称为 Burntcigar 的恶意软件。目前发现的文件是一个新的变体,它使用有漏洞的驱动程序来终止进程。

av.bat 批处理脚本:一个帮助内核服务运行 Avast 驱动程序并执行 Burntgigar 的 stager。

对 BAT 文件和样本数据的分析表明,av.BAT 使用 sc.exe 实用程序创建一个名为 "aswSP_ArPot2" 的服务,在 С windowstemp 目录中指定驱动程序的路径,并将服务类型指定为内核服务。然后,BAT 文件在同一 sc.exe 实用程序的帮助下启动服务,并运行 KK.exe,它连接到易受攻击的驱动程序。

.bat 文件的内容

Burntcigar

在查看 Burntcigar 时,研究人员注意到的第一件事是 PDB 文件的路径,其中包含一个名为 "Musor"(俄语中 " 垃圾 " 的意思)的文件夹,这更表明 cuba 组织的成员可能会说俄语。

KK.exe PDB 文件的路径

找到的样本是 Burntcigar 的新版本,在事件发生时安全系统无法检测到。攻击者显然更新了恶意软件,因为在之前的攻击之后,许多供应商能够很容易地检测到旧版本运行的逻辑。

在下面示例的截屏中,关于要终止的进程的所有数据都是加密的,而旧版本公开显示了攻击者想要停止的所有进程的名称。

Burntcigar 新旧版本的比较

恶意软件搜索与流行 AV 或 EDR 产品有关的进程名,并将其进程 ID 添加到堆栈中,以便稍后终止。

Burntgigar 使用 DeviceIoContol 函数访问易受攻击的 Avast 驱动程序,将包含安全问题的代码的位置指定为执行选项。该段代码包含 ZwTerminateProcess 函数,攻击者使用该函数终止进程。

Burntcigar 的分析

之后,研究人员在 Exchange 服务器和 SRV_STORAGE 主机上发现了利用 Avast anti-rootkit   驱动程序的类似活动。在这两种情况下,攻击者都使用 BAT 文件安装不安全的驱动程序,然后启动 Burntgigar。

相邻主机上的 BurntChigar 活动

SRV_MAIL host ( Exchange server )

去年 12 月 20 日,客户批准了研究人员将 Exchange 服务器添加到监控范围的请求。主机一定是作为客户网络的入口点使用的,因为服务器缺少关键更新,而且它很容易受到初始访问的影响。特别是,SRV_MAIL 的 ProxyLogon、ProxyShell 和 Zerologon 漏洞仍未被修复。这就是为什么研究人员认为攻击者通过 Exchange 服务器渗透到客户网络的原因。

分析数据开始传入

在 SRV_MAIL 上,SqlDbAdmin 用户显示的活动与研究人员在以前的主机上观察到的活动相同。

SqlDbAdmin 的恶意活动

研究人员发现攻击者使用合法的 gotoassistui.exe 工具在受感染的主机之间传输恶意文件。

GoToAssist 是技术支持团队经常使用的 RDP 支持实用程序,但在系统之间移动文件时,该应用程序经常被滥用以绕过任何安全防御或响应团队。

通过 gotoassistui.exe 发送恶意文件

研究人员还发现新的 Bughatch 样本正在执行中。这些使用了略有不同的文件名、回调函数和 C2 服务器,因为研究人员的系统当时成功地阻止了旧版本的恶意软件。

Bughatch 活动

SqlDbAdmin

SqlDbAdmin 是一个可疑的 DLL addp.DLL,研究人员在一个受攻击的主机上手动找到了它。

可疑动态库

研究人员发现它使用 WIN API 函数 NetUserAdd 来创建用户。名称和密码在 DLL 中进行了硬编码。

addp.dll 分析

当研究人员进一步研究该库时,研究人员发现它使用 RegCreateKey 函数通过修改注册表设置为新创建的用户启用 RDP 会话。然后,库将用户添加到 Special Account 注册表树中,以将其隐藏在系统登录屏幕之外,这是一种有趣且少见的持久化技术。在大多数情况下,攻击者在脚本的帮助下添加新用户,而安全产品很少会遗漏这些脚本。

Cobalt Strike

研究人员发现 Exchange 服务器上运行了一个可疑的 DLL ion.DLL,该 DLL 是 rundll32 进程的一部分,具有异常的执行选项。起初,研究人员认为这种活动与之前在 Bughatch 中看到的类似。然而,进一步的分析表明,该库实际上是一个 Cobalt Strike。

执行可疑的 ion.dll 文件

当研究人员查看 ion.dll 代码时,引起研究人员注意的是执行设置和使用 Cobalt Strike 配置的函数。该库使用 VirtualAlloc 函数来分配进程内存,以便稍后执行 Cobalt Strike Beacon 负载。

对 ion.dll 的分析

所有的配置数据都是加密的,但研究人员确实找到了用于解密的函数。为了找到 Cobalt Strike C2 服务器,研究人员检查了加载了 ion.dll 的 rundll32 内存转储,并使用与受害者主机相同的设置运行。

rundll32 内存转储

找出 C2 的名称有助于研究人员在监测数据中定位与该服务器的通信历史。恶意软件连接到 C2 后,它将两个可疑文件下载到受感染服务器上的 Windows 文件夹中,然后执行这些文件。不幸的是,研究人员无法获得这两个文件进行分析,因为攻击者未能在上一步禁用安全功能,这些文件被从受感染的主机上删除。不过,研究人员确实相信,他们正在处理的是勒索软件本身。

与攻击者的 C2 服务器通信

客户立即隔离了受影响的主机,并将事件转发给卡巴斯基事件响应团队,以便进一步调查和搜索可能的工件。这是研究人员最后一次在客户系统中看到攻击者的活动。由于客户遵循了研究人员的建议和指示,并及时对事件做出了响应,主机避免了加密。

新恶意软件

研究人员发现 VirusTotal 包含 cuba 恶意软件的新样本,其文件元数据与上述事件中的文件元数据相同。其中一些样本成功地躲过了所有网络安全供应商的检测。研究人员对每个样本进行了分析。正如你从下面的屏幕截图中看到的,这些是 Burntcigar 的新版本,使用加密数据进行反恶意软件规避。研究人员已经制定了检测这些新样本的 Yara 规则。

新的恶意软件样本

BYOVD ( Bring Your Own Vulnerable Driver )

BYOVD,全称为 Bring your own vulnerable driver,即攻击者向目标环境植入一个带有漏洞的合法驱动程序,再通过漏洞利用获得内核权限以杀死 / 致盲终端安全软件等,这项技术最初主要被如 Turla 和方程式这样的顶级 APT 组织所使用,而随着攻击成本的降低,其它攻击组织也逐渐开始使用这项技术,以 BYOVD 为标签进行检索可以发现在更早些时候就已经有不同的攻击组织在真实攻击活动中使用此项技术

研究人员在调查该事件时观察到了这种攻击,随着各种 APT 和勒索软件组织将其添加到他们的武器库中,这种攻击目前越来越受欢迎。

Bring Your Own Vulnerable Driver ( BYOVD ) 是一种攻击类型,攻击者使用已知包含安全漏洞的合法签名驱动程序在系统内执行恶意操作。如果成功,攻击者将能够利用驱动程序代码中的漏洞在内核级别运行任何恶意操作。

要理解为什么这是最危险的攻击类型之一,需要快速复习一下驱动程序是什么。驱动程序是一种软件,它充当操作系统和设备之间的中介。驱动程序将操作系统指令转换为设备可以解释和执行的命令。驱动程序的进一步用途是支持操作系统最初缺乏的应用程序或功能。从下图中可以看到,驱动程序是介于用户模式和内核模式之间的一层。

用户模式和内核模式交互图

在用户模式下运行的应用程序控制系统的权限较少。他们所能访问的只是一个与系统其他部分隔离和保护的虚拟内存区域。驱动程序在内核内存中运行,它可以像内核本身一样执行任何操作。驱动程序可以访问关键的安全结构并对其进行修改。这样的修改使系统容易受到使用权限提升、禁用操作系统安全服务以及任意读写的攻击。

2021 年,Lazarus 组织利用这一技术,通过滥用包含 CVE-2021-21551 漏洞的戴尔驱动程序,获得了对内核内存的写访问权限,并禁用了 Windows 安全功能。

2021 年,Dell 被爆出一个潜藏 12 年的驱动漏洞,CVE 编号 CVE-2021-21551,漏洞可能引发系统权限提升,预计超过数亿 Dell 台式机和笔记本电脑受到该漏洞的的影响。

CVE-2021-21551 漏洞实际上是 5 个漏洞的集合,是 Dell 计算机在 BIOS 更新过程中安装和加载的驱动 DBUtil 中的安全漏洞。

没有针对合法驱动程序的万无一失的防御,因为任何驱动程序都可能被证明存在安全漏洞。微软发布了一份针对此类技术的保护建议列表:

启用管理程序保护的代码完整性。

启用内存完整性。

启用驱动程序数字签名验证。

使用易受攻击的驱动程序列表。

然而,研究表明,即使启用了所有 Windows 保护功能,这些建议也无关紧要,而且这样的攻击无论如何都会发生。

为了对抗这种技术,许多安全供应商开始在他们的产品中添加一个自卫模块,以防止恶意软件终止进程,并阻止每一次利用易受攻击的驱动程序的尝试。研究人员的产品也具有这一功能,在事件中证明是有效的。

总结

cuba 组织使用了大量的公开和定制工具,并不断通过最新的各种技术和方法,包括相复杂的技术和方法(如 BYOVD)。预防这种复杂程度的攻击需要能够检测高级威胁并保护安全功能不被禁用的复杂技术,以及有助于手动检测恶意工件的大规模、持续更新的威胁知识库。

本文中详细介绍的样本表明,对真实网络攻击的调查和事件响应,如管理检测和响应(MDR),是有关恶意策略、技术和程序的最新信息的来源。特别是,在这次调查中,研究人员发现了 cuba 恶意软件的新样本和以前未被发现的样本,以及表明至少有一些组织成员会说俄语的工件。