来自 CC防护 2021-06-09 04:20 的文章

游戏盾_宝可梦剑盾游戏下载_免费测试

游戏盾_宝可梦剑盾游戏下载_免费测试

介绍2018年下半年,BlackBerry Cylance threat的研究人员跟踪了一项针对欧洲、中东和非洲地区多个垂直市场的公司的活动。该活动似乎与MenuPass(又名APT10/Stone Panda/Red Apollo)的威胁参与者有关,并利用名为QuasarRAT的开源后门来实现组织内的持久性。我们通过利用机器学习(ML)来分析我们的恶意软件语料库,确定了几种不同的装载器变体,以适应特定目标。自2018年底以来,我们没有在野外观察到新的类星体样本,大致与联邦调查局(FBI)起诉MenuPass组织几名成员的时间吻合。QuasarRAT是一个用C编写的轻量级远程管理工具。它可以收集系统信息、下载和执行应用程序、上传文件、记录击键、抓取屏幕截图/摄像头截图、检索系统密码和运行shell命令。远程访问特洛伊木马(RAT)是由定制的加载程序(也称为DILLWEED)加载的。加密的QuasarRAT有效载荷存储在微软.NET目录,解密到内存中,并使用CLR主机应用程序实例化。在后来的变体中,还使用了一个附加组件来安装RAT作为服务(又称DILLJUICE)。下面的技术分析集中在MenuPass开发的定制QuasarRAT加载器以及对QuasarRAT后门的修改。介绍QuasarRAT加载器概述QuasarRAT加载程序通常作为64位服务DLL到达。它的主要目的是使用CppHostCLR技术解密、加载和调用内存中的嵌入式.NET程序集。此技术基于Microsoft DevCenter示例中的代码片段。使用ConfuserEx混淆的程序集随后负责查找、解密和执行单独的恶意.NET模块。加密模块存储在%WINDOWS%中\微软.NET目录在我们的调查中,我们遇到了装载机的几个变体,这些变体指示了一条持续了一年多的开发路径;我们还能够找到属于这些加载器变体的一些(但不是全部)加密有效载荷文件。解密后,我们发现有效载荷是基于quassarrat[1],c语言做ddos防御,2.0.0.0和1.3.0.0开源代码的后门。特征几层模糊有效负载及其直接加载程序是.NET程序集初始加载程序使用CppHostCLR[2]技术注入并执行.NET加载程序集有效负载加密并存储在微软.NET目录已知加载QuasarRAT,但可以与任何其他.NET负载一起工作初始加载程序和反汇编初始加载程序二进制文件是一个64位PE DLL,旨在作为服务运行。DllMain函数为空,而恶意代码包含在ServiceMain导出中。一些变体包括一个附加的随机命名的导出,它创建恶意服务。在较新的版本中,这个功能被转移到一个独立的模块中。该恶意软件首先对嵌入的下一阶段可执行文件进行除臭。在最早的变体中,这是使用简单的异或和由随机字母组成的硬编码8字节密钥来执行的。后来的变体使用了一种更高级的基于XOR的算法,它需要两个单字节密钥。实施此方法可能是为了阻止XOR暴力攻击:图1:第二阶段解密循环从变体3开始,.NET注入机制在第二阶段DLL中实现,根据调试字符串,该DLL似乎是名为"AntiLib"的项目的一部分:图2:调试变量3中的字符串这个DLL由一个类似于shell代码的模糊例程以反射方式加载到内存中,并通过执行带有明确名称"fuckyoanti"的导出来调用。旧的示例不包含此第二阶段库,家庭电脑防御ddos,.NET加载功能直接在初始加载程序中实现:图3:代码和第二阶段DLL导出表中的fuckyounti字符串一旦执行,"fuckyounti"函数将使用相同的基于异或的算法,使用不同的硬编码密钥对.NET加载程序二进制文件进行解密。为了将程序集直接加载到内存中,高防cdn的目标客户是,该恶意软件使用了一种称为"CppHostCLR"的技术,该技术在Microsoft DevCenter中有详细描述。该代码看起来像Microsoft提供的示例代码。它使用硬编码的类和方法名调用加载程序入口点,这些名称是随机的,并且每个示例都不同:图4:CppHostCLR技术的使用图5:调用.NET程序集加载程序字符串加密硬编码的.NET版本字符串和几个与持久性相关的字符串(在早期的变体中)是使用自定义算法加密的。该算法基于AES-256的单单元T盒实现,启用ddos攻击防御什么意思,结合16字节异或。这两个键都是硬编码的,每个示例都不同,除了最旧的变体。最旧的变体将键分别设置为"1234567890ABCDEF1234567890ABCDEF"和"1234567890ABCDEF",高防ip和cdn,并且在样本之间没有变化:图6:AES和XOR解密密钥示例图7:字符串解密例程数字证书属于装载机变型3的样品具有CONVENTION digital LTD(序列号52 25 B8 E2 2D 3B BC 97 3F DD 24 2F 2C 2E 70 0C)的有效数字签名,由Symantec会签:图8:来自变体3的数字证书.NET加载程序一旦执行,恶意程序集将遍历%WINDOWS%下的所有文件\微软.NET并尝试解密与指定大小匹配的文件。它使用CBC模式下RijndaelManaged算法的实现:图9:查找加密的有效负载图10:最终有效载荷解密如果解密成功,恶意软件将尝试加载已解密的程序集并调用指定的方法:图11。调用后门负载最后的有效负载程序集作为加密文件存储在微软.NET框架目录。框架版本以加密形式硬编码在加载程序二进制文件中,并且在大多数示例中设置为"v4.0.30319"。每个示例的位置不同,文件名模仿同一目录中找到的另一个合法文件。示例路径:%WINDOWS百分比\微软.NET\Framework\v4.0.30319\WPF\字体\GlobalSerif.CompositeFont.rsp%WINDOWS百分比\微软.NET\框架\v4.0.30319\Microsoft.Build.Engine.dll.卸载有效负载被解密并作为"客户机"加载到内存中。我们遇到了客户端的两个版本:2.0.0.0和1.3.0.0。它们相似,它们的配置节中的版本字符串都设置为"2.0.0.0":图12。内存中的后门程序集(版本2.0.0.0)图13。内存中的后门程序集(版本1.3.0.0)准阵列后门QuasarRAT是一个开源项目,宣称它是为合法的系统管理和员工监控而设计的。它的代码和文档可以在GitHub上找到。特征:图14。自述文件.md来自Quasar GitHub存储库行为NET负载是一个非常模糊的后门,它基于名为QuasarRAT[3]的开源远程管理工具。配置存储在一个名为Settings的类中,敏感字符串值在CBF模式下用AES-128加密,base64编码。字符串的解密密钥从"设置"中的ENCRYPTIONKEY值派生,对于所有字符串都相同:图15。部分加密配置(除臭后)威胁参与者修改了原来的后门,在配置中添加了自己的字段,以及用于检查互联网连接的代码。如果在config的最后一个值中指定了有效的URL地址,恶意软件将尝试下载该URL的内容。只有下载成功后,才会继续连接到指挥与控制(C2)服务器:图16:自定义连接检查后门与C2服务器通信,其IP地址在配置的HOSTS值中提供。所有通信都使用AES-128在CBF模式下使用配置中的密钥和AUTHKEY值进行加密:图17。C2 IP地址在内存中解密解密的配置示例:其他观察结果装载机变型差异所有变型的共同特点:我们收集到的大多数示例似乎都是用VisualStudio2010 RTM build 30319编译的,除了variant 4,它使用了不同/未知的编译器签名一些字符串使用基于AES256和XOR的自定义实现的算法进行加密.NET加载器始终使用Microsoft CPPHostCLR方法注入;它的入口点类/方法名称是随机的,并且每个示例都不同.NET加载程序与ConfuserEx v1.0.0混淆变体2和更新版本的常见功能:.NET加载程序的大小为65536字节.NET加载器内部名称模拟.NET运行时目录中的随机有效文件名第二阶段使用基于异或的算法进行加密,该算法使用两个硬编码的1字节密钥,每个示例都不同用于字符串解密的AES和XOR密钥以随机生成的字符串的形式硬编码存储,每个示例都不同变体1:假设开发时间表:2017年6月至2017年12月初始加载程序二进制文件的大小:~150 KB.NET加载程序大小:56832字节.NET加载程序内部名称:装载机.dat/loader2.数据只包含一层模糊处理第二阶段使用简单的异或加密,使用由8个随机大小写字母组成的硬编码密钥包含一个随机命名的导出,它创建一个服务作为持久性机制硬编码字符串解密密钥123Ef670AES ABCD6789AES=12389AES异或=1234567890ABCDEF变体2:假设开发时间:2018年1月初始加载程序二进制文件的大小:163-169 KB变体3:假设开发时间:2018年2月初始加载程序二进制文件的大小:262 KB第二层o