Rust 恶意软件 Luca Stealer 源代码分析
  JJk5QKT0WLay 2023年11月02日 64 0

*以下内容为本人的学习笔记,如需要转载,请声明原文链接 微信公众号「ENG八戒」https://mp.weixin.qq.com/s/k9lg3Sb0xTJDJj4-fLch0A

先来看一下 Luca Stealer 的功能

Luca Stealer 功能

某网络黑客论坛上,有一个开发者共享了其使用 Luca Stealer 的日志文件,表明相当多的黑客已经开始使用此恶意软件。由于这个恶意软件的主要用途是盗取信息和文件所用,所以下面我们也会称呼它为窃取程序。

开发者共享的窃取日志

源码分析:功能性

使用环境变量 %localappdata% ,窃取者识别 Local\AppData 文件夹的路径。在开始窃取活动之前,它会检查 AppData 目录中是否存在 “logsxc” 文件夹,以防止多次执行。如果此文件夹不存在,窃取者会创建一个具有隐藏属性的文件夹来保存被盗数据。

Luca 窃取者使用 my_internet_ip(一个 Rust 箱子)来识别受害者的公共 IP 地址,并使用 ipgeolocate 库来识别受害者的地理位置。

识别受害者的公共 IP

窃取者然后使用屏幕截图库抓取受害者系统的屏幕截图并将其保存为 .png 文件以进行后期曝光。下图显示了恶意软件使用的截图库。

抓取屏幕截图

为了窃取系统详细信息,窃取者使用 whoami 库。下图展示了窃取器中 whoami 库的实现。

使用whoami库

下表显示了窃取者用来获取受害者系统详细信息的 whoami 库中可用的一些函数名称。窃取者获取以下系统信息以及 IP 和地理位置,并将其保存到名为 “info.txt” 的文件中。

函数 描述
desktop_env 获取桌面环境
devicename 获取设备名称(也称为 “Pretty Name”),用于标识用于蓝牙配对的设备
distro_os 获取操作系统发行版的名称和(可能)版本
hostname 获取主机设备的主机名
username 获取用户的用户名
Language 获取用户的首选语言

然后窃取者创建一个名为 “system_info.txt” 的文件来存储受害者的数据,例如:

  • 网络接口名称及其数据传输速率。
  • CPU 和内存的数量分为以下组件:
    • 总内存
    • 使用内存
    • 总互换
    • 使用交换
  • 正在运行的进程列表

获取系统信息

Luca Stealer 针对 30 多种基于 Chromium 的浏览器。下图显示了窃取者针对的浏览器列表。它从浏览器中窃取登录凭据、信用卡和 Cookie,并将它们保存到文本文件中以供渗透。为了解密浏览器数据,窃取者利用 Dpapi.CryptUnprotectData() 函数。

目标 Chromium 浏览器

看,360都上榜了,老外居然也知道这个无赖!

窃取者针对 10 个冷加密钱包,如下图所示。在源代码中提到了钱包的硬编码路径,窃取者从那里抓取钱包进行渗漏。

以冷加密钱包为目标

该窃取程序还针对 20 多种浏览器的密码管理器和加密钱包的浏览器扩展。每个浏览器扩展都有一个唯一的ID,可用于在浏览器的 “AppData” 目录下的文件夹中搜索需要的扩展。如果受害者的系统中存在下图中提到的扩展,窃取者就会获取它们。

目标浏览器插件

Luca stealer 还针对 Steam、Uplay 和 Telegram 应用程序。它首先检查这些应用程序是否存在于受害者的系统中,然后从以下文件夹中获取数据:

  • AppData\Roaming\ Ubisoft Game Launcher
  • AppData\Roaming\Telegram Desktop\tdata
  • Program Files (x86)\ team

获取会话令牌

窃取者还针对四个 Messenger 应用程序:Discord、ICQ、Element 和 Skype。

为了窃取 Discord 令牌,恶意软件针对以下目录:

  • Discord\Local Storage\leveldb
  • Discord PTB\Local Storage\leveldb
  • Discord Canary\leveldb

它使用正则表达式在日志文件中查找 Discord 令牌,并将它们保存到名为 “discord_tokens.txt” 的文件中。恶意软件获取 “Element\Local Storage\leveldb” 中的文件以窃取 Element 的会话,并将它们保存在名为 Element 的文件夹下。

窃取者然后从 “AppData\Roaming\ICQ\0001” 中获取ICQ – Chat文件,并将它们保存在名为 “ICQ” 的文件夹下。

为了从 Skype 窃取会话,恶意软件从 AppData\Roaming\Microsoft\Skype\Desktop\Local Storage 抓取文件并将它们保存在 Skype 文件夹下。

窃取者在 AppData\Local\Temp 目录中创建一个名为 “out.zip” 的压缩文件。这个压缩文件是从用于保存被盗数据的文件夹中创建的。然后,它使用窃取者指定的 Discord Webhooks 或 Telegram Bot 渗漏这些数据。窃取者还将窃取数据的摘要作为聊天消息发送,例如密码计数、IP 地址、操作系统详细信息等。下图显示了聊天消息的格式。

通过聊天消息发送摘要

结论

在这份分析被发布时,Luca stealer 目前只能针对基于 Windows 的操作系统 (OS)。虽然窃取器是用跨平台编程语言 Rust 编写的,但该恶意软件使用仅限于 Windows 操作系统的环境变量来识别某些目录的路径。

估计过不了多久,我们可能会看到更多的功能被添加到 Luca stealer 中;例如,开发者也可能正在努力为它添加剪辑功能。由于它是用 Rust 编写的并免费发布,我们可以预期它会被世界各地的黑客群体采用。

关于对恶意软件的防护建议

  • 避免从不受信任的来源下载文件。
  • 定期清除浏览历史记录并重设密码。  
  • 在你的计算机、移动设备和其他连接的设备上打开自动软件更新功能。 
  • 在连接的设备(包括 PC、笔记本电脑和移动设备)上使用知名的防病毒和互联网安全软件包。 
  • 不要在未先验证其真实性的情况下打开不受信任的链接和电子邮件附件。  
  • 教育员工如何保护自己免受网络钓鱼/不受信任的 URL 等威胁。 
  • 阻止可用于传播恶意软件的 URL,例如 Torrent/Warez。 
  • 监控网络级别的信标,以阻止恶意软件或木马的数据泄露。 
  • 在员工系统上启用数据丢失防护 (DLP) 解决方案。 
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  gBkHYLY8jvYd   2023年12月09日   30   0   0 cii++数据
JJk5QKT0WLay