恶意软件分析— NjRAT

admin 2024年3月10日12:06:31评论6 views字数 2537阅读8分27秒阅读模式

在这篇文章中,我将介绍样本感染过程的静态分析和动态分析。但是,在动态分析部分,我将无法进行网络分析,因为我尚未在我的 REMnux 和 Flare VM 机器中设置“inetsim”。

我从 MalwareBazaar 获得了 NjRAT 样本

图片图标来自 维基百科

植入物概述

植入签名是“Microsoft .NET”,它是 C# API 的一部分,可用于桌面应用程序开发。

  • 155

它建于 2024 年 1 月 25 日。

图 1.识别签名和编译时间。

还有一个指向可疑 Windows 可执行文件的 Dropbox URL 字符串。

图2.发现可疑的 Dropbox URL。

主要功能

在其类的 main 函数中,它用于调用另一个名为“ko”的函数,该函数包含植入物的特征。

图3.Main 函数充当调用方。

在“ko”函数中,首先,它创建一个互斥锁,以防止在同一台机器上执行任何其他操作。如果触发了该标志,它将调用“EndApp”函数,该函数将自行退出。

图4.创建新的互斥锁以防止重复。
图5.内部 EndApp 功能。

创建互斥锁后,它将调用“INS”函数,其中包含植入物的安装过程。

图6.INS 函数调用。

INS功能

在“INS”功能中,它等待 1 秒钟。然后,它将当前文件路径与目标进行比较,以检查它是否已经在目标路径中。如果没有,它会将自身设置为隐藏,并检查目标路径中是否存在文件。如果文件存在,它将删除现有文件并将自身复制到目标路径。

图7.重复文件检查和自复制过程。

然后,它启动刚刚复制的可执行文件的进程,并自行退出。

图8.启动新进程,然后自行退出。
图 9.DR 和 EXE 的值。

它还将自己排除在防火墙之外,类似于 Windows Defender 中的排除概念,它允许程序不被它检测到。

图 10.防火墙排除。

排除后,它会在当前路径上注册自身,以便在注册表位置启动时运行,名为“CurrentUser”和“LocalMachine”。

图 11.启动注册表持久性。
图 12.RG 和 sf 的值。

在另一个条件块中,它检查将自身复制到启动文件夹。这一次,它使用以前用作互斥锁的变量作为复制版本的名称。

图 13.自行复制到启动文件夹。

它还检查指定的进程名称是否正在运行。如果进程正在运行,它将执行 shell 命令来终止它。

图 14.终止指定的进程名称。
图 15.反的值。

它还包括 USB 持久性功能。首先,它为 USB 持久性创建变量,例如“autorun.inf”和新复制的自身版本“OK.usbx”。然后,它会搜索 LogicalDrives,如“D:”、“E:”、“F:”等。找到逻辑驱动器后,它会使用新的复制名称将自身复制到该路径,并将其设置为隐藏。接下来,它创建“autorun.inf”文件,其中包含执行新副本的信息,并将“autorun.inf”设置为隐藏在这些 LogicalDrives 路径上。

图 16.USB 持久性。
图 17.usbx 的值。

UNS 函数

名为“UNS”的自删除功能基本上与安装功能相反。

  1. 它将自己的属性设置为正常。
  2. 它会删除为持久性注册的注册表项值。
  3. 它将自身从防火墙排除列表中删除。
  4. 它将自己的属性设置回正常,并从启动路径中删除互斥锁植入物。
  5. 它会删除与互斥植入持久性关联的注册表项值。
  6. 它将自己的属性设置回正常,然后使用“cmd.exe”执行 shell 命令进行自我删除,方法是在退出自身之前使用“ping”命令进行延迟。
图 18.自删除功能。

连接功能

此功能侧重于连接管理。它首先休眠 2 秒钟,然后初始化“SendBufferSize”和“Timeout”等变量。它还初始化连接的“TcpClient”类。然后,它开始使用“send”函数,该函数调用另一个函数。

图 19.初始化连接。
图 20.发送函数充当调用方。

初始化连接时,它会将名为“HH”的变量的值分配给名为“H”的新变量,并将名为“P”的变量的值用作目标主机的端口。

图 21.初始化主机和端口变量。
图 22.HH 的值。
图 23.P 的值。

完成连接启动后,它使用“concat”对字符串的各个部分进行分组,并使用 Base64 编码通过基于 TCP 的传输协议以模式化格式将其发送回威胁参与者。

图 24.对信息进行分组和发送。
图 25.要发送的字符串模式。
图 26.Base64 对数据包数据进行编码。

保护功能

自我保护功能比较字符串以检查特定的进程 ID。它遍历进程 ID,检索名称,并将其与提供的进程名称进行比较。如果找到任何匹配的进程名称,它将终止它们。

图 27.自我保护功能。

可疑 DropBox URL

图 28.DropBox URL 不可用。

生成过程

执行植入后,它会使用新名称将自身复制到目标路径,启动防火墙排除命令,并尝试终止“taskmgr.exe”进程。但是,任务管理器不会被终止,并且防火墙中不允许任何程序,因为它不是以管理员权限运行的。

图 29.执行后的进程树。

现在,让我们以图形方式可视化持久性过程,以获得更清晰的视角。首先,它首先在“HKEY_CURRENT_USER”中设置注册表值,并带有植入物新副本的路径,允许它在启动时运行。然后,它使用互斥值作为其名称将自身复制到启动文件夹,正如我们在静态分析中看到的那样。

图 30.ESET Service.exe启动安装过程。
图 31.将 ESET Service.exe 设置为注册表值。

植入物识别

例如,当我们拥有植入文件并且没有任何关于它的信息时,就像在端点系统上找到它一样,我们可以轻松地将其提交给 VirusTotal。执行分析,类似于我们在本博客中所做的,使用 YARA 进行签名检测,或利用在线沙箱。

图 32.YARA 规则结果。

结论

因此,当执行植入物时,它会创建一个互斥锁,以防止在同一台机器上重复执行。然后,它使用植入物中指定的新名称将自身复制到目标路径。在此之后,它通过将自身指定为启动值并将自身复制到具有互斥锁名称作为新标识符的启动文件夹来执行注册表持久性。完成安装后,它会启动 shell 命令来终止任务管理器,并尝试将自身排除在防火墙之外。但是,这需要管理员权限。它启动连接并使用 Base64 编码发送数据包数据,利用植入物中也配置的特定模式。它还具有许多受害者交互功能,例如键盘记录器、相机捕获等我尚未探索过的功能。

后门以 Windows 平台为目标,感染主要依赖于网络钓鱼和用户交互。

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年3月10日12:06:31
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   恶意软件分析— NjRAThttp://cn-sec.com/archives/2563946.html

发表评论

匿名网友 填写信息