新型信息窃取器Arkanix:窃取浏览器数据、Wi-Fi凭据与加密钱包的恶意软件分析

本文详细分析了新发现的信息窃取恶意软件Arkanix,它使用Python和C++两种语言编写,能够窃取浏览器历史、自动填充数据、Wi-Fi密码、加密货币钱包、VPN账户等信息,并通过Discord进行传播和分发。文章深入探讨了其技术架构、分发机制以及绕过Chrome安全机制的方法。

Arkanix Stealer: 新发现的短期牟利恶意软件

阅读时间: 4 分钟 (1152 字)

最近,我们偶然发现了一个名为 Arkanix 的新型窃取者。该窃取者可能属于旨在获取短期快速经济利益的短命窃取者类别。

过去几年,网络安全社区见证了信息窃取者的持续激增。有些窃取者非常复杂且广泛传播,而另一些则是短命的,专为快速获利而设计。窃取的信息主要用于经济利益,要么直接使攻击者受益,要么通过将窃取的数据出售给其他犯罪分子而间接受益。最近,我们偶然发现了一个名为 Arkanix 的新型窃取者。该窃取者可能属于旨在获取短期快速经济利益的短命窃取者类别。

开发与分发

该恶意软件在 Discord 上宣传,并经历了快速的开发。该恶意软件的初始版本是基于 Python 的[1]。根据我们的研究,该恶意软件的存在时间远超过一个月。然而,在这短暂的时间内,该恶意软件也用 C++ 实现了[2]。分发似乎通过在 Discord 上将其作为合法工具传播或在在线论坛上进行。

网站和配置面板

为网络面板创建账户需要邀请码,该邀请码通过 Discord 聊天获取。虽然我们无法查看通过该面板提供的所有功能,但我们确实瞥见了它的一部分,这使我们能够对其所提供的功能有一些了解。该恶意软件的 C++ 版本作为“高级”选项提供。其他高级选项包括窃取 VPN 账户、Steam 账户、屏幕截图、Wi-Fi 凭据,当然还有“支持”。威胁行为者通过使用 VMProtect 来对有效负载进行混淆。

图 1: 网络面板登录界面 图 2: 具有多种选项的网络面板

Python 版本

该恶意软件的基于 Python 的版本通过使用 Nuitka 打包进行分发,Nuitka 将 Python 代码编译为字节码。它可以生成独立的可执行文件,无需安装额外的文件即可运行。执行时,此类文件会提取一个 Python 环境以及承载已编译 Python 字节码的二进制文件。宿主能够运行具有所有必要依赖项的 Python 字节码。图 3 显示了提取的 Python 环境以及已编译字节码的宿主 loader.dll。图中还显示了已编译的字节码作为资源驻留在 loader.dll 中。

图 3: Nuitka 打包的加载器

在这种情况下,正如其名称所示,已编译的字节码只是实际窃取者的加载器。实际的恶意代码是从 hxxps[://]arkanix[.]pw/stealer.py 获取的。如果为 HTTP 会话设置了适当的令牌,则获取成功。获取的代码在内存中运行。检查代码后发现,该窃取者具有详细的功能。“功能”在构建时配置,它们是控制收集哪些数据的选项。可配置的功能包括:收集系统信息、浏览器历史记录、浏览器自动填充信息、VPN 数据、Steam 账户、屏幕截图、Telegram 数据,以及通过 Discord 启用自我传播。

图 4: 配置选项

窃取能力

该恶意软件支持从各种基于 Chromium 的浏览器收集信息,流行的包括 Edge、Chrome、Opera、Vivaldi、Tor、Yandex 等。从一长串浏览器扩展中收集数据,其中大多数与加密货币/钱包相关。一些示例包括 ExodusWeb3、MetaMask、Binance、Oxygen 等。来自 Exodus、Electrum、Etherium 等的一些钱包数据也会被窃取。窃取者会搜索桌面、文档和下载文件夹中具有预配置扩展名且文件名包含特定关键字的文件。然后,恶意软件将此类文件异步上传到恶意服务器,同时其他窃取活动继续进行。会获取额外的有效负载来收集 Chrome 数据。Discord 令牌会被窃取,如果启用了自我传播功能,恶意软件会将其自身发送给联系人列表中和各个频道中的人。收集的系统信息包括操作系统版本、CPU 和 GPU 信息、内存容量、屏幕分辨率、键盘布局、时区信息和已安装的防病毒软件。浏览器历史记录、自动填充信息和存储的信用卡信息会被收集。Wi-Fi 配置文件通过使用 netsh wlan show profiles 命令转储。明文 Wi-Fi 密码通过这种方式被窃取(通过每个可用配置文件的 key=clear 命令行选项)。来自 Mullvad、NordVPN、ExpressVPN 和 ProtonVPN 的 VPN 数据会被收集。收集到的文件和数据通过路由 hxxps[://]arkanix[.]pw/delivery 提交到恶意服务器。此外,还会从远程服务器获取一个额外的收集器有效负载并执行。撰写本文时,恶意服务器不可用,因此无法获取额外的有效负载进行分析。

C++ 版本

该恶意软件的本机代码版本在功能上非常相似。然而,本机版本采用了一种不同的技巧来窃取存储在基于 Chromium 的浏览器中的凭据和 Cookie。Chrome 在第 127 版中引入了 ABE(应用绑定加密)。应用绑定加密使用受信任的后台服务来确认哪个应用程序正在请求数据加密。然后,该服务将应用程序的唯一身份信息嵌入到生成的加密数据中。当稍后请求解密时,该服务会将数据中嵌入的身份信息与当前请求应用程序的身份信息进行核对。除非两者身份完全匹配,否则解密将失败,从而有效防止数据被系统上的其他应用程序共享或窃取。有关 ABE 的更多信息,请参阅 Google 的这篇博客文章。为了击败 ABE,窃取者的本机版本使用了“Chrome Elevator”,这是一个利用后工具,它使用进程注入将二进制文件注入到 Chrome 进程中,并让注入的代码在浏览器的上下文中运行以转储 Chrome 数据,从而绕过 ABE 障碍。该工具作为 PE 资源存储在二进制文件中,并从 %TEMP% 文件夹中提取并运行。Chrome Extractor 能够从 Edge、Chrome 和 Brave 浏览器中提取数据。

该恶意软件的本机版本还可以从 .RDP 文件中收集 RDP 信息。然而,与 Python 版本不同,在我们检查的二进制文件中缺少 Discord 自我传播功能。收集到的信息被提交到路由 hxxps://arkanix[.]pw/api/upload/direct。请求的用户代理设置为 ArkanixStealer/2.0

结语

看起来,启动一个在线社区并开展犯罪业务以快速赚钱似乎异常容易。在短时间内,攻击者能够流畅地提供用不同语言编写的不同恶意软件有效负载,这一事实暗示了这些攻击者在运行此类犯罪计划方面拥有相当丰富的经验。

IOCs

  1. 6ea644285d7d24e09689ef46a9e131483b6763bc14f336060afaeffe37e4beb5 – 基于 Python 的版本
  2. 6960d27fea1f5b28565cd240977b531cc8a195188fc81fa24c924da4f59a1389 – 本机代码版本 hxxps[://]arkanix[.]pw
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计