隐形猎鹰用 Deadglyph 掠过中东上空

隐形猎鹰用 Deadglyph 掠过中东上空

源节点: 2899203

多年来,中东一直享有高级持续威胁(APT)沃土的声誉。 在对知名客户(其中一些位于该地区)系统上的可疑活动进行例行监控时,ESET Research 偶然发现了一个非常复杂且未知的后门,我们将其命名为 Deadglyph。 我们从后门中发现的工件(例如 0xDEADB001,也显示在 参考_Ref111452440 h 1
),再加上同源的存在字形 攻击。 据我们所知,这是对这个先前未记录的后门的首次公开分析,该后门由一个表现出相当复杂程度和专业知识的组织使用。 根据目标和其他证据,我们高度确信 Deadglyph 属于 Stealth Falcon APT 组织。

Deadglyph 的架构很不寻常,因为它包括 协作组件 – 一个是本机 x64 二进制文件,另一个是 .NET 程序集。 这种组合很不寻常,因为恶意软件通常只使用一种编程语言作为其组件。 这种差异可能表明这两个组件是单独开发的,同时还利用了它们所使用的不同编程语言的独特功能。 不同的语言也可能被用来阻碍分析,因为混合代码更难以导航和调试。

后门二进制文件中没有实现传统的后门命令; 相反,它们以附加模块的形式从命令和控制 (C&C) 服务器动态接收。 该后门还具有许多避免被检测到的功能。

在这篇博文中,我们仔细研究了 Deadglyph,并对这个后门、其目的以及我们获得的一些附加组件进行了技术分析。 我们还在大会上展示了有关 Deadglyph 的发现 2023 年实验室大会 会议。

博文要点:

  • ESET Research 发现了一个具有不寻常架构的复杂后门,我们将其命名为 Deadglyph。
  • 主要组件使用机器特定的密钥进行加密。
  • 传统的后门命令是通过从其 C&C 服务器接收的附加模块来实现的。
  • 我们从众多模块中获得了三个——进程创建器、文件读取器和信息收集器。
  • 我们将 Deadglyph 归为 Stealth Falcon 团体。
  • 此外,我们还发现了一个相关的shellcode下载器; 我们假设它有可能用于安装 Deadglyph。

所分析渗透的受害者是中东的一个政府实体,该实体因间谍目的而受到损害。 在 VirusTotal 上发现的相关样本也从该地区(特别是卡塔尔)上传到文件扫描平台。 目标区域显示在地图上 参考_Ref143614671 h 数字 1
.

死亡字形图_01
图 1. Deadglyph 的受害者学; 相关样本已从卡塔尔上传至VirusTotal(颜色较深)

Stealth Falcon(也称为 Project Raven 或 FruityArmor)是一个与阿拉伯联合酋长国有关的威胁组织 根据 MITRE。 Stealth Falcon 自 2012 年以来一直活跃,以中东地区的政治活动家、记者和持不同政见者为目标。 它首先被发现并描述于 公民实验室,其中发表了 分析 2016 年的间谍软件攻击活动。

2019 年 XNUMX 月,路透社发表 调查报告 乌鸦计划,据称该计划雇用了前国家安全局特工,其目标与“隐形猎鹰”相同类型。 根据这两份涉及相同目标和袭击的报告,国际特赦组织 已经结束 (显示为 参考_Ref144978712 h 数字 2
)Stealth Falcon 和 Project Raven 实际上是同一组。

死亡字形图2
图 2. Claudio Guarnieri 将 Stealth Falcon 与 Project Raven 连接起来

2019年XNUMX月,我们 发表研究 在一个后门上,归因于 Stealth Falcon,它使用了一种不寻常的技术, 后台智能传输服务,用于 C&C 通信。 现在,我们揭示了对 Stealth Falcon 间谍工具集最新成员的深入分析结果。

死亡字形后门

Deadglyph 的加载链由多个组件组成,如图所示 参考_Ref144978760 h 数字 3
。 初始组件是注册表 shellcode 加载器,它从注册表加载 shellcode。 提取的 shellcode 反过来会加载后门的本机 x64 部分——执行器。 执行器随后加载后门的.NET部分——Orchestrator。 值得注意的是,系统磁盘上唯一作为文件的组件是初始组件,它采用动态链接库(DLL)的形式。 其余组件被加密并存储在二进制注册表值中。

死亡字形图_02
图 3. Deadglyph 加载链组件

虽然初始妥协向量的精确方法尚未确定,但我们怀疑安装程序组件参与了部署其他组件并在系统内建立持久性。

在本节的其余部分中,我们将分析每个组件。

注册表 shellcode 加载器

Deadglyph 的初始组件是一个带有单个导出的小型 DLL,名为 1。 该组件使用以下方式持久化 Windows Management Instrumentation (WMI) 事件订阅 并充当注册表 shellcode 加载器。 它是通过命令行执行的 rundll32 C:WINDOWSSystem32pbrtl.dll,#1.

注册表 shellcode 加载器通过使用 RC4 解密 Windows 注册表中存储的加密 shellcode 的路径来开始其操作。 我们怀疑每个受害者的路径都是独一无二的; 在这里分析的情况下,注册表路径是:

SoftwareClassesCLSID{5abc7f42-1112-5099-b082-ce8d65ba0c47}cAbRGHLg

根注册表项是 港灯 or HKCU,取决于当前进程是否以提升的权限运行。 在其他组件中可以找到相同的逻辑。

接下来,加载程序使用从 原始 SMBIOS 固件表。 使用此密钥,它加载、解密,然后执行 shellcode。 需要强调的是,这种密钥派生方法可确保如果加载程序在不同的计算机上执行,则不会发生正确的解密。

有趣的是,加载器还可以通过其中的标志进行配置 。数据 部分使用硬编码密钥来解密 shellcode,而不是特定于机器的密钥。

我们发现了模仿微软公司的同形文字攻击 版本信息 该资源和其他 PE 组件的资源。 此方法使用不同的 Unicode 字符,这些字符在视觉上与原始字符相似,但在本例中并不完全相同,特别是希腊大写字母 San (U+03FA, Ϻ) 和西里尔小写字母 O (U+043E, о) Ϻ集成电路оsо金融时报公司о比例оn.

注册表shellcode

注册表 shellcode 由两部分组成,包括解密例程和加密主体。 首先,解密例程将加密体的每个字节向左旋转一位(罗尔0x01)。 随后,控制权被转移到这个解密的主体。 解密后的主体由PE加载器和PE文件组成,后者是Executor,代表后门的原生部分。 该加载器负责解析并加载相关的PE文件。

执行者

Executor 是 Deadglyph 后门的原生 x64 部分,它执行以下操作:

  • 加载其配置,
  • 初始化.NET运行时,
  • 加载后门的嵌入式 .NET 部分(Orchestrator),以及
  • 充当 Orchestrator 的库。

首先,嵌入的两个默认配置 。数据 部分经过 AES 解密。 这些配置包含各种参数,包括加密密钥、安全和规避设置以及后续组件的入口点。

在初始执行期间,这两个默认配置存储在 Windows 注册表中,在后续运行时从此处加载它们,从而实现更新。 每个配置的注册表路径均按以下格式生成:

{HKCU|HKLM}软件类CLSID{ }(默认)

是生成的 GUID,对于每个受害者来说都是唯一的。

接下来,.NET 运行时被初始化,然后执行器 RC4 解密后门的 .NET 部分(称为 Orchestrator)。 Orchestrator 位于 .rsrc 执行者部分。 配置将 Orchestrator 的执行方法指定为入口点。 此外,还提供了一种独特的结构,以方便协调器访问执行器的功能。

启动 Orchestrator 后,Executor 充当 Orchestrator 的支持库。 Executor包含许多有趣的函数; 我们将在下一节中描述其中的一些,并结合 Orchestrator 和进一步加载的模块的使用情况。

Orchestrator的

Orchestrator 用 .NET 编写,是 Deadglyph 后门的主要组件。 该组件的主要角色涉及与 C&C 服务器建立通信并执行命令,通常通过执行器的中介角色来促进。 与前面的组件相比,Orchestrator 是混淆的,采用 .NET Reactor。 在内部,后门被称为 代理人,这是各种后利用框架中客户端部分的通用名称。

初始化

Orchestrator 首先从资源加载其配置和两个嵌入式模块,每个模块都有自己的一组配置。 这些资源是 放气 压缩和 AES 加密的。 它们通过 SHA-1 散列到资源名称中的 ID 引用。 这些资源的概述见 参考_Ref111452440 h 1
.

表 1. Orchestrator 资源

 

资源名称

ID(十进制)

ID(十六进制)

课程描述

43ed9a3ad74ed7ab74c345a876b6be19039d4c8c

2570286865

0x99337711

协调器配置。

3a215912708eab6f56af953d748fbfc38e3bb468

3740250113

0xDEEFB001

网络模块。

42fb165bc9cf614996027a9fcb261d65fd513527

3740250369

0xDEEFB101

网络模块配置。

e204cdcf96d9f94f9c19dbe385e635d00caaf49d

3735924737

0xDEADB001

定时器模块。

abd2db754795272c21407efd5080c8a705a7d151

3735924993

0xDEADB101

定时器模块配置。

Orchestrator 和嵌入式模块的配置以 XML 格式存储。 Orchestrator 配置的示例如下所示 参考_Ref111452611 h
数字 4
.

死亡字形图_04
图 4. Orchestrator 配置

Orchestrator 配置条目的描述如下所示 参考_Ref111452782 h 2
.

表 2. Orchestrator 配置条目

课程描述

k


AES 密钥用于持久模块配置。

a


网络模块初始化方法名称。

b


未知的网络模块相关标志。

c


定时器模块初始化方法名称。

d


标记启用对资源使用计算机特定的 AES 密钥(系统 UUID)。

p


网络模块资源ID。

t


定时器模块资源ID。

加载资源组件后,将创建多个线程来执行不同的任务。 其中一个线程负责执行环境检查,这是执行器内实现的功能。 另一个线程致力于与 C&C 服务器建立定期通信,从而能够检索命令。 最后,采用一组三个线程来执行接收到的命令并随后将任何生成的输出传输回 C&C 服务器。

环境检查线程监视正在运行的进程以识别不需要的进程。 该线程使用两个不同的进程名称列表进行操作。 如果检测到第一个列表上的进程,C&C 通信和命令执行将暂停,直到不需要的进程不再存在。 如果第二个列表中的任何进程有匹配项,后门将立即退出并自行卸载。

在分析的实例中这两个列表都没有配置,因此我们不知道通常会检查哪些进程; 我们认为它可能是为了逃避可以检测可疑活动并导致发现后门的分析工具。

沟通

Orchestrator 利用两个嵌入式模块进行 C&C 通信 - 计时器和网络。 与 Orchestrator 一样,这些模块也使用 .NET Reactor 进行混淆。 两个模块的配置均由 Orchestrator 提供。 Orchestrator 中包含模块的预设配置; 或者,Orchestrator 还可以从注册表加载更新的配置版本:

{HKCU|HKLM}软件类CLSID{ }

后门包含一个与通信相关的有趣的安全措施。 如果后门在超过执行器中配置的预定义阈值的时间内无法与 C&C 服务器建立通信,则会触发自卸载机制。 该时间阈值以小时为单位指定,在所检查的案例中设置为一小时。

这种方法有双重目的。 一方面,它可以防止向无法访问的服务器生成冗余网络请求。 另一方面,如果操作员失去对后门的控制,它会降低后续检测的机会。

定时器模块

这个小模块以可配置的时间间隔执行指定的回调。 Orchestrator 与 Network 模块结合使用,定期与 C&C 服务器进行通信。 为了防止在网络日志中创建可检测的模式,执行间隔将根据配置中指定的百分比进行随机化。 在分析的实例中,间隔设置为五分钟,并引入了 ±20% 的随机性变化。

另一种避免周期性通信中可检测到的网络模式的方法是生成发送到 C&C 服务器的请求。 这种机制在执行器中实现,涉及在请求中包含不同长度的填充(由随机字节组成),从而产生不同大小的请求。

网络模块

网络模块实现与其配置中指定的 C&C 服务器的通信。 它可以使用 HTTP(S) POST 请求将数据发送到 C&C 服务器。 值得注意的是,它提供了多种获取代理配置详细信息的机制。 此功能表明可能会关注无法直接访问互联网的环境。

解密(和美化)配置的示例如下所示 参考_Ref144978805 h 数字 5
.

死亡字形图_06
图 5. 网络模块配置

配置条目包含与网络通信相关的详细信息 – C&C URL、HTTP 用户代理和可选的代理配置。

与 C&C 服务器通信时,在 HTTPS 下使用具有加密内容的自定义二进制协议。

命令

Orchestrator 以任务的形式从 C&C 服务器接收命令,这些命令排队等待执行。 处理的任务分为三种:

  • 协调器任务,
  • 执行者任务,以及
  • 上传任务。

前两种是从 C&C 服务器接收的,第三种是内部创建的,用于上传命令和错误的输出。

协调器任务

Orchestrator 任务提供了管理网络和计时器模块的配置以及取消待处理任务的能力。 Orchestrator 任务的概述如下所示 参考_Ref111101783 h 3
.

表 3. Orchestrator 任务

Type

课程描述

0x80


设置网络和定时器模块的配置。

0x81


获取网络和定时器模块的配置。

0x82


取消任务。

0x83


取消所有任务。

执行者任务

执行器任务提供了管理后门和执行附加模块的能力。 值得注意的是,传统的后门功能并不是固有地存在于二进制文件本身中。 相反,这些函数是以PE文件或shellcode的形式从C&C服务器获取的。 如果没有这些额外的模块,后门的全部潜力仍然未知,这些模块有效地释放了其真正的功能。 模块任务的概述显示在 参考_Ref117677179 h 4
,其中包括有关几个已识别模块的详细信息。 相似地, 参考_Ref117677188 h 5
提供与执行器相关的管理任务的概述。

表 4. 执行器任务 – 模块

Type

课程描述

0x??–0x63


不明

0x64


文件阅读器

0x65


不明

0x66


不明

0x67


不明

0x68


不明

0x69


流程创建者

0x6A


不明

0x6B


不明

0x6C


信息收集器

0x6D


不明

0x6E


不明

表 5. 执行器任务 – 管理

Type

课程描述

0x6F-0x76

未实现

0x77

设置执行器配置

0x78

获取执行器配置

0x79-0x7C

未实现

0x7D

更新

0x7E

退出

0x7F

卸载

设置 Executor 配置的命令可以更改:

  • 不需要的进程列表,
  • C&C通信失败的时间阈值,以及
  • 执行附加模块的时间限制。
模块

我们成功地从C&C服务器获取了三个独特的模块,每个模块对应于不同的Executor任务类型,如下所示 参考_Ref117677179 h 4 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F005200650066003100310037003600370037003100370039000000
。 根据现有信息,我们估计总共有九到十四个模块。 由于这些模块实际上是后门命令,因此它们需要执行一项基本操作,然后可以选择返回其输出。 我们获得的模块是具有一个未命名导出(序号 1),其中它们解析必要的 API 函数并调用 main 函数。

执行时,模块提供API解析功能,可以解析Windows API和自定义Executor API。 Windows API 由 DWORD 哈希引用,该哈希是根据 API 及其 DLL 的名称计算得出的。 小哈希值(<41)会被特殊处理,参考 Executor API 函数。 Executor API 总共包含 39 个模块可访问的函数。 这些功能涉及各种操作,包括:

  • 文件操作,
  • 加密和散列,
  • 压缩,
  • PE加载,
  • 访问令牌模拟,以及
  • 效用。

在本节的其余部分中,我们将描述我们获得的模块。

流程创建者

模块 0x69 将指定的命令行作为新进程执行,并将结果输出提供回 Orchestrator。 进程可以在不同的用户下创建,并且可以限制其执行时间。 值得注意的是,一个不寻常的 作业 API 在此模块的功能中使用。

该模块通过命令行提供 cmd.exe /c 任务列表 /v.

我们假设它作为自动发出的空闲命令,而操作员则等待受感染计算机上发生有趣的事情。

信息收集器

模块 0x6C 通过 WMI 查询收集有关计算机的大量信息并将其传递回 Orchestrator。 收集有关以下内容的信息:

  • 操作系统,
  • 网络适​​配器,
  • 安装的软件,
  • 驱动器
  • 服务,
  • 驱动程序,
  • 过程中,
  • 用户,
  • 环境变量,以及
  • 安全软件。
文件阅读器

模块 0x64 读取指定的文件并将内容传递回 Orchestrator。 或者,它可以在读取后删除该文件。

我们看到这个模块用于检索受害者的 Outlook 数据文件

c:用户AppDataLocalMicrosoftOutlookoutlook.ost.

带有 shellcode 下载器的链

在调查 Deadglyph 的过程中,我们遇到了一个可疑的 CPL 文件,该文件使用过期证书进行签名,并且没有带时间戳的副署名,该文件已从卡塔尔上传到 VirusTotal。 经过仔细检查,发现这个 CPL 文件的功能是多级 shellcode 下载器,与 Deadglyph 具有某些代码相似之处。 装载链如图所示 参考_Ref143693067 h 数字 6
.

死亡字形图_03
图 6. Shellcode 下载器加载链

在其作为第一阶段的初始形式中,该文件预计有一个 .CPL 扩展名(控制面板文件),旨在通过双击操作执行。 以这种方式执行时,嵌入的 shellcode 会进行 XOR 解密,并检查正在运行的进程以识别适合后续注入的主机进程。

If avp.exe (卡巴斯基端点安全进程)正在运行, %windir%system32UserAccountBroker.exe 用来。 否则,将使用默认浏览器。 然后,它创建处于挂起状态的主机进程,通过劫持其主线程注入shellcode,并恢复该线程。

第二阶段,shellcode,由两部分组成。 shellcode 的第一部分使用 Deadglyph 中使用的相同独特哈希计算技术解析 API 哈希,并解密具有进程名称的字符串。 它启动一个自删除线程,负责覆盖并随后擦除第一阶段文件。 接下来,shellcode 继续检查当前活动的进程,以安全解决方案为目标。

如果检测到任何指定的进程,shellcode 将创建一个具有最低优先级的休眠线程(线程优先级空闲)并允许其在终止操作之前保持活动状态 60 秒。 此间隔可能是作为一种预防措施来实施的,以逃避安全解决方案所采用的某些检测机制。 最后,shellcode 继续调用其代码的第二部分的执行。

shellcode 的第二部分加载第三阶段的嵌入式 PE 文件,并使用序号调用其导出 1.

第三阶段是 DLL,充当 .NET 加载程序,并将有效负载包含在其 .rsrc 部分。

为了加载有效负载,.NET 运行时被初始化。 在 .NET 初始化期间,执行了两种有趣的技术,似乎是为了逃避 Windows 反恶意软件扫描接口 (AMSI) 扫描:

  • .NET 加载程序暂时挂接 GetModuleHandleW 导入已加载的 dll文件, 调用时 ICorRuntimeHost::启动。 钩子篡改返回值时 GetModuleHandleW 被称为 。 它返回一个指向没有节的虚拟 PE 的指针。
  • 然后它巧妙地修补 Amsi初始化 导入名称字符串 .rdata 加载的部分 dll文件aMSIi初始化.

第四阶段是 .NET 程序集,用 ConfuserEx 进行混淆,充当 shellcode 下载器。 首先,它从其资源中对 XML 格式的配置进行异或解密。 提取的配置的美化版本呈现在 参考_Ref143695453 h 数字 7
。 配置条目包含与网络通信和阻止列表进程相关的详细信息。

死亡字形图_05
图 7. Shellcode 下载器配置

在继续之前,它会根据配置中的阻止列表进程列表检查正在运行的进程。 如果检测到匹配,则执行停止。 值得注意的是,在分析的实例中,并未设置此阻止列表。

接下来,它使用配置中指定的参数(URL、用户代理和可选的代理)向 C&C 服务器发送 HTTP GET 请求以检索一些 shellcode。 遗憾的是,在我们的调查过程中,我们无法从 C&C 服务器获取任何 shellcode。 尽管如此,我们假设正在检索的内容可能会充当 Deadglyph 的安装程序。

接下来,检索到的 shellcode 将在新创建的线程中执行。 等待 shellcode 线程完成执行后,shellcode 下载器会删除该目录中的所有文件 %WINDIR%ServiceProfilesLocalServiceAppDataLocalTempTfsStoreTfs_DAV.

最后,它在 20 秒间隔后尝试使用后续命令删除自身,然后结束其操作并退出:

cmd.exe 选择 /CY /N /DY /T 20 & Del /f /q

这种自我删除在这条链中没有意义。 这是因为 shellcode 下载器被注入后在浏览器或系统进程中执行,而不是作为独立的可执行文件运行。 而且,初始文件已经被第二阶段删除了。 这一观察结果表明,shellcode 下载器可能不是该链的专有有效负载,也可能在其他操作中单独使用。

结论

我们发现并分析了 Stealth Falcon 组织使用的复杂后门,我们将其命名为 Deadglyph。 它具有不寻常的架构,其后门功能由其 C&C 以附加模块的形式提供。 我们设法获得了其中三个模块,揭示了 Deadglyph 全部功能的一小部分。

值得注意的是,Deadglyph 拥有一系列反检测机制,包括对系统进程的持续监控和随机网络模式的实施。 此外,后门能够自行卸载,以最大限度地降低在某些情况下被检测到的可能性。

此外,我们的调查使我们在 VirusTotal 上发现了一个引人注目的多级 shellcode 下载器链。 我们怀疑这个下载器链可能在 Deadglyph 的安装过程中被利用。

如果对我们在 WeLiveSecurity 上发表的研究有任何疑问,请通过以下方式联系我们 威胁intel@eset.com.
ESET Research 提供私人 APT 情报报告和数据源。 有关此服务的任何查询,请访问 ESET 威胁情报 页面上发布服务提醒。

国际石油公司

SHA-1

文件名

检测

课程描述

C40F1F46D230A85F702DAA38CFA18D60481EA6C2

dll文件

Win64/Deadglyph.A

注册表 Shellcode 加载器。

740D308565E215EB9B235CC5B720142428F540DB

Win64/Deadglyph.A

Deadglyph 后门 – 执行者。

1805568D8362A379AF09FD70D3406C6B654F189F

MSIL/Deadglyph.A

Deadglyph 后门 – Orchestrator。

9CB373B2643C2B7F93862D2682A0D2150C7AEC7E

MSIL/Deadglyph.A

Orchestrator 网络模块。

F47CB40F6C2B303308D9D705F8CAD707B9C39FA5

MSIL/Deadglyph.A

Orchestrator 计时器模块。

3D4D9C9F2A5ACEFF9E45538F5EBE723ACAF83E32

Win64/Deadglyph.A.gen

流程创建者模块。

3D2ACCEA98DBDF95F0543B7C1E8A055020E74960

Win64/Deadglyph.A

文件读取器模块。

4E3018E4FD27587BD1C566930AE24442769D16F0

Win64/Deadglyph.A

信息收集模块。

7F728D490ED6EA64A7644049914A7F2A0E563969

Win64/注射器.MD

shellcode 下载器链的第一阶段。

证书

序列号

00F0FB1390F5340CD2572451D95DB1D92D

指纹

DB3614DAF58D041F96A5B916281EA0DC97AA0C29

学科 CN

瑞美有限公司

主题 O

瑞美有限公司

主题 L

圣奥尔本斯

主题 S

赫特福德郡

主题 C

GB

电邮

rhm@rhmlimited[.]co.uk

有效来自

2021-03-16 00:00:00

有效

2022-03-16 23:59:59

C&C服务器

IP

域名

初见

评论

185.25.50[.]60

chessandlinkss[.]com

2021-08-25

Deadglyph C&C 服务器。

135.125.78[.]187

easymathpath[.]com

2021-09-11

Deadglyph C&C 服务器。

45.14.227[.]55

joinushealth[.]com

2022-05-29

Shellcode 下载器 C&C 服务器。

MITRE ATT&CK 技术

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

战术

ID

名字

课程描述

资源开发

T1583.001

收购基础设施:领域

Stealth Falcon 已注册 C&C 服务器域名并获取代码签名证书。

T1583.003

获取基础架构:虚拟专用服务器

Stealth Falcon 使用 VPS 托管提供商作为 C&C 服务器。

T1587.001

开发能力:恶意软件

Stealth Falcon 开发了自定义恶意软件,包括自定义加载程序和 Deadglyph 后门。

T1588.003

获取能力:代码签名证书

Stealth Falcon 已获得代码签名证书。

执行

T1047

Windows管理规范

Deadglyph 使用 WMI 来执行其加载链。

T1059.003

命令和脚本解释器:Windows 命令外壳

Shellcode下载器使用 CMD.EXE 删除自身。

T1106

原生API

Deadglyph 模块使用 创建进程W创建进程为用户W 用于执行的 API 函数。

T1204.002

用户执行:恶意文件

shellcode下载器链需要用户双击并执行它。

坚持

T1546.003

事件触发执行:Windows Management Instrumentation 事件订阅

初始 Deadglyph 加载程序使用 WMI 事件订阅进行持久化。

防御规避

T1027

混淆的文件或信息

Deadglyph 组件已加密。 Deadglyph Orchestrator 和嵌入式模块使用 .NET Reactor 进行混淆。

shellcode 下载器使用 ConfuserEx 进行混淆。

T1070.004

指标删除:文件删除

Deadglyph 可以自行卸载。

shellcode 下载器链会删除自身并删除 WebDAV 缓存中的文件。

T1112

修改注册表

Deadglyph 将其配置和加密的有效负载存储在注册表中。

T1134

访问令牌操作

Deadglyph 可以冒充其他用户。

T1140

去混淆/解码文件或信息

Deadglyph 解密加密的字符串。

shellcode 下载器链解密其组件和配置。

T1218.011

系统二进制代理执行:Rundll32

初始 Deadglyph 加载程序使用以下命令执行 rundll32.exe.

T1480.001

执行护栏:环境键控

Deadglyph 使用从系统 UUID 派生的计算机特定密钥进行加密。

T1562.001

削弱防御:禁用或修改工具

shellcode下载器通过修补避免AMSI扫描 dll文件 在记忆中 。

T1620

反射代码加载

Deadglyph 使用自定义 PE 加载器反射加载其模块。

药物发现

T1007

系统服务发现

A Deadglyph 模块使用 WMI 查询发现服务 从 Win32_Service 选择*。

T1012

查询注册表

shellcode 下载器链在注册表中查询默认浏览器。

T1016

系统网络配置发现

Deadglyph 模块使用 WMI 查询发现网络适配器 从 Win32_NetworkAdapter 选择 *SELECT * FROM Win32_NetworkAdapterConfiguration 其中 InterfaceIndex=%d.

T1033

系统所有者/用户发现

Deadglyph 模块通过 WMI 查询发现用户 从 Win32_UserAccount 选择 *.

T1057

进程发现

Deadglyph 模块使用 WMI 查询发现进程 从 Win32_Process 选择*.

T1082

系统信息发现

Deadglyph 模块使用 WMI 查询发现系统信息,例如操作系统版本、驱动器、环境变量和驱动程序。

T1518

软件发现

Deadglyph 模块使用 WMI 查询发现已安装的软件 从 Win32_Product 中选择 *.

T1518.001

软件发现:安全软件发现

Deadglyph 模块使用 WMI 查询发现安全软件 从防病毒产品中选择 *, 从反间谍软件产品中选择 *从防火墙产品中选择 *.

shellcode 下载器链检查正在运行的进程以获得安全解决方案。

购物

T1005

来自本地系统的数据

Deadglyph 有一个用于读取文件的模块。

指挥和控制

T1071.001

应用层协议:Web 协议

Deadglyph 和 shellcode 下载器通过 HTTP 协议与 C&C 服务器通信。

T1090

代理

Deadglyph 和 shellcode 下载器可以使用 HTTP 代理进行 C&C 通信。

T1573.001

加密通道:对称密码学

Deadglyph 使用 AES 加密 C&C 通信。

渗出

T1041

通过 C2 通道进行渗透

Deadglyph 使用 C&C 通道进行渗透。

时间戳记:

更多来自 我们安全生活