来自 应用 2021-06-09 02:13 的文章

ddos高防ip_防德铅弹还是jsb精度高_限时优惠

ddos高防ip_防德铅弹还是jsb精度高_限时优惠

在APT28 DLL后门闪电战中这篇博文是《调情IDA和APT28》的后续文章,我们讨论了生成IDA Pro签名以识别和消除良性库代码。在这样做的时候,我们可以把注意力集中在负责定义植入物行为的定制代码上。这一次,我们将深入研究同一个APT28示例,分析其功能并深入了解其特性。概述哈希:B40909AC0B70B7BD82465DFC7761A6B4E0DF55B894DD42290E3F72CB4280FA44文件类型:Windows x64 DLL PE编译时间戳:2018年7月4日14:38:54图1:APT28示例详细信息分析表明,植入是一个多线程DLL后门,使威胁参与者(TA)能够完全访问和控制目标主机。当由C2命令时,植入物可以上传或下载文件,创建进程,通过命令外壳与主机交互,并根据定义的睡眠/活动时间表连接到C2。如第1部分所述,植入物是用C++编写的,静态链接是针对OpenSSL和POCO C++框架的。由于该文件打包为DLL,因此其目的是将其注入一个长期运行的进程中,该进程被授予Internet访问权限(如NetSvc服务组)或具有本地防火墙权限的进程。我们不认为这个DLL是要作为一个更大的工具的模块来操作的。入口点恶意代码通过DllMain导出发生。植入程序的首要任务是加载合法的微软npmproxy.dll在"c:\windows\system32"中找到。加载后,个人如何防御ddos攻击,五个植入导出的地址"DllCanUnloadNow"、"DllGetClassObject"、"DllRegisterServer"、"DllUnregisterServer"和"GetProxyDllInfo"的地址设置为Microsoft DLL中相同的良性导出的地址。其原因尚未得到证实,但很可能是为了逃避端点保护,即扫描导出地址以查找代码更改(与预定的签名数据库相比),或针对已知恶意代码的数据库。也许通过将自己的出口设置为良性复制品,植入物试图保持不被发现:图2:PE出口地址的替换替换导出地址后,将启动一个线程来执行主代码路径。在此过程中,启动第二个线程,负责使用C2执行发送和接收操作。全局变量构成处理C2消息的线程间同步的基础。互斥主线程的第一个任务是创建全局唯一ID(GUID)互斥体"1b8232f6-6806-4733-901d-62bf3ef33e6c"。GUID字符串可以在二进制文件中以纯文本的形式找到,这提供了一个潜在的(尽管可以简单地替换)IoC。按照惯例,如果mutex创建失败,则示例将终止而不执行进一步的操作。机器指纹在创建互斥之后,植入程序使用主网络接口的以太网(MAC)地址、主机名和Windows版本字符串生成一个唯一的CRC-32主机指纹。最后的CRC-32结果用固定常数0x64113进行异或运算。生成的主机指纹稍后用于构建C2信标URL,并推测出植入物在每台受感染机器上的恶意使用。指挥与控制(C2)与C2服务器的主要通信协议是RSA加密的,Base64编码的JSON通过HTTPS(TLS,端口443)交换,或者作为备用协议,使用端口80在纯HTTP上交换。在我们的分析中,ddos防御溯源,植入物没有尝试使用任何其他应用协议。HTTP请求的用户代理字符串由"ObtainUserAgentString"API调用的返回值填充,如果失败,则使用硬编码替代字符串(请参阅下面的IOC)。对出口代理服务器的支持通过调用"WinHttpGetIEProxyConfigForCurrentUser"包含在内。结果在C2活动之前被解析并提供给Poco框架的"HTTPClientSession::setProxyConfig"。一个1024位的RSA密钥对嵌入在植入物中,用于加密和解密主机与C2之间的通信。私钥解密入站流量,而公钥加密出站流量。不协商流密码或会话密钥。"malaytravelgroup[.]com"的初始HTTPS信标是一个GET请求,由随机选择的URL路径连接以及包含参数split count、XOR常量0x64113(在生成主机CRC-32时也使用)和计算的CRC-32指纹组成。查询字符串用随机数据填充以防止特殊分析,最后使用Base64编码:场姓名字节价值评论1-11-254号参数拆分计数为ASCII值。2"援助"40x64113型生成主机CRC-32时使用的异或常量。可能是唯一的植入物ID。三"出价"4变量CRC-32主机指纹。表1:C2信标查询参数URL路径组件构建为一到三个字符串("/"分隔),从一组加密的字符串表生成。解密版本见附录。Base64编码的数据被分成随机数目的参数,并作为一种模糊处理的方法进行填充。查询参数的名称使用1-4个大写/小写字符随机生成:姓名价值解释>b64泳uDecode(Mg)>>0x32("2")在Base64解码之前,所有连续查询参数都删除了前两个字符。然后丢弃解码结果的第一个字节,以获得最终值:CYlp=Tj9RNBBg=>>b64解码(9RNBBg==)>>F5 13 41 06 JOM=uJfgAz9Zpw>>b64解码(fgAz9Zpw)>>7E 00 33 F5 9A 700x00064113>>XOR常量/植入ID 0x709AF533>>主机CRC-32指纹一旦接收到信标并对其进行解码,下一个交互阶段就是发出命令来驱动植入物的功能,性价比高的全球高防cdn,例如提供限制植入物活动的活动时间表/睡眠间隔。域生成算法(DGA)"malaytravelgroup[.]com"的主C2域用于初始信标。像所有敏感字符串一样,它是异或编码的,只有在需要时才显示出来。该植入物还包含一个基于线性同余生成器(LCG)的算法,用于生成看似备份的C2域名。奇怪的是,由于使用了固定的种子值(0xC31),实现是100%确定的,wayosddos攻击防御,如图4所示。每次调用DGA将产生相同的五个域:SchoolthillHungryProcess[.]com reasonwithusefulpolicy[.]com Street under relevant people[.]com experiencewithweakkid[.]com系统before nice parent[.]com图4:编码的C2服务器一旦域被生成,它们就被异或编码。这里可以看到LCG的实现,以及它的恒定种子值:图5:使用固定种子值的DGA LCG域名是由3个加密字符串表中的4个字符串表查找串联而成的。表3在生成过程中被引用了两次。顶级域(TLD)后缀硬编码为".com"。表字符串数199231三149表3:用于域生成的字符串表大小假设继续采用一个由四部分组成的域名,LCG将能够产生数百万个独特的排列。不考虑日期、时间、主机标识或其他输入变量,将其输出限制为相同的五个变量的原因尚不清楚。附录中提供了解密字符串表的副本。通过手动减少两次检查之间的延迟,我们加速了植入物产生的C2活性。奇怪的是,在一个24小时的观察窗口中,没有尝试与生成的域进行通信。测试了不同的可达性场景,从格式错误的响应到无法访问的IP地址。在任何时候,防御ddos云,植入都没有生成任何与生成的域相关的DNS或HTTP流量。可以想象备份域是通过主站点发出的http302重定向来访问的,但这似乎会使主域和备份域无法满足故障、迁移或关闭的要求。也有可能生成的C2域仅对某些植入命令(如文件上载或下载)有效。由于缺乏直接使用它们的任何证据,我们可以推测生成的域可能是一个蜜罐。访问t