介绍
只要网络犯罪分子想要赚钱,他们就会继续制造恶意软件,只要他们继续制造恶意软件,我们就会继续对其进行分析、发布报告并提供保护。上个月我们讨论了广泛的网络犯罪主题。例如,我们发布了一份关于地下论坛上发现的新恶意软件的私人报告,我们将其称为 ASMCrypt(与DoubleFinger 加载程序相关)。但网络犯罪领域正在发生更多事情,因此我们还发布了有关 Lumma 窃取程序和 Zanubis Android 银行木马新版本的报告。
ASMC加密
正如我们之前的博客文章中提到的,我们监控许多地下论坛。在其中一个上,我们看到了一则广告,宣传一种名为 ASMCrypt 的新加密器/加载器变体。此类恶意软件背后的想法是加载最终的有效负载,而无需加载过程或有效负载本身被 AV/EDR 等检测到。这听起来很像我们在这里讨论的 DoubleFinger 加载器。
事实上,经过仔细分析,我们非常有信心地认为ASMCrypt是DoubleFinger的进化版本。然而,ASMCrypt 的工作方式略有不同,它更像是 TOR 网络上运行的实际服务的“前台”。
那么它是怎样工作的?首先,买家获得 ASMCrypt 二进制文件,该二进制文件使用硬编码凭据通过 TOR 网络连接到恶意软件的后端服务。如果一切正常,将显示选项菜单:
买家可以选择以下选项:
- 隐形或隐形注入方式;
- 有效负载应注入的进程;
- 启动持久化的文件夹名称;
- 存根类型:恶意软件本身伪装成 Apple QuickTime,或者旁加载恶意 DLL 的合法应用程序。
选择所有所需的选项并按下构建按钮后,应用程序将创建一个隐藏在 .png 文件内的加密 blob。该图像必须上传到图像托管站点。上面最后一个要点中的恶意 DLL(或二进制文件)也会被创建,并将由网络犯罪分子分发。
当恶意 DLL 在受害者系统上执行时,它会下载 .png 文件,对其进行解密,将其加载到内存中,然后执行。
Lumma
用 C++ 编写的 Arkei 窃取程序于 2018 年 5 月首次出现,并在过去几年中多次分叉/更名。它曾被称为 Vidar、Oski、Mars,现在是 Lumma,与 Arkei 有 46% 的重叠。随着时间的推移,所有变体的主要功能保持不变:从加密钱包中窃取缓存文件、配置文件和日志。它可以通过充当浏览器插件来做到这一点,但它也支持独立的币安应用程序。
但首先是感染媒介。Lumma 通过模仿合法 .docx 到 .pdf 网站的欺骗网站进行分发。上传文件后,返回的文件带有双扩展名 .pdf.exe。
Lumma 本身于 2022 年 8 月首次出现在我们的雷达上,当时我们检测到了新样本。大约在同一时间,网络安全爱好者 Fumik0_ 在推特上表示,Lumma 是 Mars 的“分叉/重构”。从那时起,Lumma 经历了许多变化,我们将在下面重点介绍其中一些变化:
- 我们只发现一个样本(MD5 6b4c224c16e852bdc7ed2001597cde9d)具有收集系统进程列表的功能。同一样本还使用了不同的 URL 与 C2 通信(/winsock 而不是 /socket.php);
- 我们还发现了一个似乎是调试版本的样本(MD5 844ab1b8a2db0242a20a6f3bbceedf6b)。当到达某些代码片段时,会向 C2 发送通知。同样,它使用不同的 URL (/windbg)。
- 在最近的样本(MD5 a09daf5791d8fd4b5843cd38ae37cf97)中,攻击者将 User-Agent 字段更改为“HTTP/1.1”。目前还不清楚为什么要这样做;
- 虽然之前的所有样本(包括上述三个样本)都从 C2 下载了适用于 32 位系统的附加库,以便可以解析特定的浏览器相关文件(例如密码等),但 MD5 5aac51312dfd99bf4e88be482f734c79 只是将整个数据库上传到 C2 ;
- MD5 d1f506b59908e3389c83a3a8e8da3276有字符串加密算法。它们现在采用十六进制编码并使用 XOR 密钥(字符串的前 4 个字节)进行加密。
- 我们看到的最大变化之一涉及 MD5 c2a9151e0e9f4175e555cf90300b45c9。此示例支持从 C2 检索的动态配置文件。配置采用 Base64 编码并与配置文件的前 32 字节进行异或。
“调试”示例的代码片段
Zanubis
Zanubis 是一种 Android 银行木马,于 2022 年 8 月左右首次出现,目标是秘鲁的金融机构和加密货币交易用户。Zanubis 的主要感染途径是通过冒充合法的秘鲁 Android 应用程序,然后诱骗用户启用辅助权限,以完全控制设备。
我们在 2023 年 4 月左右在野外发现了更多 Zanubis 样本。该恶意软件伪装成秘鲁政府组织 SUNAT(Superintendencia Nacional de Aduanas y de Administración Tributaria)的官方 Android 应用程序。我们探索了该恶意软件的新设计和功能,它似乎经历了几个进化阶段,达到了新的复杂程度。
Zanubis 在 Obfuscapk 的帮助下进行混淆,Obfuscapk 是一种流行的 Android APK 文件混淆器。受害者向恶意应用程序授予可访问权限,从而允许其在后台运行后,恶意软件会使用 WebView 加载用于查找债务的合法 SUNAT 网站。这里的目的是让毫无戒心的用户相信该应用程序是 SUNAT 服务生态系统的一部分。
与 C2 的通信依赖于 WebSocket 和名为 Socket.IO 的库。后者允许恶意软件与 C2 建立持久连接,从而提供故障转移选项(从 WebSocket 到 HTTP,反之亦然)。另一个优点是,它为 C2 提供了一个可扩展的环境,Zanubis 的所有新感染都可以在需要时从 C2 大规模接收命令(也称为事件)。一旦恶意软件启动,植入程序就会调用一个函数来检查与 C2 的连接。它与同一 C2 服务器建立两个连接,但它们执行不同类型的操作,并且仅在 C2 请求时才会建立第二个连接。
Zanubis 故意不考虑预先填充和硬编码的目标应用程序列表。近年来,恶意软件开发人员倾向于在目标列表中添加或删除应用程序的名称。为了在植入物上设置目标应用程序,C2 发送事件config_packages。随事件发送的 JSON 对象包含一个数组,指定恶意软件应监控的应用程序。每次屏幕上发生事件(例如应用程序打开)时,恶意软件都会解析目标应用程序列表,恶意软件使用 onAccessibilityEvent 检测到该事件功能。一旦发现列表中的应用程序在设备上运行,Zanubis 将根据其配置采取以下两种操作之一来窃取受害者的信息:记录事件/密钥或记录屏幕。
之前,我们提到过从受感染设备初始化第二个连接,这为 C2 提供了更多选项。Zanubis建立这个新连接后,它会向服务器发送一个VncInit事件,通知它第二个功能集的初始化已完成,并且它会每秒发送有关屏幕渲染的信息,例如显示尺寸。我们可以假设这是运营商控制受感染手机或后门的一种方式。
第二组中一个有趣的功能是bloqueoUpdate事件。这是该恶意软件最具侵入性和说服力的行为之一:它伪装成 Android 更新,从而阻止手机被使用。当“更新”运行时,手机仍然无法使用,无法锁定或解锁,因为恶意软件会监视这些尝试并阻止它们。
虚假更新将用户锁定在手机之外
根据我们的分析,目标应用是秘鲁的银行和金融实体。这一事实与我们的遥测数据相结合,使我们确定 Zanubis 专门针对该国家/地区的用户。目标应用程序列表包含 40 多个包名称。迄今为止收集的 Zanubis 样本能够感染任何 Android 手机,但它们都是以西班牙语作为系统语言编写的。
结论
恶意软件在不断发展,正如 Lumma 窃取程序所示,它具有多种功能不同的变体。Zanubis 还渴望成为一个全副武装的银行木马,可能造成财务损失并窃取移动用户的个人数据。恶意代码和网络犯罪 TTP 的不断变化对防御团队来说是一个挑战。
妥协指标 (MD5)
Lumma
6b4c224c16e852bdc7ed2001597cde9d
844ab1b8a2db0242a20a6f3bbceedf6b
a09daf5791d8fd4b5843cd38ae37cf97
5aac51312dfd99bf4e88be482f734c79
d1f506b59908e3389c83a3a8e8da3276
c2a9151e0e9f4175e555cf90300b45c9
Zanubis
054061a4f0c37b0b353580f644eac554
a518eff78ae5a529dc044ed4bbd3c360
41d72de9df70205289c9ae8f3b4f0bcb
9b00a65f117756134fdb9f6ba4cef61d
8d99c2b7cf55cac1ba0035ae265c1ac5
248b2b76b5fb6e35c2d0a8657e080759
a2c115d38b500c5dfd80d6208368ff55
转载来源: https://securelist.com/crimeware-report-asmcrypt-loader-lumma-stealer-zanubis-banker/110512/
图片来源网络侵权可联系删除