学习啦>新闻资讯>热点>

暗云木马感染数据免费查询地址(2)

佩珊分享

  “暗云”木马简介:

  “暗云”是一个迄今为止最复杂的木马之一,感染了数以百万的计算机,暗云木马使用了很多复杂的、新颖的技术来实现长期地潜伏在用户的计算机系统中。其使用了BootKit技术,直接感染磁盘的引导区,感染后即使重装格式化硬盘也无法清除。

  该木马使用了很多创新的技术,有以下特点:

  第一、隐蔽性非常高,通过Hook磁盘驱动实现对已感染的MBR进行保护,防止被安全软件检测和清除,并且使用对象劫持技术躲避安全人员的手工检测。隐蔽性极高,截至目前为止,几乎所有的安全软件都无法检测和查杀该木马。

  第二、云思想在暗云木马中的使用:木马以轻量级的身躯隐藏于磁盘最前端的30个扇区中,这些常驻与系统中代码并没有传统木马的功能,这些代码的功能仅仅是到执行的服务器(云端)下载其他功能代码到内存中直接执行,这些功能模块每次开机都由隐藏的模块从云端下载。因此木马体积小巧,且云端控制性强。

  第三,Ring 3与Ring 0的通信方式:微软正统的通信方式是Ring 0代码创建驱动设备,Ring 3代码通过打开Ring 0创建的设备开实现相互之间的通信。常见的木马使用的通信方式则是在Ring0对指定的API函数进行Hook,而暗云木马是通过注册回调的方式来实现。

  第四,操作系统全量兼容:一份BootKit同时兼容x86、x64两种版本的操作系统,且能够兼容xp、win7等当前主流的操作系统版本,因此影响范围十分广泛。在推广获利方面,该木马也是涵盖当前主流的推广获利渠道——推广小网站、推广手机应用、推广游戏、大网站加推广ID。

  第五,有效对抗杀软:有于木马的主体在内核中运行,且启动时间比所有的安全软件都早,因此大部分的安全软件无法拦截和检测该木马的恶意行为。木马能够在内核中直接结束部分安全软件进程,同时可以向任意安全软件进程插入APC执行。插入的APC代码会关闭安全软件的文件监控设备句柄,会导致安全软件文件监控失效,大大减少了被检测的机率。

  图1. 暗云木马启动流程图(图中按红紫绿黑分四个模块)

  图2 . 暗云木马模块功能分工示意图

  一、常驻计算机模块(MBR)行为

  概述:

  电脑开机后,受感染的磁盘MBR第一时间获得CPU的控制权,其功能是将磁盘3-63扇区的木马主体加载到内存中解密执行,木马主体获得执行后通过挂钩int 15中断来获取第二次执行的机会,随后读取第二扇区中的备份MBR正常地引导系统启动。

  系统引导启动时会通过int 15中断查询内存信息,此时挂钩15号中断的木马便得以第二次获得CPU控制权,获得控制权后木马挂钩BILoadImageEx函数,调用原始15号中断并将控制权交回给系统继续引导。

  当系统引导代码调用BILoadImageEx加载ntoskrnl.exe时,木马便第三次获得控制权,获得控制权后木马再一次执行挂钩操作,此次挂钩的位置是ntoskrnl.exe的入口点,随后将控制权交给系统继续引导。

  当引导完毕进入windows内核时,挂钩ntoskrnl入口点的木马代码第四次获得CPU控制权,此时木马已真正进入windows内核中,获得控制权后,分配一块内存空间,将木马内核的主功能代码拷贝到分配的空间中,并通过创建PsSetCreateThreadNotifyRoutine回调的方式使主功能代码得以执行。至此完成木马由MBR到windows内核的加载过程。

  木马主功能代码的主要实现以下三个功能:1、劫持磁盘驱动实现隐藏和保护被感染的MBR;2、向ring3的一个svchost进程插入APC;3、通过设置注册表回调来接收ring3返回。

  插入到svchost代码只实现一个简单的功能:判断操作系统类型,从云端下载相应的Addata.dat模块到本地,解密执行,云端模块的URL硬编码在Shellcode中。

  图3. BootKit 启动过程示意图

  代码细节:

感染后的MBR(黑)与原始MBR(红)对比图

  二、云端模块一(Addata.dat)行为

  概述:

  此模块为木马云端配置的第一个模块,其格式固定,以简单的循环移位的方式进行加密,解密后的模块数据结构如下:

  云端模块1解密后的数据结构

  该模块的前4字节为标志“CODE”,仅作为数据合法性校验,校验成功后直接执行其后的Shellcode,而Shellcode的功能则是负责将Addata.dll在内存中加载,最终从其入口点处开始执行之。

  Addata.dll的主要功能是下载者,其具体的行为仍然依赖于云端配置,其运行后首先会从云端下载配置文件,配置文件所在的URL为:http://ad.sqc3.com/update/config.db,该URL硬编码在文件中。下载后解析配置文件,由配置文件来决定代码中的功能是否执行,以及具体的参数信息,能够实现的功能以及实际配置文件信息如下表所示:

  代码细节:

  1、Addata.dll中硬编码的配置文件URL信息

  2、设置浏览器主页的相关代码

  3、对下载的文件可进行不同的处理(LoadLibrary、CreateProcess、加载到内核执行),这里还有一个很有意思的代码:DeleFileA(“我真的凌乱了…….”),作者都凌乱了,真的很复杂!

  4、Shellcode是通过NtSetInformationKey代入内核的(内核注册了cmpCallBack)

  >>>点击下一页继续了解精彩的“暗云BootKit木马详细技术分析”

  

上一篇:阿里登顶亚洲的创业故事

下一篇:高考满分作文《深入灵魂的热爱》

3492894