1

攻击者通过 Freeze.rs 和 SYK 密码器进行恶意软件分发

 8 months ago
source link: https://paper.seebug.org/3008/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

攻击者通过 Freeze.rs 和 SYK 密码器进行恶意软件分发

22小时之前2023年08月17日威胁情报

原文链接:Attackers Distribute Malware via Freeze.rs And SYK Crypter
译者:知道创宇404实验室翻译组

FortiGuard Labs研究人员发现了一种用Rust编写的新注入器,用于注入Shellcode并将XWorm引入到受害者的环境中。尽管Rust在恶意软件开发中相对不常见,但自2019年以来,包括Buer loader、Hive和RansomExx在内的几个攻击活动开始采用这种语言。FortiGuard Labs的分析还揭示了2023年5月注入器活动的显著增加,其中该Shellcode可以使用Base64进行编码,并可选择AES、RC4或LZMA等加密算法来逃避杀毒软件的检测。

通过检查编码算法和API名称,我们确定了这种新注入器的源自于红队工具"Freeze.rs",该工具旨在创建能够绕过EDR安全控制的有效载荷。此外,在对攻击进行分析过程中,我们发现了SYK Crypter(一个通过社区聊天平台传递恶意软件的工具)加载Remcos。SYK Crypter于2022年出现,并被各种恶意软件家族使用,包括AsyncRAT、njRAT、QuasarRAT、WarzoneRAT和NanoCore RAT。

FortiGuard Labs研究人员还观察到2023年7月13日的钓鱼邮件活动,该活动通过一个恶意的PDF文件启动攻击链。该文件重定向到一个HTML文件,并利用"search-ms"协议访问远程服务器上的一个LNK文件。单击LNK文件后,将执行一个PowerShell脚本,用于进一步执行Freeze.rs和SYK Crypter等攻击行动。最终,XWorm和Remcos被加载,并与C2服务器建立通信。

在本文中,我们将深入研究用于交付Rust-lang注射器(SYK密码器)的初始攻击方法,并进一步探索攻击的后续阶段。

bfd4002d-3f42-4db1-b822-7dc46b284566.png-w331s

图1中显示的网络钓鱼电子邮件伪装成发送给各个公司的紧急补充订单请求来欺骗收件人。它还在PDF文件中使用模糊图像来引诱受害者点击隐藏的按钮。附加的PDF文件如图2所示。

8839a533-63fb-4be9-a0f6-a6b8f3a699e4.png-w331s

图1:网络钓鱼邮件

36d3821a-a81e-4c23-bc77-9e632c2863a4.png-w331s

图2: PDF文件

恶意URL隐藏在流对象(/ObjStm)中,使其难以被检测。然而,通过pdf-parser提取URL显示它位于流对象1中的对象14,如图3所示。

d2dec84f-1a48-4480-b1c0-db766b519f0e.png-w331s

图3:流对象中的URL

当受害者点击该文件时,会连接到URL中一个提供旅行服务的网站。攻击者在7月12日将一个恶意HTML文件上传到“ems”路径上,其源代码如图4所示。

c8fdf087-06a6-48a6-8e5c-8250af475914.png-w331s

图4: HTML页面“page.html”

在这种情况下,攻击者不是直接下载病毒,而是采用更复杂的方法来传播病毒。他们利用"search-ms"协议来触发搜索结果。具体来说,他们在由DriveHQ提供支持的远程云存储服务器上搜索"ORDER_SPEC0723"。值得注意的是,文件"ORDER_PSEC0723"会被伪装成PDF文件图标,但经过仔细检查后发现它实际上是一个LNK文件,在同一文件夹中执行一个PowerShell脚本,如图5所示。这种策略使得攻击者能够隐蔽地启动他们的恶意活动。

3e78cd54-f0c6-4fec-a0a7-f65e3e5c59aa.png-w331s

图5: 搜索结果和LNK文件“ORDER_PSEC01723”

然后执行PowerShell脚本“pf.ps1”(图6),首先使用"regsvr32"启动Rust编写的注入器"doc.dll"。它打开了诱饵PDF文件"T.pdf"并执行了"AA.exe"。最后,使用"Stop-Process -Force"关闭所有文件资源管理器窗口。在图7中的PDF文件"T.pdf"看起来很干净,包含明文,意图分散受害者对其他恶意操作的注意力。下面将详细介绍"doc.dll"和"AA.exe"。

62a51974-9648-411e-9727-041f321b5b28.png-w331s

图6: PowerShell脚本“pf.ps1”

e0ca5627-9a9b-4ddc-a267-58ae7536d048.png-w331s

图7:诱饵文件“T.pdf”

Rust 注入器 – doc.dll

图8揭示了注射器基于字符串部分的分析是用Rust语言进行编写的。

2a4f8c70-6e97-44fa-970c-427de6c07c59.png-w331s

图8:字符串部分

该注入过程始于使用CreateProcessA创建一个"notepad.exe"进程。接下来,通过Base64解码和LZMA解压缩获得壳代码。然后,注入器直接使用NTAPI库的函数注入壳代码。整个过程反映了红队工具"Freeze.rs"的行为,该工具于5月推出,显示了这一新工具的快速采用。图9展示了源代码和注入器的汇编代码。

c6c92f8b-20dc-4f76-b331-442aa2be0bfe.png-w331s
1b33f6aa-9e60-4b6d-a3bb-f9df98bb935d.png-w331s

图9: Shellcode 注入

在过去的一个月里,我们已经收集了各种不同的Rust注入器,包括带有LZMA压缩壳代码的DLL文件,带有RC4加密壳代码的DLL文件以及包含RC4加密壳代码的EXE文件。这些注入器中的壳代码数据都使用Base64进行编码,并且有趣的是,文件类型和加密算法似乎是程序中可选择的选项。这一观察结果与"Freeze.rs"存储库中的选项完全一致,暗示可能与这个红队工具存在潜在联系。选择加密方法和文件类型的灵活性增加了这些注入器的复杂性,使安全研究人员的检测和分析更加复杂。

ee7213df-753e-4d5a-a1ce-42c3ed1ae4c3.png-w331s

图10:“freeze . RS”选项

在使用RC4算法变体时,密钥扩展为256字节,并用于伪随机生成算法(PRGA)。在图11中可以看到这个注入器变体的相应源代码和汇编。通过比较,很明显可以看到攻击者使用"Freeze.rs"来绕过EDRs并利用挂起的进程。解密后的壳代码可以在地址0x650000处找到,如图12所示。

3e1191ba-eef4-4963-b308-04a91947fabc.png-w331s

图11: RC4解密

9ffd4ca9-5f55-414a-b189-638f6e0f5434.png-w331s

图12:解密的外壳代码

解密后的壳代码应用了AMSI绕过和WDLP绕过技术,随后执行一个.NET载荷。一旦执行,.NET程序集可以从内存地址0x1AAB6E70被转储出来,如图13所示,作为一个独立的.NET可执行文件进行分析。

c676e074-1289-4370-8983-216ab0411a33.png-w331s

图13:解密.Net 载荷

在这个过程中发现的.NET载荷被称为XWorm,据报道,这是一种在地下论坛上交易的商品RAT工具。XWorm配备了典型的RAT功能,包括收集机器信息、捕获屏幕截图、记录按键记录以及控制被入侵设备。在这种情况下,XWorm载荷的版本是v3.1,C2服务器信息仍然隐藏在“pastebin.com”网站上,如图14所示。

8499be03-f553-448b-99ae-8782eb28e6a7.png-w331s

图14: XWorm V3.1和pastebin.com上的C2服务器IP地址

AA.exe MSIL下载器

执行文件"AA.exe"作为一个MSIL下载器,内嵌有两个链接:"95.214.27.17/storage/NAR"和"plunder.ddnsguru.com/storage/NAR"。

b3bc0c32-7e77-4cf8-8eab-ecf47a7c3b59.png-w331s

图15: MSIL下载器的链接

在下载完成后,"AA.exe"使用文件名"760"作为解码密钥,并对下载数据中的每个字节执行减法运算。解码后的数据是一个SYK密码器,其资源名为“SYKSBIKO”,包含加密的有效载荷。该DLL文件会检查环境是否处于调试模式,并通过使用密钥"gOhgyzyDebuggerDisplayAttributei"进行RC4解密来处理资源数据。它调用一个名为"Zlas1"的小型.NET代码进行进一步的解压缩。

fe9d3b97-4ccc-479c-b4d5-d372735787ce.png-w331s

图16: 名为 .Net code 的代码

为了避免被检测,SYK Crypter使用图17所示的解码功能对执行流程中使用的字符串进行了编码。此外,它还使用了诸如"GetProcessesByName"、"Directory.Exists"和"File.Exists"等函数来评估受损环境中安全设备的存在。用于检查的列表如图18所示。

fbba3e7e-579f-4a3c-b0a1-6d9ec2176ccf.png-w331s

图17:字符串转换器功能

6215ab04-fd6e-4123-a171-1773fac8e7e1.png-w331s

图18:检查列表

For persistence, the malware appends the “.exe” extension to the file “AA” and copies the MSIL downloader to the “Startup” folder. It also adds a registry entry “Run” at “HCKU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows.” The corresponding code is depicted in Figures 19 and 20.

为了实现持久性,恶意软件将文件"AA"追加".exe"扩展名,并将MSIL下载器复制到"启动"文件夹中。它还在"HCKU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows"路径下添加了一个名为"Run"的注册表,相应的代码如图19和20所示。

4becf74f-7b3f-4ca6-8a93-f2ad765111be.png-w331s

图19:将自身复制到“启动”

cfe4e820-9100-4303-ac9b-6cfa473a2aad.png-w331s

图20:添加注册表

在对资源数据"SYKSBIKO.Properties.Resources.resources??.a"进行RC4解密和解压缩之后,获取了执行文件,如图21所示。然后,SYK加密器加载一个Base64 .NET代码,并调用其"GetDelegateForFunctionPointer"函数,以相同的方法创建从kernel32或ntdll到所有API的委托。图22显示了加载"kernel32!WriteProcessMemory"的一小段代码,随后对解密的载荷注入到一个进程中。

14be8877-5790-46ac-b319-59e23eed1a1f.png-w331s

图21:从SYK密码器解密资源数据

30112191-1221-4011-94cc-d8b9cd06e042.png-w331s

图22:调用“GetDelegateForFunctionPointer”来获取API

注入的载荷是Remcos RAT,最初设计为远程计算机控制的合法工具。然而,自从2016年发布以来,黑客已经利用它来控制受害者设备。该配置可以通过RC4解密“设置”资源来获得,清晰的配置如图24所示。有趣的是,C2服务器的IP地址与XWorm有效负载的IP地址相同。

d50dbbeb-00e4-4ce1-916b-b75d3d884396.png-w331s

图23:“设置”中的加密配置

0548605b-70f3-48e5-b4fc-289fbbad48bc.png-w331s

图24:解密的配置

XWorm和Remcos的组合创建了一个具有多种恶意功能的强大特洛伊木马。如图25所示,C2服务器的流量报告显示欧洲和北美是这次恶意活动的主要目标。作为其的策略的一部分,网络钓鱼活动利用PDF流对象并利用"search-ms"功能引诱不知情的受害者。为了进一步逃避检测,黑客熟练地使用Rust注入器"Freeze.rs"和MSIL文件"SYK Crypter"。在本篇博客中,我们深入探讨了通过钓鱼邮件使用的攻击方法,并检查了欺骗受害者所涉及的各种文件。此外,我们对Freeze.rs的功能进行了全面的概述,并详细介绍了SYK Crypter的工作原理。鉴于这些发展,用户应继续警惕处理可疑邮件,并对潜在威胁保持警惕。

2e4ae0b8-58a8-4da0-97af-b5da9e45c906.png-w331s

图25:遥测技术

Hostname:

  • freshinxworm.ddns.net
  • churchxx.ddns.net
  • plunder.ddnsguru.com
  • plunder.dedyn.io
  • plunder.jumpingcrab.com
  • plunder.dynnamn.ru

IP Address:

95.214.27.17 ZoomEye搜索结果

Files:

40c9d3dec84aa057c167005f860749a2cfa55faa0cddd2fe39aaf3906819203c
5a47b18066d8dcd0fbc524f529002cf0a270d8394de928e8426fa06959a82704
40041c3240eaa39da781a68f6a60f93577f1b0bbdaee5a0297d7fe329c073baa
908656aecc2ae845249acb392fbaa5ba3f8d26b05f4d762afb85b622f7eadcf0
ca0efb6da9edbe627ab206a7f494adb42f8483da1d574ddb8f723c1ddfeaecc4
09505b5cf1541b783f14b1bf1403b918fae70f049d72f47439bd068a43ed8e0a
88aeb09dcc59858c9969b7ae1e0e2b58f0aa90b2d27a5edfe9cd82e602ed5952
f44e495e1301866188a62916859075ed73d13193823c69884312f04785707279
d7e684fe7f3729edd70e2855528af3e634789155d687ed98911d1d2f0200d2a6
6c6da5a649f9165834c24ac8f7e2332a5612eda54312dcc9f107ab29182e58c9
b499cdefac0faa328775ebb6e64b351ee43498532f987743a5a6dcfd5266f20f
58235e47d5f5b8218da1d5e9dd3449c4f8969f038bba018521f9884fa1cdf693
dd806527cd56244208ee530ee26c90004eb7af343ffdb618c031f63cb1d0e240
9ce4e79962ec3e5a307282afcb72b4da39c4a2aace29f3f85c060d8c07cf3905
47e238a43f9cc38f2d4e449c7d8a557b990e60773ad02820717a634c22b609be
c4e613ee1365d8561be02525896c095c8a3fda3199f2f615ab32a644f3d90451
b54a4f92b1081f0c10a41c2404d51ed340181c485751efb974113a5cf401ad9c
b26144c6e42601f1f1be09ece7c7fcb127637db3b953065648d1b1f371da7e8a
904343ba2502d390b36403181e77192a62f31e98c87eb91906fbae27019b4c0d
98ab2fc44063d4e00f221e502419d9cca598fafb9e1e00352149327267604bc1


Paper 本文由 Seebug Paper 发布,如需转载请注明来源。本文地址:https://paper.seebug.org/3008/


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK