【翻译】威胁狩猎:Latrodectus最新分析
朝闻道 发表于 湖北 二进制安全 1137浏览 · 2024-04-09 00:48

翻译:https://www.proofpoint.com/us/blog/threat-insight/latrodectus-spider-bytes-ice

要点

Proofpoint 于 2023 年 11 月下旬首次观察到名为 Latrodectus 的新恶意软件出现在电子邮件威胁活动中。
虽然 Latrodectus 的使用量在 2023 年 12 月至 2024 年 1 月期间有所下降,但 Latrodectus 的使用量在整个 2024 年 2 月和 3 月的活动中有所增加。
它最初在Proofpoint数据中被观察到,由威胁行为者TA577分发,但至少有另一个威胁行为者TA578使用过。
Latrodectus 是一款新兴的下载器,具有各种沙箱规避功能。
虽然与 IcedID 类似,但 Proofpoint 研究人员可以确认它是一种全新的恶意软件,很可能是由 IcedID 开发人员创建的。
Latrodectus 的基础设施与历史悠久的 IcedID 运营重叠。
在调查 Latrodectus 时,研究人员在活动 ID 中发现了新的、独特的模式,这些模式指定了威胁参与者在之前的
IcedID 活动中的使用情况。

概述

Proofpoint 于 2023 年 11 月发现了一种名为 Latrodectus 的新加载程序。从 2024 年 2 月开始,研究人员已发现近十多个传播 Latrodectus 的活动。该恶意软件由被评估为初始访问代理 (IAB) 的参与者使用。

Latrodectus 是一个下载器,其目的是下载有效负载并执行任意命令。虽然初步分析表明 Latrodectus 是 IcedID 的新变种,但随后的分析根据代码中识别的字符串确认它是一种新恶意软件,很可能名为 Latrodectus。根据反汇编样本的特征和恶意软件的功能,研究人员评估该恶意软件可能是由与 IcedID 相同的开发人员编写的。

该恶意软件首先被观察到是由 TA577 分发的,TA577 是一家 IAB,在 2023 年恶意软件中断之前被称为多产的 Qbot 分发者。TA577 在 2023 年 11 月至少在三个活动中使用了 Latrodectus,然后又恢复使用 Pikabot。自 2024 年 1 月中旬以来,研究人员观察到它几乎完全被 TA578 用于电子邮件威胁活动。

活动详情

TA577

仅在 2023 年 11 月发生的三场活动中观察到 TA577 使用 Latrodectus。值得注意的是,2023 年 11 月 24 日发生的一场活动与之前观察到的 TA577 活动有所不同。攻击者没有使用线程劫持,而是在电子邮件正文中使用了各种带有 URL 的不同主题。 URL 导致 JavaScript 文件的下载。如果执行,JavaScript 将创建并运行几个 BAT 文件,这些文件利用curl 来执行 DLL,并使用导出“scab”运行它。

图 1:传播 Latrodectus 的 TA577 活动示例。

2023 年 11 月 28 日,Proofpoint 观察到了最后一次 TA577 Latrodectus 活动。该活动始于线程劫持消息,其中包含指向压缩 JavaScript 文件或压缩 ISO 文件的 URL。压缩的 JavaScript 文件使用curl 下载并执行Latrodectus。压缩的 ISO 文件包含用于执行嵌入式 DLL Latrodectus 的 LNK 文件。两个攻击链都以导出“nail”启动恶意软件。

TA578

自 2024 年 1 月中旬以来,Latrodectus 几乎完全由 TA578 分销。该参与者通常使用联系表单来发起与目标的对话。在 2023 年 12 月 15 日观察到的一项活动中,Proofpoint 观察到 TA578 通过 DanaBot 感染传送 Latrodectus 下载器。今年 12 月的活动是首次观察到使用 TA578 传播 Latrodectus。

2024 年 2 月 20 日,Proofpoint 研究人员观察到 TA578 冒充多家公司发送有关涉嫌侵犯版权的法律威胁。攻击者在多个目标的网站上填写了联系表单,其中的文本包含唯一的 URL,并且 URI 中包含发起联系表单的网站(目标)的域以及被冒充公司的名称(以进一步版权投诉的合法性)。如果该链接被访问,目标将被重定向到个性化的登陆页面,以显示目标的域名和报告版权侵权的被冒充公司的名称 (TA578)。然后,该 URL 从 Google Firebase URL 下载 JavaScript 文件。 Proofpoint 观察到,下载是通过单击“下载”按钮启动的,或者是在首次访问链接时自动下载有效负载而启动的。

如果执行此 JavaScript,它会调用 MSIEXEC 从 WebDAV 共享运行 MSI。 MSI 通过导出“fin”执行捆绑的 DLL 以运行 Latrodectus。

图 2:恶意联系表单提交示例。

近年来,TA578 青睐 IcedID 和 Bumblebee,但自 2023 年 12 月返回归属电子邮件活动数据以来,一直专门使用 Latrodectus 作为初始访问负载。

恶意软件分析

Latrodectus 通过哈希动态解析 Windows API 函数,检查是否存在调试器,收集操作系统信息,检查正在运行的进程,并检查以确保计算机上没有运行现有的 Latrodectus 感染。然后,恶意软件将尝试自行安装、设置自动运行密钥并创建计划任务以实现持久性。 Latrodectus 会将加密的系统信息发布到命令和控制服务器 (C2) 并请求下载机器人。一旦机器人向 C2 注册,它就会向 C2 发送命令请求。

当沃尔玛Walmart于 2023 年 10 月首次报告该恶意软件时,直接提到下载名为“bp.dat”的文件,该文件被确认为 IcedID 机器人组件。自发现以来,恶意软件本身发生了一些小变化,但总体而言,它还相当初级。

更新/降级?字符串解密

最近在 Latrodectus 样本中观察到的一个奇怪的变化是简化的字符串解密例程。一般来说,当恶意软件更新字符串加密时,它会进一步使算法复杂化,但在这种情况下却做了相反的事情。原始沃尔玛博客中记录了字符串解密,其中开发人员使用了独特的伪随机数生成器 (PRNG) 算法,如图 3 所示:

图 3:2023 年 11 月的原始字符串解密 PRNG。

这个 PRNG 被称为解密循环的每次迭代,以改变种子以解密字符串的下一个字节。在 2023 年 3 月 2 日确定的最新版本中,PRNG 被种子变量的增量取代,从而产生以下算法,该算法现在是滚动 XOR 密钥,如图 4 所示:

图 4:当前的字符串解密例程。

恶意软件初始化

该恶意软件首先解析各种功能的批量 API。在所有函数都解析为全局指针后,恶意软件通过执行虚拟化检查来确保其在合适的环境中运行。它检查主机是否具有以下功能,因为缺少这些功能通常表明样本正在沙箱中运行:

  • 如果是 Windows 10 或更高版本,则至少有 75 个正在运行的进程
  • 如果早于 Windows 10,则至少有 50 个正在运行的进程
  • 确保 64 位应用程序在 64 位主机上运行
  • 确保主机具有有效的 MAC 地址

这些检查如下所示:

图 5:环境检查。

在自恶意软件发现以来分析的所有样本中,恶意软件总是注册一个名为“runnung”的互斥锁。如果互斥体已经存在,则表明主机已存在感染,恶意软件将退出,导致新的感染结束。

图 6:互斥体检查。

通过所有检查后,恶意软件将继续初始化该活动的变量。这包括当前用户的用户名、其自身文件的句柄、当前进程的句柄以及活动 ID。活动 ID(一串字母)通过 FNV-1a 进行哈希处理,以创建包含在通信协议中的数字活动 ID。在此示例中,活动 ID 基于字符串“Supted”,如图 7 所示。

分析师注释:研究在 Latrodectus 中观察到的活动 ID 的字符串散列技术有助于研究人员识别之前 IcedID 活动中的新模式。有关详细信息,请参阅下面的 IcedID 部分。

图 7:全局变量初始化。

Latrodectus 为安装恶意软件的每个唯一主机生成机器人 ID。与 IcedID 一样,机器人 ID 是通过主机的序列 ID 生成的。然后,该序列号被传递到机器人 ID 创建函数,该函数将该序列号乘以硬编码常量,然后返回结果并更新序列号以生成机器人 ID 的下一个 DWORD。

图 8:机器人 ID 生成。

然后将该计算值设置在格式字符串中以生成如下字符串:

D0ACE431ABCD00C7D41EF0BA04ED。

图 9:字符串中的机器人 ID。

C2服务器被解密,并在全局配置中设置:

图 10:C2 解密。

然后,恶意软件尝试读取硬编码文件名“update_data.dat”,对其进行解密,并将该文件中的 C2 设置到全局 C2 列表中。

图 11:检查 update_data.dat 是否存在并解析它。

在恶意软件开始通信之前,它需要确保它从 %AppData% 中的指定位置运行。这是从机器人 ID 派生的特定路径。如果恶意软件没有从该位置运行,它会将自身复制到新位置,启动新进程并关闭当前进程。

图 12:用于确定机器人是否正在从 AppData 中的指定位置运行的代码。

此时,恶意软件要么从指定位置运行,要么在新位置重新启动。它创建一个线程,启动恶意软件的通信组件。

恶意软件通信

Latrodectus 与 IcedID 一样,在 POST 请求中发送注册信息,其中字段是连接在一起的 HTTP 参数。

图 13:正在填写的 HTTP 参数。

每个字段的概述如下:

创建该字符串后,将使用密钥“12345”对其进行 RC4 加密。该密钥在迄今为止分析的所有样本中都是一致的。生成的 RC4 加密数据经过 base64 编码并在 HTTP 正文中发送到 C2。

图 14:经过净化的明文请求。
如果机器人来自未列入黑名单并通过了所有其他过滤的 IP,则将返回一个响应,当使用全局密钥“12345”进行解码和解密时,将导致第一个命令解释的命令列表处理程序。


图 15:第一个命令处理程序的命令解析。

下表显示了第一个命令处理程序中支持的四个命令:

来自 C2 的响应示例如下所示。解密和解码后给出上表中的命令:

E3l9I35LXiOWKYHilDWuJoUOTU3NOyjNGnp3muFUOrabzvFw6FpoOQqdBZmsUV5E7FzXWHKgBafR6PcPckBsIB2vIhb3CZ/QHPoEO1hc0A++PpLQjpRWJkk3EFDxH/R5RYjhInO8hc0jTljC91GMVstjk xgQnuZLGBW6AV/gz4VrNMWUxFUtP4fdg/HKCREbRm+gIHkH/7Jc9Q==

当使用全局密钥“12345”进行 Base64 解码和 RC4 解密时,此响应将显示以下内容:

图 16:解密和解码的命令响应。

响应由主要关键字解析。 URLs 关键字将示例中的 C2 替换为命令中列出的三个。当“COMMAND”被处理时,这会触发第二层命令处理程序。处理程序首先检查 COMMAND 后面的标记是否是预期的命令 ID 之一。这些命令支持 IcedID 中也存在的功能。这些命令检查字符串中是否存在“front”,如图 16 所示,用于加载 sysinfo shellcode。该字符串将替换为当前活动的 C2,并附加字符串“/files/”。例如,文件“sysinfo.bin”将从 popfealt[.]one/files/sysinfo.bin 下载。

图 17:命令 ID 检查。

Latrodectus 目前支持的命令:

尽管该恶意软件支持“cmd_run_icedid”下载并执行“bp.dat”,但 Proofpoint 尚未观察到 Latrodectus 将 IcedID 作为后续有效负载。
最终,Latrodectus 是一个通用加载程序,似乎正在积极开发中,但到目前为止,其功能尚未发生突破性的变化。

Latrodectus 基础设施

Tier 1 分析
Cymru 团队于 2023 年末开始对 Latrodectus 基础设施进行研究,在 2023 年 10 月的最初活动中识别出四台一级命令和控制 (C2) 服务器。当时,对这些 C2 的网络遥测 (NetFlow) 数据的分析强调,没有与可能的第 2 层 (T2) 代理服务器进行明显的上游通信。然而,这些 IP 具有几个共同特征,可利用这些特征来查找其他 C2 并随后识别上游 T2 通信,如下所述。

对下面详述的组合特征的查询导致返回的 IP 不到一百个,这是结果广泛相关的积极信号,因为此时不可能存在数百个 C2。

  • Fingerprint Hash = 2ad2ad16d2ad2ad22c2ad2ad2ad2ad89cd2abd9b188d3b42762a4c6aa7ff72
  • Open Ports= 8080, 443
  • Open Ports Banner Hash = eb51f3b6b62c69672dbeced9ce2252675db44222, 9b5ee969ca96ba0d4547a6041c5a86bf80fd4c96
  • Open Ports Banner = 403 Forbidden, localhost

过滤掉大部分属于亚马逊和俄罗斯提供商 IP 空间的误报,剩余的 IP 被分配给经常被 IcedID 和其他植入恶意软件用于 C2 基础设施的托管提供商。此列表包括熟悉的 AS 名称,例如 BLNWX、BV-EU-AS、LITESERVER、MIRHOSTING、XHOST、ZAPPIE-HOST 和 ZEGRUSH。

在这些潜在 C2 的 NetFlow 数据中发现了潜在 T2 服务器的迹象,其中许多 C2 在远程 TCP/80 上发起与该 IP 的通信。对该 IP 的进一步调查导致根据匹配的流量模式识别出其他 C2。尽管 Latrodectus 在其恶意软件配置中使用了隐藏在 Cloudflare 后面的域,但 Cymru 团队确认,许多发现与 T2 通信的 C2 是这些域背后的真实 IP。

C2生命周期

下图说明了 Latrodectus C2 的生命周期,有助于突出显示 C2 活动的模式,包括差距、周转率和并发实时 C2。时间线从 2023 年 9 月 18 日开始,每两周递增一次,直至 2024 年 3 月。垂直线标记每个星期日,而红色条代表各个 C2,按首次出现排序。条的长度反映了它的生命周期,从与 T2 通信的开始到结束。

通过关注 T2 通信,而不是受害者通信或 C2 首次出现在野外时,可以根据威胁行为者的利用情况提供更准确的生命周期表示。

图 18:Latrodectus C2 从 2023 年 9 月到 2024 年马赫的时间线。

自跟踪开始以来,Cymru 团队观察到了 C2 活动的持续周期,从 9 月份的第一次 C2 到 T2 连接开始。即使在 2024 年 1 月的“静默阶段”,这种情况仍在继续,当时没有任何活动被公开识别。随着恶意垃圾邮件活动于 2024 年 2 月上旬恢复,2024 年 1 月的活动可能代表测试阶段、有针对性的攻击或使用恶意垃圾邮件之外的替代分发方法。

图表显示多种形态; 2023 年 10 月至 12 月的活动与 C2 的寿命较长同时发生,而 2023 年 9 月的少数 C2 可能与在野外观察到的初始活动之前的测试有关。经过 12 月的下降后,新的 C2 的创建于 2024 年 1 月恢复,导致自那时以来 C2 的创建更加频繁,但往往持续时间较短。

以原始数据为中心,2024年1月1日至3月18日的分析显示,C2设置率为每1.18天一次,是之前2023年9月21日至12月31日每2.32天一次的比率的两倍。 2024 年 1 月至 3 月期间,C2 的平均寿命下降至 9 天,而 2023 年 9 月至 12 月的平均寿命为 15 天。对这些变化的一种解释可能是,威胁行为者正在加强 Latrodectus 的行动, 2023年试水期。

如前所述,上图(图 18)中的每条垂直线代表周日/新一周的开始,提供了新基础设施通常何时建立的高级视图。初步分析并未确定设置 C2 的首选日期,尽管周末活动有所减少。

图 19:C2 创建的首选日期分析。

然而,对原始数据的进一步分析表明,新的 C2 主要在周五启动与 T2 的通信,可能是为下周一的工作周准备基础设施。周二、周三和周四的安装率相对较高,而周一的安装率较低。如上所述,活动在周末下降,表明威胁行为者通常会在这段时间休息(正如在对网络犯罪威胁行为者的分析中经常看到的那样)。

Tier 2 分析

根据历史网络遥测数据,T2 服务器于 2023 年 8 月左右建立。它具有 X.509 证书主题值,该值也与 2021 年的 BazarLoader C2 相关联。

自 Latrodectus 基础设施初始设置以来,仅发现少数其他 IP 共享此 X.509 证书。我们怀疑其中一个 IP 托管着一个开发服务器,该服务器于 2023 年 7 月首次出现活跃,即 T2 之前一个月,而其他 IP 的角色仍不清楚。尽管如此,Cymru 团队对与 Latrodectus 的合作充满信心。

除了开发服务器之外,研究人员还发现了 Latrodectus 基础设施中的其他值得注意的组件。 Cymru 团队根据主机在基础设施(包括与开发服务器)之间的一致交互,以及对已知适用于网络犯罪相关活动的服务和工具的评估使用情况,精确定位了显示操作员活动模式的主机。

在基础设施中发现了其他主机,但它们的具体角色仍未定义。然而,根据与其他已确认基础设施类似的流量模式和其他特征,研究人员可以假设它们很有趣并且应该受到监控。

基础设施中的任何未知因素仍然是 Cymru 团队调查的重点,研究人员将在了解更多信息后酌情提供更新。

连接到 IcedID

从基础设施分析的角度来看,Cymru 团队确定负责 IcedID 的同一威胁参与者也参与了 Latrodectus 的运营。这个结论是根据一些关键观察得出的。首先,如上所述,两个操作之间的 C2 托管选择是相似的,尽管仅此一点并不是很强的关联。

更确切地说,Latrodectus T2 维护与 IcedID 相关的后端基础设施的连接,Latrodectus 基础设施内的操作员活动包括使用已知在 IcedID 操作中使用的特定跳线盒。

图 20:与 IcedID 基础设施相关的 Latrodectus 基础设施。

自 2023 年 7 月/8 月首次设置 Latrodectus 管理基础设施以来,运营商在 IcedID 和 Latrodectus 活动中使用这些主机的情况一直保持一致。

标准 IcedID 更新:解密之谜

在研究与 Latrodectus 活动 ID 相关的字符串散列技术时,Proofpoint 研究人员应用类似的技术来暴力破解之前观察到的 IcedID 活动 ID,以得出有意义的字符串。研究人员识别了强制 IcedID 活动 ID 中的模式,并随着时间的推移将它们与特定的威胁参与者活动相关联。这种相关性表明,在大多数情况下,与每个威胁参与者相关的派生 IcedID 活动 ID 都遵循特定主题,例如汽车或地理区域。

IcedID 是一种恶意软件,最初被归类为银行木马,于 2017 年首次发现。它还充当其他恶意软件(包括勒索软件)的加载程序。正如之前发布的那样,历史上只有一个 IcedID 版本自 2017 年以来一直保持不变。这一著名的 IcedID 版本现在通常称为“标准 IcedID”,以区别于较新的变体,它由两个主要组件组成:
IcedID 加载程序:加载程序最初是分发的,用于联系 Loader C2 服务器并尝试下载第二个组件,即核心 IcedID Bot。
IcedID bot:包含大部分恶意软件功能的核心模块。

大多数恶意软件都包含一个配置,通常用于输入特定于威胁行为者的详细信息。这些详细信息将区分恶意软件面板中的附属机构,并确定该组织可以看到并进一步利用哪些恶意软件感染。大多数恶意软件家族都采用某种形式的项目或活动 ID 来区分与恶意软件感染相关的用户。

IcedID 加载程序和机器人具有不同的活动 ID 和 C2。从历史上看,IcedID 加载程序配置中的活动 ID 和 C2 通常对于每个活动都是不同的,可用于对相关活动进行聚类并帮助确定威胁行为者的归属。 2022 年,活动活动发生了变化,导致加载程序的配置无法可靠地区分活动和威胁参与者。尽管加载程序发生了变化,IcedID 机器人配置仍然保持一致,并且对于威胁参与者来说通常是唯一的。

图 21:2023 年 9 月 TA577 活动中的 IcedID 配置示例。

2023 年末,Proofpoint 研究人员使用 FNV-1a 哈希算法对 IcedID 机器人活动 ID 进行暴力破解,从而能够洞察活动并关联活动,并有助于对先前可疑的威胁行为者活动进行可靠的归因。用作活动 ID 的数字解析为特定 IcedID 附属机构使用的文字和品牌。这是研究人员第一次观察到活动 ID 的成功派生,并且解析的字符串值得注意。许多与威胁行为者相关的附属机构似乎都有一个针对其活动 ID 的“主题”。例如,TA578 活动 ID 通常使用“Pontiac”或“Hyundai”等汽车主题。 TA544 活动 ID 包含意大利参考文献。 TA579 活动 ID 支持先前怀疑为另一个威胁参与者分发的关系。 TA551 活动 ID 经常引用北约拼音字母,尽管存在异常情况且没有足够的数据可以自信地断言。 TA581 活动 ID 没有独特的模式来支持对攻击者仅仅是传播者或与另一个威胁组织重叠的怀疑。多年来,将特定威胁行为者与某些主题相关联的模式被证明是一致的。

通过识别在多年的 IcedID 活动中证明每个威胁行为者一致的活动 ID 模式,以及其他活动指标,研究人员能够高度可信地将活动归因于跟踪的威胁行为者,尽管 2022 年加载程序配置发生了变化。还提供了有关僵尸网络运营商如何监控附属机构的宝贵见解,并进一步说明看似随机的标识符通常会提供有助于归因的重要数据,可能包括未来的 Latrodectus 活动。

本次更新中的数据是在 2022 年至 2023 年期间收集的。形成的模式和假设仅限于从该时间范围内源自电子邮件的大约 100 个活动收集的恶意软件配置数据以及成功解密的活动 ID 子集。虽然 Proofpoint 计划发布与跟踪的威胁参与者相关的模式和活动 ID 的更全面分析,但下面是最初暴力破解的选定项目 ID 的表格:

结论

Proofpoint 预计 Latrodectus 将越来越多地被整个领域的威胁行为者使用,尤其是那些之前提供过 IcedID 的人。鉴于威胁行为者被评估为初始访问代理,我们鼓励防御者了解恶意软件和相关活动所展示的策略、技术和程序 (TTP)。

Latrodectus 尝试整合沙箱规避功能,符合网络犯罪威胁领域的总体趋势,即恶意软件作者越来越多地试图绕过防御者并确保只有潜在受害者才能收到有效负载。 Proofpoint 观察到 IAB 使用的其他著名恶意软件(包括 Pikabot 和 WikiLoader)也有类似的尝试。

ioc

见原文
https://www.proofpoint.com/us/blog/threat-insight/latrodectus-spider-bytes-ice

0 条评论
某人
表情
可输入 255

没有评论