概述
- 2023 年 9 月 29 日,QBit 勒索软件即服务 (RaaS) 组织推出了一种用 Go 构建的新开发的勒索软件。
- 2023 年 10 月 9 日,QBit 团队推出了用 Go 语言开发的 qBit Stealer,强调了其无法被端点检测和响应解决方案 (EDR) 检测到的声明。
- 这个窃取者精通将任何文件上传到 Mega[.]NZ,利用先进的并发引擎进行快速上传。窃取程序可供购买,并且可以访问试用版。
- 2023 年 12 月 5 日,qBitStealer 的源代码宣布免费分发。
- 在分析 qBit Stealer 的源代码后,Cyble Research and Intelligence Labs (CRIL) 发现了一个显着的特点:与其他窃取者不同,qBit 有选择地针对具有特定扩展名的文件。此特性意味着它可能用作勒索软件操作中的渗透工具。
- 鉴于现在可以在没有任何附加成本的情况下访问此窃取程序,因此许多新的、不太复杂的威胁参与者 (TA) 使用它的风险更高。
概述
2023 年 9 月,QBit 勒索软件即服务 (RaaS) 组织推出了一种用 Go 编程语言创建的新勒索软件。该恶意软件非常先进,可以针对 Windows(从 Windows 7 到 Windows 11)和各种 Linux 发行版。此外,他们还暗示要为 ESXi 开发一个版本。
图1 — qBit RaaS
2023 年 10 月 9 日,QBit 推出了 qBit Stealer,这是一款用 Go 编写的隐身工具。TA 声称 qBit 窃取程序可以不被安全解决方案检测到,并且可以快速将文件上传到 Mega[.]新西兰。窃取者可供购买,包括试用版。
图2 — qBit Stealer
然而,在 2023 年 12 月 5 日,Qbit 背后的一位 TA 在一个已知的网络犯罪论坛上免费发布了 qBitStealer 的代码。后来,我们还观察到在不同的网络犯罪论坛上发布了相同的代码。
CRIL 的调查结果显示,qBitStealer 通过仅窃取具有特定扩展名的文件而脱颖而出。这种独特的行为表明可能与数据盗窃保持一致,表明其在勒索软件操作中的潜在用途。相比之下,其他窃取者通常专注于从各种应用程序中窃取敏感数据,而没有选择性地使用它们的方法。
图 3 – 发布在网络犯罪论坛上的 qBit Stealer 源代码
下图显示了 qBit stealer 的源代码。
图4 – qBit Stealer源代码
源代码分析
此 qBit Stealer 的源代码由以下文件组成:
反调试
Qbit Stealer 使用 NtQueryInformationProcess() 函数来检索有关当前进程的信息。该代码检查进程环境块 (PEB) 是否包含“BeingDebugged”标志。非零值表示存在调试器或虚拟机。下图显示了反调试检查的代码。
图5 — 反调试检查
反虚拟化/沙盒
此窃取程序检查它是否在与通常用于分析或调试的特定进程关联的环境中执行。它循环访问下表中提到的预定义进程列表。如果发现与任何正在运行的进程匹配,则窃取程序将退出,退出代码为 1。
下图显示了用于循环访问正在运行的进程列表的代码。
图6 — 反沙箱
配置
泄露的 qBit stealer 源代码还包括一个批处理脚本,旨在生成 qBit stealer 可执行文件以及一个名为“config.json”的配置文件。配置文件如下图所示。
图7 — 配置文件
配置文件由以下字段组成:
API 凭据 (API):API 对象中的 ID 和密码用于使用 Mega[.] 进行身份验证。nz API。窃取者登录 Mega[.]NZ Cloud Storage Service 上传被盗文件。
文件系统路径(Path):Path字段指定窃取程序将从中开始搜索要泄露的文件的初始文件系统路径。如果未指定或无法访问,则默认使用所有可用驱动器。
被盗文件夹名称 (StolenFolderName):此参数确定 Mega[.] 上的文件夹名称。存储被盗文件的新西兰云。在本例中,它设置为“test_folder”。
最大文件大小 (MaxFileSizeMB):MaxFileSizeMB 字段定义窃取程序将上传的文件的最大大小(以兆字节为单位)。大于此限制的文件将被排除在外;默认情况下,此值设置为 150MB。
拆分大小 (SplitSize):它指定了大型 zip 文件在上传过程中拆分的大小(以 MB 为单位);默认情况下,此值设置为 50MB。
目标文件扩展名 (TargetedFileExtensions):这是窃取程序配置为目标的文件扩展名数组。只有具有这些扩展名的文件才会被考虑外泄;默认情况下,它以 .txt、.pdf 和 .docx 文件为目标。
操作模式(Mode):Mode 字段定义窃取程序的操作模式。在这种情况下,它设置为“MANUAL”,表示手动操作模式。在此模式下,攻击者可以使用以下命令行选项:
AUTO 模式用于在相同配置下自动泄露数据。
数据外泄
在泄露数据之前,qBit 窃取程序会创建一个 Mega. nz的新实例。然后,它检查是否在配置文件中指定了“StolenFolderName”。如果未在配置文件中指定,则将文件夹名称设置为使用 getComputerUsername() 函数获取的计算机用户名,并在 %temp% 目录中创建一个文件夹。此文件夹用于存储被盗数据,稍后将被压缩为“.tar.gz”文件。
图 8 – 创建 Mega[.] 的实例新西兰 API
qBit 窃取程序以“StolenFolderName”中指定的路径为目标来窃取数据。如果未提供特定路径,则默认使用 getDrives 函数从所有可用驱动器获取文件。它遍历指定的路径和子目录,根据文件扩展名和大小筛选文件。下图显示了迭代目录的代码。
图9 — 目录迭代
接下来,窃取者将被盗数据转换为“.tar.gz”文件。如果此存档的大小大于配置中指定的大小,则会将文件拆分为更小的块。然后,代码使用 goroutines 并发上传每个拆分文件。同步。WaitGroup 用于等待所有上传完成。
上传完成后,将使用时间计划清理例程。AfterFunc。它会等待 15 秒,然后尝试删除存档文件。
下图显示了文件上传的代码。
图10 — 文件上传
结论
qBitStealer 源代码的发布,加上其选择性地定位文件的独特功能,增加了被不太复杂的 TA 采用的风险。此工具的可用性可能会导致网络威胁的流行率增加,因为它使专业知识较低的个人有可能从事恶意活动。
此外,qBitStealer 对文件的特定目标与勒索软件攻击中不断发展的策略一致,尤其是那些涉及双重勒索的攻击。暴露敏感数据以及加密的威胁增加了网络犯罪分子的影响力。在这种情况下,qBitStealer 可以作为 TA 在发起勒索软件攻击之前泄露关键数据的宝贵工具,从而放大对目标实体的潜在危害。
MITRE ATT&CK®技术
IOC
参考链接:https://cyble.com/blog/decoding-qbit-stealers-source-release-and-data-exfiltration-prowess/
图片来源网络目标可联系删除