要点
Cyble 研究与情报实验室 (CRIL) 遇到了一个 RAR 存档文件,该文件可以通过成人网站或虚假成人网站等传播。
在此恶意软件活动中,威胁参与者 (TA) 利用 WinRAR ( CVE-2023-38831 ) 中的漏洞将其恶意负载分发到受害者的系统上。
该漏洞会触发 CMD 文件的执行,从而启动 BAT 文件的下载。
此阶段的初始 Batch 脚本充当下载程序来获取 PowerShell 抓取器,该抓取器负责窃取敏感数据,然后继续获取 Apanyan Stealer。
此外,批处理文件还会下载并运行其他恶意软件,包括 The Murk-Stealer 和 AsyncRAT,它们会在受害者的系统上执行其他恶意活动。
概述
CRIL 于 10 月 3 日在VirusTotal上发现了一个 RAR 存档文件。该文件利用 WinRAR 漏洞向受害者系统传送各种恶意负载。此特定活动似乎针对参与查看/下载非法图像和视频的个人,旨在使用各种恶意软件类型(例如 Apanyan Stealer、The Murk-Stealer 和 AsyncRAT)感染他们。
最初的感染可能源自从成人网站或虚假成人网站下载露骨图像和视频的人(根据以下文件名)。
1yo_hard_[redacted].rar
luna_12yo.rar
boy10[redacted]15yo.rar
该技术首先从某些网站下载 RAR 存档文件。在此 RAR 存档中,有一个 JPG 图像文件和一个具有相似名称的文件夹。打开 RAR 存档并随后访问 JPG 文件后,它利用 WinRAR 漏洞 ( CVE-2023-38831 ) 执行位于同名文件夹中的 CMD 文件。该CMD文件负责下载并运行BAT文件。
BAT 文件包含最初下载并执行 PowerShell 抓取器的代码,该抓取器随后收集敏感信息并继续下载并运行新的 Apanyan Stealer。
此外,BAT 文件还会在受害者的系统上启动 The Murk-Stealer 和 AsyncRAT 恶意软件的下载和执行。这些恶意软件菌株旨在窃取敏感信息并将其从受害者的计算机上传输,同时向远程攻击者授予对系统的未经授权的访问权限,如下图所示。
图 1 – 整体感染链
技术分析
WinRAR 漏洞 (CVE-2023-38831)
打开存档文件“11yo_hard_[redacted].rar”后,会显示一个 JPG 文件以及一个与该文件同名的文件夹,如下图所示。
图 2 – RAR 压缩文件中具有相似名称的 JPG 文件和文件夹
尽管如此,如果用户双击 JPG 文件“11yo_hard_[redacted].jpg”,它就会利用CVE-2023-38831漏洞以静默方式执行文件夹中名为“11yo_hard_[redacted].jpg .cmd”的CMD 文件如下图3所示。该CMD文件用于在受害者的系统上安装恶意软件。同时,CMD 脚本还会加载一个图像文件来吸引用户,同时避免任何潜在的怀疑。
图 3 – 子文件夹内的图像和视频文件
文件扩展名欺骗漏洞
CVE-2023-38831:6.23 之前的 WinRAR 允许用户在用户尝试查看 ZIP 存档中的良性文件时执行任意代码。出现此问题的原因是 ZIP 存档可能包含良性文件 (如普通.JPG文件) 和与良性文件同名的文件夹,并且文件夹的内容 (可能包括可执行内容) 在尝试仅访问良性文件期间进行处理。
该漏洞是通过制作结构经过修改的档案来利用的,该档案与安全文件略有不同。此修改会导致 WinRAR 的ShellExecute函数在尝试打开诱饵文件时接收到不正确的参数。
因此,该程序会绕过无害的文件,而是查找并执行 CMD 脚本。当用户认为他们正在打开一个安全文件时,程序会启动另一个文件,如bleeping所示。
成功执行名为“11yo_hard_[redacted].jpg .cmd”的 CMD 文件后,它会使用curl命令从 GitHub URL启动另一个 CMD 文件“payload.cmd”的下载。然后,下载的 CMD 文件将作为批处理文件保存在%temp%文件夹中,名为“uwu.bat”。接下来,使用PowerShell命令saps(Start-Process)通过隐藏窗口谨慎地执行“uwu.bat”文件,如下图所示。
图 4 – 子文件夹内的 CMD 文件内容
下载器
执行批处理文件后,它会执行以下操作:
它在“%programdata%”文件夹中创建一个名为“GraphicsType”的目录。
接下来,它在“%programdata%GraphicsType”目录中生成一个名为“SystemTray.bat”的批处理文件,用于配置在下次用户登录期间执行命令的注册表项。
之后,它使用 curl 命令两次。首先,它从指定的URL下载一个名为“seins.jpg”的图像文件,并将其存储在“%temp%”目录中。其次,它从GitHub存储库下载一个名为“helper.ps1”的PowerShell脚本,并将其保存到与“script.ps1”相同的位置。
随后,它使用 PowerShell 使用隐藏窗口从“%temp%”目录运行“script.ps1”脚本。这个PowerShell抓取器负责提取敏感数据,然后继续下载“main.exe”,标识为“Apanyan Stealer”。
之后,它使用 Curl 从在线文件存储站点下载两个 PNG 文件,即“5v4rjb.png”和“g08ugo.png”。事实上,这些文件是伪装成PNG图像的可执行文件。下载后,它们存储在别名“winint.exe”和“SystemTray.exe下的”%programdata%GraphicsType“目录中。
之后,它启动Windows资源管理器以运行两个可执行文件,“winint.exe”,标识为“The Murk-Stealer”和“SystemTray.exe”标识为“AsyncRAT”。
最后,它利用系统的默认图像查看器来显示“seins.jpg”图像,从而产生受害者打开图像的错觉。
图5 – 以BAT文件形式保存的内容
下图显示了执行期间下载并存储在受害者系统上的文件。
图 6 – 感染期间下载和删除的文件
下图展示了成功执行名为“11yo_hard_[redacted].jpg .cmd”的欺骗性文件后发生的恶意软件感染的流程树。
图 7 – 进程树
PowerShell 抓取器和下载器
首先“uwu.bat”文件从%temp%目录下载并开始执行名为“script.ps1”的 PowerShell 脚本。
PowerShell 脚本旨在在系统上执行未经授权的活动。这些活动包括收集系统信息、本地化数据、硬件详细信息、屏幕截图、抓取 Wi-Fi 密码,以及可能窃取与 Steam 帐户和具有特定关键字的敏感文件相关的数据(称为“Kiwi Grabber”)。随后,该脚本将此敏感信息泄露到命令和控制 (C&C) 服务器。
当 PowerShell 脚本“script.ps1”运行时,它会从 GitHub 存储库下载一个名为“main.exe”的可执行文件。随后,它使用saps命令启动下载的可执行文件的执行。该可执行文件是一个 PyInstaller 文件,被识别为“Apanyan Stealer”。
图 8 – PowerShell 抓取器
然后,PowerShell 脚本重点关注并从受害者的系统收集以下敏感信息。
1、系统信息:它收集用户名、计算机名称、操作系统、硬件 ID (HWID)、防病毒软件详细信息以及系统上是否检测到抓取程序等数据。
2、本地化信息:检索系统的 IP 地址、国家、地区、城市、邮政编码、时区和 ISP(互联网服务提供商)。
3、硬件信息:获取有关 GPU、CPU、主板、RAM 和整体硬件配置的详细信息。
4、屏幕截图:它捕获系统桌面的屏幕截图,包括有关时间、日期和图像尺寸的信息。
5、Wi-Fi 密码:它尝试检索系统上保存的 Wi-Fi 网络 SSID、密码和身份验证方法。
6、Steam 帐户:如果安装了 Steam,它会查找与 Steam 关联的 Steam 配置和帐户,可能包括用户名和其他信息。
7、Kiwi Grabber:它使用特定关键字(与银行、密码、加密钱包和其他敏感数据相关)搜索系统上的文件,如下图所示,并将它们存档以防止潜在的泄露。
图 9 – Kiwi 抓取器使用的关键字
从系统收集所有敏感信息后,PowerShell 脚本继续使用Curl命令将收集到的数据以 JSON 格式发送到指定的 Discord C&C 服务器。
图 10 – PowerShell 抓取器渗漏
Apanyan Stealer
在进行抓取器活动之前,PowerShell 抓取器下载了一个名为“main.exe”的 PyInstaller 可执行文件,即 Apanyan Stealer。解压 PyInstaller 文件“main.exe”后,会显示各种 Python 支持文件,例如“.pyc”、“.pyd”和“.dll”文件,如下所示。
图 11 – PyInstaller 恶意软件的提取文件和文件夹
“ main.py.fxdtml.pyc ” Python 编译文件负责 Apanyan 窃取程序的操作。它采用三层编码来隐藏窃取者代码。
在执行过程中,它通过以下操作序列获取窃取者的 python 代码(图 13)。
.pyc 文件 (main.py.fxdtml.pyc) 的反编译代码包含经过模糊处理的数据。此经过模糊处理的数据使用 replace 函数进行去模糊处理,从而生成二进制数据。
随后,通过首先将此二进制数据转换为整数,然后将生成的字节解码为字符串,将此二进制数据转换为文本表示形式。这个新获得的字符串包含另一段 Python 代码。
在这个新的 Python 代码中,有一个 base85 编码的字符串。exec 函数使用“base64.b85decode”函数来解码这个 base85 编码的字符串,揭示另一段 Python 代码。
在这个新的 Python 代码中,有一个 base32 编码的字符串。同样,exec 函数使用“base64.b32decode”函数来解码这个 base32 编码的字符串,最终揭示最终的 Python 脚本,该脚本被标识为“Apanyan 窃取者”。
图 12 – 访问 Stealer 代码的多个解码阶段
下图展示了“Apanyan Stealer”Python 脚本的最后阶段。
图 13 – Apanyan Stealer python 脚本
反虚拟机/反调试
执行时,窃取程序首先会进行检查以避免虚拟机 (VM) 和调试环境。该脚本会评估某些条件来决定是否应终止或继续,这可能是避免被检测到的策略。
它包含被阻止的用户名、计算机名称、硬件 ID (HWID)、IP 地址和MAC 地址的列表。它获取当前用户的用户名、计算机名、HWID、IP 地址和 MAC 地址。然后,该脚本会验证这些值中的任何一个是否与其各自列表中的阻止值相对应。如果找到匹配项,则脚本终止。
下图说明了用于进行反虚拟机检查的函数的代码片段。
图 14 – AntiVM 技术
Steam()
在 AntiVM 检查之后,窃取者继续执行(steam)函数。此功能专门用于识别系统上的 Steam 安装、收集配置数据并提取与 Steam 帐户关联的 URL。然后,收集到的信息将存储在名为“accounts.txt”的文本文件中,如下面的代码片段图所示。
图 15 – Steam 功能代码
Browser()
一旦从 Steam 应用程序获取敏感信息,恶意软件就会继续执行browser()函数。该函数负责从系统上安装的各种网络浏览器中提取敏感数据,包括密码、cookie、浏览历史记录和书签。随后,它将这些数据排列并存储在相应的文本文件中。下图显示了 Apanyan Stealer 所针对的 Web 浏览器。
图 16 – 窃取者的目标浏览器
IP()
随后,窃取者使用函数ip()启动收集有关系统 IP 地址和地理位置的详细信息的过程。详细信息,例如 IP 地址、国家/地区、城市(以及邮政编码)、地理坐标(纬度和经度)、时区、组织(例如 ISP 或托管提供商)以及指向 Google 地图的链接(根据纬度和经度。所有这些数据都经过精心编译并保存在“Information”目录下名为“ip.txt”的文件中,如下图代码片段所示。
图 17 – IP 功能代码
Token()
之后,恶意软件执行token()函数,该函数的创建目的是从各个位置窃取 Discord 身份验证令牌,验证其真实性,并将其存储在名为“tokens.txt”的文件中。下图显示了 Apanyan Stealer 所针对的 Discord 令牌。
图 18 – 窃取者有针对性的 Discord 令牌
渗漏
最后,窃取者将收集到的文本文件压缩为 ZIP 存档,并使用 Discord Webhook URL 将该存档传输到命令和控制 (C&C) 服务器,如下面的代码片段图所示。
图 19 – Apanyan 窃取者渗漏
The-Murk-Stealer
The-Murk-Stealer 是一个用 Python 编码的开源涡轮窃取程序,能够从受害者的计算机中提取敏感数据。它通过 Discord webhooks、Telegram 机器人或 XMPP 机器人发送收集的日志。该工具可在GitHub上找到。
当执行“winint.exe”时, Murk-Stealer 会执行一系列广泛的功能,包括:
收集系统信息,例如当前时间、时区、城市、地区、国家、用户名、PC 名称、操作系统、操作系统版本、架构、HWID、MAC 地址、BIOS 序列号、机器 GUID 和基板制造商。它还收集网络相关信息,包括外部和内部 IP 地址、坐标、组织和邮政编码。
收集硬件信息,例如 CPU 详细信息、GPU 信息、RAM 详细信息和驱动器相关信息。它还收集其他信息,例如已安装的防病毒软件、正在运行的进程、剪贴板内容、已安装的程序、产品密钥和 Wi-Fi 详细信息。
从桌面、文档和下载文件夹中获取扩展名为 .txt 和 .docx 的文件。
从 Telegram、Viber、Pidgin、Discord(带令牌和密码检索)、Skype、WhatsApp 和其他类似平台等消息传递应用程序收集会话信息。
收集与 Steam、Epic Games、Uplay、Roblox、Minecraft、BattleNET 等游戏平台相关的凭据。
从 PayPal、Kivi、Binance、Metamask、Atomic 等服务收集钱包信息。
从 Chrome、Firefox、Opera、Edge、Brave 等网络浏览器窃取数据。这包括密码、cookie、浏览历史记录、下载、扩展和存储的卡详细信息。
从 Nord VPN、Open VPN 和 Proton VPN 等服务捕获 VPN 凭据。
此外,它还可以截取屏幕截图、访问相机照片、采用反调试和防病毒绕过机制,并拥有恶意软件的自毁能力。
下载的可执行负载“winint.exe ”的图标如下图所示,值得注意的是,“Murk-Stealer”的GitHub页面使用了类似的图标作为其头像。
图 20 – The-Murk-Stealer
AsyncRAT
AsyncRAT 是一种使用 C# 创建的远程访问木马 (RAT),最初于 2016 年出现。它为网络攻击者提供了远程控制受感染系统的能力。值得注意的是,该恶意软件拥有广泛的自定义选项,允许攻击者根据需要添加新特性和功能。因此,它在寻求进行有针对性的攻击的恶意行为者中广受欢迎。
虽然 AsyncRAT 最初是为了教育目的而开发的,并且仍然作为GitHub上的开源项目提供,但不幸的是,它在全球范围内被用于恶意目的。其广泛的功能包括键盘记录、音频和视频记录、信息盗窃、远程桌面操作等等。
执行“SystemTray.exe”后, AsyncRAT 执行多种功能,包括:
屏幕查看和录制
SFTP 访问,允许上传和下载
客户端和服务器聊天界面
支持动态 DNS 和多个服务器
密码恢复功能
JIT(即时)编译器
键盘记录功能
反分析措施
受控更新机制
反恶意软件启动程序等。
结论
威胁行为者可能会关注访问成人网站的个人,因为此类网站拥有庞大的用户群、匿名的可能性、用户参与度的提高、通过窃取数据获取经济利益的潜力、勒索机会、用户安全意识较低以及此类网站上存在漏洞可以被利用。在此活动中,TA 利用 WinRAR 漏洞将多种形式的恶意软件传送到受害者的系统中,目的是窃取敏感数据并获得对其系统的未经授权的访问。
TA 采用多方面的传递方法来支持他们的恶意活动。这些策略帮助他们避免被发现、确保长期存在、逃避警报触发、推迟执行、对抗防御措施以及阻止逆向工程的尝试。
Cyble 研究和情报实验室持续监视最新的网络钓鱼或恶意软件菌株,提供包含可操作情报的最新博客,以保护用户免受这些攻击。
IOC
转载来源:https://cyble.com/blog/winrar-vulnerability-puts-illicit-content-consumers-at-risk-of-apanyan-stealer-murk-stealer-asyncrat/
图片来源网络侵权可联系删除