反沙箱与杀软对抗双重利用,银狐新变种快速迭代

admin 2024年9月29日21:25:49评论29 views字数 3571阅读11分54秒阅读模式
反沙箱与杀软对抗双重利用,银狐新变种快速迭代

近期,火绒威胁情报中心监测到一批相对更加活跃的“银狐”系列变种木马,火绒安全工程师第一时间提取样本进行分析。分析中发现样本具有检测沙箱和杀毒软件的行为,还会下载 TrueSightKiller 驱动关闭杀软,同时下载创建计划任务的 Shellcode 实现持久化,最终下载后门模块实现远程控制。目前,火绒安全产品可对上述病毒进行拦截查杀,请广大用户及时更新病毒库以提高防御能力。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

火绒查杀图

根据火绒威胁情报中心监测情况显示,该系列木马在 9 月 14 日被截获处理,其传播量在  9 月 18 日达到顶峰,直至 9 月 20 日不再活跃。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

活跃趋势

样本执行流程如下所示:

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

流程


样本分析

该样本最初通过分配内存,复制 0x14002EB20 处代码并调用。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

复制内存

随后通过异或算法对 210002E 处代码进行解密。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

解密

之后的具体逻辑如图所示,包含检测沙箱、检测安全软件、关闭安全软件、使函数失效、创建互斥体以及判断管理员权限等操作。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

具体逻辑

其中创建互斥体的代码如下,此操作用来检测两个互斥体是否存在,若不存在,则先创建其中之一互斥体,后续创建另一个互斥体。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

创建互斥体

检测管理员权限代码如下,如果没有权限则会重新用管理员权限打开。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

管理员权限启动

反沙箱

该银狐样本中存在大量反沙箱操作。

通过生僻函数 VirtualAllocExNuma 进行分配内存,若成功则直接返回,并继续执行后续操作。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

生僻函数

通过 HeapAlloc 分配相对大的内存—95MB来检测沙箱,并进行 for 循环加。猜测此过程可能是用于检测某些沙箱为了缩短检测时间直接跳过的情况。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

检测沙箱

通过三个函数判断:

  • 时间是否被加速。

  • CPU 速度是否过慢。

  • rdtsc 是否被篡改使 frndint 计算周期数过小。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

反沙箱

判断程序是否处于 Windows Defender 沙箱中:

  • 利用 NtCompressKey 特定句柄传入返回是否成功。

  • 利用 NtIsProcessInJob 传入特定值返回 STATUS_VOLSNAP_HIBERNATE_READY {卷影复制服务}系统现在处于休眠状态。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

检测 Windows Defender 沙箱

如果不成功,则会检测 SxIn.dll 是否被加载。猜测是以此判断程序是否处于隔离沙箱中。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

检测隔离沙箱

检测 CPU 核数大于等于 2 个以上。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

CPU 数量

安全软件对抗

样本会通过 VirtualProtect 函数更改内存权限,然后将该函数第一个指令替换为 retn ,使 AmsiScanBuffer 和 NtTraceEvent 函数失效。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

Hook 函数

检测是否存在 360tray.exe、360sd.exe、360safe.exe 进程名,若不存在,则进一步搜索相关窗口类名为 Q360SafeMonClass 的窗口。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

检测安全软件

如果检测到类名为 Q360SafeMonClass 的窗口,则会利用 PostMessageA 函数将其关闭。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

关闭窗口

其中 EnumWindow 遍历窗口时,通过 ChangeWindowMessageFilterEx 函数使该窗口允许接收 WM_QUIT 指令,随后利用发送消息的方式关闭该窗口。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

关闭窗口

如果安全软件不存在,则会将 'C:\','C:\ProgramData','C:\Users','C:\Program Files (x86)' 路径添加到 Windows Defender 白名单中,以躲避检测。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

添加白名单

下载 PACqpC.exe

完成上述一系列检查后,该样本会下载一些文件和 Shellcode ,比如:TrueSightKiller 驱动程序和用于创建计划任务的 Shellcode 等。

大致流程如下:解密链接,利用链接下载内容,并使用流密码进行解密,之后创建文件夹并隐藏文件夹。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

具体流程

样本在此流程中,利用 InternetReadFile API 函数下载数据。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

下载数据

其中,下载链接和下载的数据分别利用凯撒密码和简单流密码进行解密。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

解密算法

解密后的 URL 数据如图所示,包含下载链接和相对应的文件名。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

URL 数据

随后检查是否有安全软件。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

检查安全软件是否存在

如果检查到安全软件,将保持之后下载到的数据解密并写入文件后的文件句柄处于开启状态,以此阻止安全软件的读取。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

写入文件

下载后开始分析数据,并提取出异或秘钥和数据开头地址。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

分析数据

开始下载 a.gif、b.gif、c.gif、d.gif ,它们分别对应 install.exe(即随机名 PACqpC.exe )、hccutils.dll、1.gif、2.jpg 。这些文件中的最后一个字节用作异或解密的秘钥,倒数第五个字节至倒数第二个字节用于计算出数据开头偏移,其中 b.gif 的最后四位会写入随机数。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

整体逻辑

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

异或、随机数、获取秘钥和偏移

随后会读取自身内容,并利用 */& 定位,将 32 位随机数+*/&之后的 36 位数据写入到 C:UsersInstallUP.ini 文件中。这些数据是被加密的 IP 和端口,用于下载后门模块后的动态替换 IP 和端口。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

InstallUP.ini 文件

接着通过链接 https://197oss.oss-cn-beijing.aliyuncs.com/s.dat 下载 TrueSightKiller 驱动,并将此驱动写入到 C:UsersTTruespanl.sys 中,同时保持文件句柄处于开启状态。该驱动用于关闭杀毒软件。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

下载驱动

之后通过链接 https://197oss.oss-cn-beijing.aliyuncs.com/s.jpg 下载 Shellcode ,通过利用 VirtualProtect 设置执行权限并执行。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

下载执行 Shellcode 

Shellcode 中存在被压缩的 Dll ,对其进行解压缩后手动加载,并从中获取 RegisterTask 函数地址。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

获取 RegisterTask 函数地址

随后调用 RegisterTask 函数,创建计划任务。具体方法是创建并配置一个 RPC 绑定句柄,利用 NdrClientCall3 函数进行客户端 RPC 调用来创建计划任务,其中 XML 数据是计划任务的配置信息。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

创建计划任务

计划任务配置信息如图所示,它将实现登录、创建和修改功能,并且每分钟都会自动触发启动。此外,该任务的工作目录被设置为 C:Users 目录。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

计划任务配置信息

PACqpC.exe

PACqpC.exe 文件为白文件,会加载 hccutils.dll,该文件为 VMP 壳。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

DLL 文件信息

加载 hccutils.dll 时,会先读取 1.gif 文件,对其进行解密,然后将解密后的内容写入到 PACqpC.exe 的入口点地址。接着读取 2.jpg 文件进行解密后手动加载并执行其中的KMDrvFaxGetJobStatusType 导出函数。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

执行 KMDrvFaxGetJobStatusType 函数

之后开始遍历进程,查看是否存在安全软件。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

进程名列表

随后通过 RPC 调用实现安装 TTruespanl.sys 驱动(实为 TrueSightKiller 驱动)。在管道通信过程中,有一次传入了驱动名和驱动文件路径,猜测这是用于加载驱动的。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

管道通信

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

TTruespanl.sys 驱动

如果存在安全软件,则会利用 DeviceIoControl 函数传入进程 ID 关闭进程。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

DeviceIoControl 函数

其中 0x22E044 是驱动中终止进程的指令。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

终止进程

后门模块

完成上述操作后,该样本从 https://m39m.oss-cn-hangzhou.aliyuncs.com/drops.jpg 中下载 Shellcode ,该 Shellcode 用于下载后门模块加载器。这个 Shellcode 跟先前下载的相似,它会先下载 https://m39m.oss-cn-hangzhou.aliyuncs.com/f.dat ,这是 URL 数据,用于下载后门模块加载器的链接组合的数据。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

下载 URL 数据

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

解密后的 URL 数据

之后该样本通过 URL 链接下载后门模块加载器,并将四个文件设置为隐藏的系统文件。然后会读取先前创建的 InstallUP.ini 文件并提取 IP 和端口( 47.76.238.83:8143 和 umxunw.net:8143 )写入 utils.vcxproj 文件,最后执行 wR0jS2.exe 。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

下载后门模块加载器并执行

执行后,该样本将加载 tbcore3U.dll 。此时,它会读取 utils.vcxproj 和 log.src 并解密出其他代码和后门模块。其他代码中包含通过设置注册表 ConsentPromptBehaviorAdmin 绕过 UAC 、检测安全软件等操作。最后执行后门模块 Edge 导出函数。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

Edge 函数

经对比分析,发现该模块执行逻辑与今年3月份火绒安全实验室发布的《成熟后门在野外“泛滥”,加载Rootkit对抗杀软》文章中提到的后门模块逻辑相同,具体细节可查看往期分析报告。

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

相似

附录
C&C:

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

HASH:

反沙箱与杀软对抗双重利用,银狐新变种快速迭代

原文始发于微信公众号(火绒安全):反沙箱与杀软对抗双重利用,银狐新变种快速迭代

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年9月29日21:25:49
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   反沙箱与杀软对抗双重利用,银狐新变种快速迭代https://cn-sec.com/archives/3219653.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息