未知地区

APT 组织Silver Fox 利用ValleyRAT木马攻击 Org 的会计部门

介绍

本文探讨了 ValleyRAT 更广泛的执行过程和更新的交付技术。在调查此威胁时,我们观察到该行为者今年更新了他们的策略、技术和程序 (TTP)。有趣的是,该行为者在其攻击的旧版本和新版本中重复使用了相同的 URL。

根据我们之前对该威胁行为者行动的研究,该组织使用多种分发渠道传播远程访问木马 (RAT)。这些渠道包括钓鱼电子邮件、恶意网站和即时通讯平台。该威胁行为者越来越多地将目标对准组织内的关键职位,尤其是财务、会计和销售部门,重点关注能够访问敏感数据和系统的高价值职位。

在 2024 年末观察到的先前攻击中,攻击者依赖 .bat 和 .ps1 脚本进行攻击(有关更多详细信息,请参阅  GhostRAT Plays Effective Hide and Seek博客文章),其中安装  程序文件的命名模仿流行软件,例如:7ZSfxMod_x86.exe、、、。line_setups_vvindow_64.12.10.32.exe``GPTChromX64.exe``IconWorkshop.exe

为了注入有效载荷,攻击者滥用了合法签名的可执行文件,这些文件容易受到 DLL 搜索顺序劫持。示例包括:ShellExperienceHosts.exe、kwpswnsserver.exe(WPS Office)、Firefox Setup 132.0.2.exe、Update.exe(腾讯)。在最近的攻击中,攻击者创建了一个域名和网站,旨在冒充一家名为“Karlos”的中国电信公司。有效载荷名为“ 短信国际通道”(翻译为“SMS 国际频道”)。

对于有效载荷注入,攻击者再次使用了 DLL 劫持,但这次他们的目标是来自 Steam 的二进制文件(由不同游戏发行商编译的二进制文件)。有趣的是,这些二进制文件与游戏《求生之路 2》和《杀戮空间 2》有关。

ValleyRAT 感染链

ValleyRAT 恶意软件图解

当用户从 下载假冒的 Chrome 浏览器时,感染链就开始启动https://anizom[.]com/。请参阅下面的网站和翻译文本。

ValleyRAT 仿冒 Chrome 浏览器(中文)

ValleyRAT 恶意软件伪造 Chrome 浏览器(英语)

攻击者还使用了另一个钓鱼网站,伪造了一个合法的中国短信提供商,网址为https://karlost[.]club/。右图为合法网站 www.karlos[.]com.cn,左图为钓鱼网站https://karlost[.]club/

Karlos 网站,真实网站与钓鱼网站对比

接下来,用户从钓鱼网站下载包含文件 Setup.exe 的 Setup.zip 并执行它。

ValleyRAT Payload下载器

该**setup.exe**文件(原名为 fotuy.exe)是用 .NET 编写的,在执行时会验证是否具有  管理员权限。如果没有,它将继续使用“runas”请求必要的权限。

接下来,它会检查操作系统类型以下载其他文件,然后继续下载四个文件:

  • sscronet.dll
  • douyin.exe
  • mpclient.dat
  • tier0.dll

这些文件保存在目录中:C:\\Program Files (x86)\\Common Files\\System\\

有效负载下载器代码片段

随后,安装程序**sscronet.dll使用 将文件加载到内存中LoadLibrary。加载 DLL 后,它会调用两个导出函数:Cronet_UrlRequest_StartCronet_UrlRequest_Read。最终,它会执行douyin.exe**。

Cronet 导出功能

系统注册表编辑器

sscronet.dll似乎故意使用听起来合法的标识符来命名,以避免引起怀疑。此外,虽然 DLL 导出了许多函数(其中大多数是空的或未使用的),但只有两个函数被积极使用:Cronet_UrlRequest_StartCronet_UrlRequest_Read

  1. The **Cronet_UrlRequest_Start**svchost.exeexport 函数使用CreateToolhelp32SnapshotProcess32FirstW和来搜索名为 的进程Process32NextW。找到进程后,它会在其中分配内存并将数据写入分配的空间。Cronet_URLRequest_Start 函数
  2. CreateThreadpoolWait最后,它使用和函数执行 DLL 文件ZwAssociateWaitCompletionPacket创建线程池等待
  3. 导出函数**Cronet_UrlRequest_Read** 负责通过在注册表中“ Software\\Microsoft\\Windows\\CurrentVersion\\Run”处添加名称下的条目来实现持久性**MyPythonApp**。Cronet_URL请求_读取

进程管理器

由于其行为,我们将此文件称为**“监视器”。其目的是确保预定义列表中排除的任何进程均未运行。安装程序将DLL注入其中SVCHOST.exe**,它在其中充当监视机制。如果它检测到排除列表中的任何进程,它会立即终止它。这允许攻击者在自己的代码保持活动状态的同时阻止特定应用程序运行。

ValleyRAT 的 DLL 注入

进程列表概述:

ValleyRAT 工艺列表概述

抖音

Douyin.exe是抖音( TikTok的中文版)的可执行文件。攻击者可以使用 DLL 侧载技术来利用此文件。在此方法中,恶意 DLL 被放置在与Douyin.exe

Tier0.dll

Tier0.dll****是Valve 的 Source Engine及其相关工具中使用的核心动态链接库。当线程开始执行时,它会检查nslookup进程是否已在系统上运行。此进程可充当互斥-如果发现nslookup正在运行,则终止它;否则,将创建一个新的nslookup实例。

通常,攻击者会创建处于挂起状态的进程,以便使用APC 注入进程挖空等技术,这会引起怀疑。但是,在这种情况下,攻击者使用了一种更具创造性的方法来避免被发现。他们没有采用传统方法,而是选择了一个预定义的进程,该进程自然接受输入并保持空闲状态(休眠),直到发生用户交互。这种策略可帮助攻击者执行恶意代码,同时最大限度地降低被发现的机会。

nslookup 检查,ValleyRAT 恶意软件

nslookup.exe等待输入的示例:

ValleyRAT 恶意软件:终端中的 nslookup

然后,它读取位于的文件**C:\Program Files (x86)\Common Files\System\mpclient.dat**,其中包含 dount shellcode 和加密的 PE 文件。

mpclient.dat 文件读取

读取文件后,它会将内容复制到 nslookup 的内存中,然后生成一个远程进程。

ValleyRAT nslookup 远程进程

ValleyRAT 作为有效载荷

mpclient.dat 该文件包含 Donut shellcode 和加密的 PE 文件。shellcode 的作用是解密内存中的 PE 文件并执行它,使其无需写入磁盘即可运行。

此外,它还挂钩函数AmsiScanStringAmsiScanBufferEtwEventWrite来绕过 AMSI(反恶意软件扫描接口)和 ETW(Windows 事件跟踪)等安全机制,帮助逃避检测。

ValleyRAT 是一个用 C++ 编写的 RAT,用中文编译,并演示了典型基本 RAT 的功能。
968b976167b453c15097667b8f4fa9e311b6c7fc5a648293b4abd75d80b15562

捕获输入并注入操作

攻击者尝试访问处理屏幕、键盘和鼠标的****Windows 工作站 。通过使用和,该进程获得与用户桌面的交互并抑制错误对话框以避免被发现。winsta0OpenWindowStationW****SetProcessWindowStation SetErrorMode(1u)

交互式窗口站是唯一可以显示用户界面或接收用户输入的窗口站。它被分配给交互式用户的登录会话,并包含键盘、鼠标和显示设备。它始终被命名为“ WinSta0”。

在 ValleyRAT 中打开 Windows 站点功能

屏幕监控

代码使用枚举所有连接的显示器**EnumDisplayMonitors,并通过回调函数处理它们的信息fnEnum。它使用检索屏幕坐标和显示属性等详细信息GetMonitorInfoW**,然后将这些数据存储在内存中以供进一步处理,例如屏幕捕获或与显示相关的操作。

ValleyRAT 中的监控检查功能

键盘记录器

当攻击者在样本中嵌入的预定义配置文件中配置键盘记录器时,键盘记录器的功能就会被激活。此外,攻击者还可以设置注册表项以启用动态配置,而不是依赖固定配置。

ValleyRAT 中的 KeyLogger 代码片段 #1

ValleyRAT 中的 KeyLogger 代码片段 #2

如果一切设置正确,攻击者会sys.key在“ ProgramData”目录中创建一个名为“ ”的文件,并将记录的击键存储在其中。

ValleyRAT 中的 KeyLogger 代码片段 #3

持久性

攻击者选择通过创建一个名为“ GFIRestart64.exe”的文件来实现持久性,这种方式不会引起怀疑。

ValleyRAT 中的 GFIRestart64.exe 代码

反 VMware

该代码通过查找**“** 目录和特定的 VMware 进程(   “ )来检查它是否在****VMware 虚拟机中运行。它还会验证系统是否属于**“** 的一部分,检查总物理内存是否低于1,173,624,064 字节,并确保硬盘大小超过110GB。如果这些检查表明是 VMware 环境,则可能会更改或终止执行以逃避检测。C:\Program Files\VMware\VMware ToolsVMwareService.exeVMwareTray.exeVMwareUser.exeWORKGROUP

ValleyRAT 中的反 VMware

如果恶意软件没有检测到它正在虚拟机(VM)内运行,它会尝试建立与****www.baidu.com的连接作为其网络通信检查的一部分。

C2 通信

作为该恶意软件安装过程的一部分,ValleyRAT 在其代码中初始化 C2 IP 地址和端口。

ValleyRAT C2 通信

命令 描述
0x00 插件清理并获取系统的进程列表。客户端使用 STRUCT_PACKET_PROCESS_LIST 结构回复。
0x01 使用 STRUCT_PACKET_0x02 结构回复,其中包含最初发送给客户端的确切数据。这可能是作为反机器人验证或 PING→PONG 数据包实现的。
0x02 释放并执行 DLL
0x04 释放并执行 DLL(第二种方法)
0x05 插件清理使用 STRUCT_PACKET_0x05 结构重放。
0x06 获取系统的进程列表。客户端以 STRUCT_PACKET_PROCESS_LIST 结构回复。
0x07 释放并执行任意类型的文件(文档、图像等)
0x08 下载并执行可执行文件。
0x09 将客户端设置为在系统启动时启动。
0x0A 设置“BEIZHU”(“备注”)或“FENZU”(“子组”)注册表项。
0x64 停止客户端,但不终止进程。
0x65 启动客户端

攻击指标 (IOC)

C2

  • 149.115.250.19
  • 149.115.052.91
  • 8.217.244.40
  • 154.82.85.79
  • 149.115.250.19
  • 118.107.44.219
  • 43.250.172.42
  • 202.146.222.208
  • 103.183.3.10
  • https://anizom[.]com/
  • https://karlost[.]club/

从setup.exe文件下载的文件:

wwwget11111-1328031368[.]cos.ap-chengdu.myqcloud.com/win7/amdhsail64.dll 修复了 amdhsail64.dll
get22222222asfas-1328031368[.]cos.ap-chengdu.myqcloud.com/sscronet.dll sscronet.dll
get22222222asfas-1328031368[.]cos.ap-chengdu.myqcloud.com/douyin.exe 抖音应用程序
www40sada-1328031368[.]cos.ap-guangzhou.myqcloud.com/mpclient.dat 客户端文件
get22222222asfas-1328031368[.]cos.ap-chengdu.myqcloud.com/tier0.dll tier0.dll

哈希:

53A6735CE1ECA68908C0367152A1F8F3CA62B801788CD104F53D037811284D71 安装.zip
6ED466A2A6EEB83D1FF32BA44180352CF0A9CCC72B47E5BD55C1750157C8DC4C 安装程序.exe (.Net)
311f2d4ef2598e4a193609c3cd47bf4ff5fb88907026946ecffe6b960d43d5b2 TradingView.exe (.Net)
a87745682da20ddfd6eac7ff2d27fec73ff56c6e9b4438121dcb6ba699c5cb3c 客户端文件
1db77692eaf4777f69ddf78c52424d81834572f1539ccea263d86a46f28e0cea sscronet.dll
3989f7fa8d1d59ebc6adea90e3958a892b47d94268bf9d5c9c96811f3fb65b00 抖音应用程序
7c2a1b09617566ff9e94d0b1c15505213589f7fd3b445b334051d9574e52e0f5 修复了 amdhsail64.dll
bb89e401560ba763d1c5860dd51667ba17768c04d00270bf34abebac47fd040e tier0.dll
51a9d06359952f6935619e8cf67042d2cec593788c324b72cffc0d34b1762bb0 “监视” -> 将 dll 注入 svchost
968b976167b453c15097667b8f4fa9e311b6c7fc5a648293b4abd75d 80b15562 谷鼠

相关文章

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

返回顶部按钮