铭说|Deathstalker的核心武器——Janicab新变种_变体_恶意_入侵

01概述

DeathStalker是一个专门针对金融机构和律师事务所进行攻击的组织,而Janicab是其所使用的比较古老的武器。

Janicab 首次在2013年被发现,它是能够运行在MacOS和Windows操作系统上的恶意软件。其中,Windows版本基于VBscript的植入作为入侵的最后阶段,而不是像以前的版本一样使用C#/Powershell。

迄今为止,可以确定的是基于VBS的植入程序也具有多种版本号,这可能意味着它仍在开发中。总体而言,Janicab 表现出与其之前的版本具有相同的功能,但不是像 EVILNUM 和 Powersing 入侵那样在入侵生命周期的后期下载多个工具,而是将大多数工具嵌入并在释放器(Dropper)中进行混淆。

值得注意的是,黑客继续使用YouTube、Google+和WordPress等网络服务作为DDR(Dynamic Document Review)。但是,观察到的一些YouTube链接未列出,可以追溯到2015年,这表明可能其复用之前的代码。

律师事务所和金融机构继续受到DeathStalker组织的影响最大。但是,在最近的分析中,有理由怀疑旅行社是其一个新的攻击目标行业。

02初步分析

可以确定,在ZIP存档中使用基于LNK的释放器的初始感染方法与之前使用EVILNUM,Powersing和PowerPepper的活动相似,但每种活动似乎都专注于不同的网络钓鱼主题,就好像每个恶意软件家族都由不同的团队操作和/或针对不同类型的受害者。在Janicab案例中,诱饵是一个工业企业生产系统的配置文件,与以前的PowerPepper入侵中使用的诱饵主题类似。

LNK释放器的元数据类似于之前公开报告或公开分析的许多Powersing和Janicab植入物。即,SID、字体系列、字体大小、屏幕缓冲区和窗口大小、运行窗口和 MAC 地址相似。

尽管Janicab和Powersing在执行流程以及VBE和VBS的使用方面非常相似,但它们的LNK结构略有不同。此外,与2015年的旧Janicab Windows变体相比,较新的Janicab变体在结构上发生了显著变化。新的 Janicab 变体还嵌入了一个 CAB 存档,其中包含多个Python文件和入侵生命周期后期使用的其他文件。

展开全文

03执行流程

一旦受害者被诱骗打开恶意 LNK 文件,它就会释放一系列链式恶意软件文件。LNK文件有一个嵌入式的“命令行参数”字段,旨在提取和执行编码的VBScript加载器(1.VBE)。后者将删除并执行另一个嵌入式和编码的VBScript(2.VBE),它将提取包含其他资源和Python库/工具的CAB存档(cab.cab),并通过提取最后阶段来结束感染 - 基于VBScript的植入物称为Janicab。最后阶段将通过在启动目录中部署新的 LNK 文件来保持持久性,并开始与 DDR Web 服务通信以收集实际的命令与控制(C2)IP地址,其特征如下:

Janicab 是一种基于 VBS 的恶意软件,其功能与其历史上出现的恶意代码基本相似。其基本功能包括如命令执行、导入注册表文件,以及下载其他工具的能力,同时保持高反虚拟机特性和防御规避特性。

Janicab可以被认为是一种模块化的解释性语言恶意软件。这意味着威胁参与者能够添加/删除功能或嵌入文件;解释性语言恶意软件以相当低的工作量提供了这种灵活性。例如,在较旧的变体中,被嵌入用于捕获屏幕截图的已知工具,删除并每隔一段时间执行。在后来的变体中,此工具被执行相同工作的其他定制工具所取代。我们还在较旧的变体中看到过录音功能,但在后来的变体中没有。

在较新的变体中,可以看到黑客嵌入了使用 “run_dll_or_py” 函数调用的基于 DLL 的键盘记录器或屏幕捕获实用程序。根据卡巴斯基威胁归因引擎(KTAE),键盘记录器与之前报告的Powersing入侵中使用的另一个键盘记录器非常相似,并以“AdobeUpdater.dll”的名称命名。在 Powersing 中,DLL 是在入侵周期的后期从辅助 C2 服务器获取的。但是,在 Janicab 入侵中,它主要作为十六进制字节数组嵌入,或作为额外资源嵌入在 CAB 文件中。目前知道的有八个不同的 Janicab 版本:1.0.8、1.1.2、1.1.4、1.2.5、1.2.7、1.2.8、1.2.9a、1.3.2。

04Janicab演变历史

对不同Janicab版本的进一步比较表明,在整个恶意软件开发周期中添加了附加功能,同时保留了特定功能。下表显示了在根据参与者的要求和/或逃避安全控制的几个变体的开发过程中引入的新功能:

从版本 1.0.8 开始,Janicab VBS 植入物以字节数组的形式嵌入了多个文件。这些通常是注册表,VBE,PE EXE或DLL文件。在最近的示例中,虽然仍然看到此类资源的嵌入式字节数组,但许多额外资源都放置在 CAB 存档文件中,该文件在阶段1过程中被删除。

05基础架构

Deathstalker的一个显著特点是它使用DDR/Web服务来托管编码字符串,该字符串随后被恶意软件植入程序破译。尽管恶意软件设置中存在其他网络服务链接且未被使用,但可以看到YouTube被用作DDR,还包括指向Google+的链接,该链接已于 2019 年 4 月停止使用。

最近注意到的一个方面是使用了2021年入侵中使用的未列出的旧YouTube链接。从历史上看,可以使用搜索引擎和YouTube搜索功能来查找相应Web服务中使用的模式。但是,由于黑客使用未列出的旧YouTube链接,因此在YouTube上找到相关链接的可能性几乎为零,这也有效地允许黑客重用 C2 基础结构。

新旧Janicab变体仍然对Web服务(YouTubeLinks)使用相同的函数声明,并且在将十进制数转换为后端C2 IP地址的过程中继续使用常量分隔符。

至于实际的C2 IP地址,发现有两个IP地址(87.120.254[.]100和87.120.37[.]68)与PowerPepper入侵中使用的C2(例如PowerPepper C2 87.120.37[.])托管在相同的ASN中,截图如下:

在评估其中一台 C2 服务器时,发现黑客正在托管和调用来自受害计算机的 ICMP shell 可执行文件。名为 icmpxa.exe 的 ICMP shell 工具基于一个旧的 Github 项目,黑客编译了icmpsh-s.c(MD5 5F1A9913AEC43A61F0B3AD7B529B397E),同时更改了其部分内容。此可执行文件的唯一性是能够透视并收集威胁参与者使用的其他以前未知的 C2 服务器。之前在PowerPepper入侵中使用相同的ICMP shell可执行文件,这表明两个恶意软件系列之间可能存在基础架构的重叠。

由于 Janicab 是基于 VBS 的恶意软件,因此可以轻松地从嵌入式函数中派生C2命令。该恶意软件利用 VBS 函数通过 页面的文件名,而不会更改大部分预期功能。

06结论

Janicab是Deathstalker使用的最古老的恶意软件家族,其历史可以追溯到2013年,也是最不为人所知的,这可能是因为相关运营商在实践中的OPSEC标准高于运营EVILNUM和Powersing的同行。尽管可用的公共信息不多,但黑客一直在开发和更新恶意软件代码,更新 LNK 释放器的结构并切换工具集以长时间保持隐身性。

根据数据,黑客仍然专注于中东和欧洲作为其主要行动区域,并对损害法律和金融机构表现出浓厚的兴趣。尽管有这种关注,但看到黑客在极少数情况下针对其他行业;但旅行社就是一个例子。这再次表明,黑客可能是一个具有不同动机的雇佣组织。

由于黑客继续在其历史和最近的入侵中使用基于解释语言的恶意软件,例如 Python、VBE 和 VBS,并且主要在其恶意软件系列中,因此这可以利用防御者的优势,因为应用程序白名单和操作系统强化是阻止威胁参与者入侵尝试的有效技术。防御者应该寻找在无GUI的情况下运行的Internet Explorer进程,因为Janicab在隐藏模式下使用IE与C2通信。在网络上,黑客使用C2 IP地址而不是域名仍然是绕过基于 DNS 的安全控制的主要方法。相反,黑客仍在使用 DDR 作为解析C2 IP地址的方法:一种 DNS 解析的替代技术,它在合法流量中混合使用C2流量,这意味着网络防御者可以查找对所使用的DDR的频繁访问,然后是指向IP地址而不是域名的HTTP会话来发现可能存在的安全问题。

特别声明

本文仅代表作者观点,不代表本站立场,本站仅提供信息存储服务。

分享:

扫一扫在手机阅读、分享本文