暗云Ⅲ BootKit 木马分析

概况

“暗云”系列木马自2015年初被腾讯反病毒实验室首次捕获并查杀,至今已有2年多。在这两年多时间里,该木马不断更新迭代,持续对抗升级。

从今年4月开始,该木马卷土重来,再次爆发,本次爆发的暗云木马相比之前的版本有比较明显的晋级特征,因此我们将其命名为暗云Ⅲ。暗云Ⅲ与之前版本相比有以下特点和区别:

第一、更加隐蔽,暗云Ⅲ依旧是无文件无注册表,与暗云Ⅱ相比,取消了多个内核钩子,取消了对象劫持,变得更加隐蔽,即使专业人员,也难以发现其踪迹。 第二、兼容性,由于该木马主要通过挂钩磁盘驱动器的StartIO来实现隐藏和保护病毒MBR,此类钩子位于内核很底层,不同类型、品牌的硬盘所需要的 hook点不一样,此版本木马增加了更多判断代码,能够感染市面上的绝大多数系统和硬盘。 第三、针对性对抗安全软件,对安全厂商的“急救箱”类工具做专门对抗,通过设备名占坑的方式试图阻止某些工具的加载运行。

图1. 三代暗云木马比较

图2. 暗云Ⅲ 木马启动流程

一、由MBR到Windows内核

暗云系列木马通过感染磁盘MBR来实现开机启动,三代暗云其启动过程,基本没变,都是由MBR开始通过int 15中断一步步的hook来跟随系统的引导流程进入系统内核执行,该套代码可兼容xp、vista、win7、win8等主流操作系统,包括64位和32位。其启动过程如图2所示。(具体细节参见:“暗云”BootKit木马详细技术分析: http://www.freebuf.com/vuls/57868.html)

图3. 暗云系列 BootKit启动过程示意图

二、内核ShellCode 1 & ShellCode 2行为分析

ShellCode 1

ShellCode 1是木马进入Windows内核后,通过创建一个线程开始执行的第一段代码。其功能是通过磁盘钩子、定时器守护等一系列操作保护恶意的磁盘MBR不被检测和修改。此外,木马会在内核中直接联网下载ShellCode并执行,我们将下载的shellcode称为ShellCode 2。shellcode2主要功能是向应用层插入apc。

详细分析:

1) 寻找磁盘驱动器(atapior iaStor or LSI_SAS)对应的驱动对象。

图4.从文件系统开始查找磁盘驱动对象
图5.常见的磁盘对象驱动与小端口驱动对应关系

2) 根据磁盘类型和操作系统替换DriverStartIo、 AtapiHwStartIo、RaUnitStartIo等函数,实现阻止其他程序读取磁盘1-3F 扇区(MBR)。当检测到读MBR时, 返回一个构造好的正常的MBR,检测到写MBR时,则直接pass 该操作。

图6.MBR保护挂钩逻辑示意图
图7.根据磁盘驱动对象和小端口驱动设置不同的钩子

3) 新增一个计时器,在DPCRoutine 中反复检测磁盘钩子,如果钩子被删除则重新挂钩,挂钩超过5次则强制重启机器。检测 自身代码是否被patch,一旦发现自己被patch则蓝屏。

图8.自身代码完整性校验相关代码

4) 对指定设备名进行占坑,对抗急救箱工具

图9.占坑对抗急救箱代码

5) 直接在内核以TDI 的方式访问网络下载shellcode解密后直接在内核中运行。木马在TDI层用udp连接访问**.maimai666.com的8064端口获取shellcode。如果失败改用tcp连接**.maimai666.com的8864获取。且木马自带了dns服务器地址用来解析域名。

ShellCode2

shellcode2的功能是解压尾部数据,得到一个playload.dll ,尝试以APC的方式向应用层指定进程插入该dll文件。 Shellcode2会遍历进程,当发现以下某一进程时,进行插入,成功后不再尝试其它进程。

图11. 进程列表一

图12. 进程列表二

图13. 向指定进程插APC相关代码

三、playload.dll行为分析

playload.dll

该dll被以APC的形式插入到应用层进程中,根据配置信息执行相应的功能,能够实现的功能及具体配置情况如下表所示。下载的文件所在的URL为:hxxp://www.**sewle.com:8877/ds/cl.db。

能实现的功能

开关

参数信息

删除指定的服务

删除指定服务和注册表

下载指定Dll并Load

下载Exe并执行

下载恶意代码,注入到傀儡进程执行

http://www.**sewle.com:8877/ds/cl.db,解密后创建傀儡进程svchost.exe执行

1) 根据配置(配置信息直接内置在文件中,比暗云Ⅱ减少了一次联网下载配置的行为)来决定执行哪些操作,可以实现的功能包括删除指定服务,指定注册表,下载指定文件加载、运行、注入等

图14.删除服务相关代码
图15.下载文件并加载、执行、注入的相关代码

cl.db

该模块的结构是ShellCode+DLL,ShellCode的功能是在内存中展开执行解密后的DLL,DLL是个简单下载器,首先会从 hxxp://www.**sewle.com:8877/ds/kn.html下载配置文件,然后根据配置信息下载exe执行或者下载dll,最后创建傀儡进程svchost执行。对比暗云Ⅱ和暗云Ⅲ的配置文件中的Version字段,我们发现当前的版本已经达到624,说明该木马不仅持续活跃,而且更新频繁。

图16. 配置文件格式,IsExe字段标记是否为exe
图17.创建傀儡进程svchost.exe,并将内置有脚本解释器的恶意dll注入执行

四、木马功能模块

lcdn.db

该木马是暗云木马的主要功能模块,直接在内存中加载执行,该模块集成了lua脚本解释器,其主要功能不断从http://www.**sewle.com:8877/ld/ndn.db处下载lua脚本,并解释执行,该脚本非常频繁地变换中,通过跟踪几个脚本,发现当前下发的脚本主要功能是刷流量和攻击网站。控制者可随时更新服务器上的脚本,做各种恶意行为,对用户电脑造成严重的安全隐患。

图18.
BI~C|h1h2h3|“<>olul|超断ΣV表|概况“暗云”系列木马自2015年初被腾讯反病毒实验室首次捕获并查杀,至今已有2年多。在这两年多时间里,该木马不断更新迭代,持续对抗升级。从今年4月开始,该木马卷土重来,再次爆发,本次爆发的暗云木马相比之前的版本有比较明显的晋级特征,因此我们将其命名为暗云Ⅲ。暗云Ⅲ与之前版本相比有以下特点和区别:第一、更加隐蔽,暗云Ⅲ依旧是无文件无注册表,与暗云Ⅱ相比,取消了多个内核钩子,取消了对象劫持,变得更加隐蔽,即使专业人员,也难以发现其踪迹。 第二、兼容性,由于该木马主要通过挂钩磁盘驱动器的StartIO来实现隐藏和保护病毒MBR,此类钩子位于内核很底层,不同类型、品牌的硬盘所需要的 hook点不一样,此版本木马增加了更多判断代码,能够感染市面上的绝大多数系统和硬盘。 第三、针对性对抗安全软件,对安全厂商的“急救箱”类工具做专门对抗,通过设备名占坑的方式试图阻止某些工具的加载运行。图1. 三代暗云木马比较 图2. 暗云Ⅲ 木马启动流程一、由MBR到Windows内核暗云系列木马通过感染磁盘MBR来实现开机启动,三代暗云其启动过程,基本没变,都是由MBR开始通过int 15中断一步步的hook来跟随系统的引导流程进入系统内核执行,该套代码可兼容xp、vista、win7、win8等主流操作系统,包括64位和32位。其启动过程如图2所示。(具体细节参见:“暗云”BootKit木马详细技术分析: http://www.freebuf.com/vuls/57868.html) 图3. 暗云系列 BootKit启动过程示意图二、内核ShellCode 1 & ShellCode 2行为分析ShellCode 1ShellCode 1是木马进入Windows内核后,通过创建一个线程开始执行的第一段代码。其功能是通过磁盘钩子、定时器守护等一系列操作保护恶意的磁盘MBR不被检测和修改。此外,木马会在内核中直接联网下载ShellCode并执行,我们将下载的shellcode称为ShellCode 2。shellcode2主要功能是向应用层插入apc。详细分析:1) 寻找磁盘驱动器(atapior iaStor or LSI_SAS)对应的驱动对象。2) 根据磁盘类型和操作系统替换DriverStartIo、 AtapiHwStartIo、RaUnitStartIo等函数,实现阻止其他程序读取磁盘1-3F 扇区(MBR)。当检测到读MBR时, 返回一个构造好的正常的MBR,检测到写MBR时,则直接pass 该操作。 3) 新增一个计时器,在DPCRoutine 中反复检测磁盘钩子,如果钩子被删除则重新挂钩,挂钩超过5次则强制重启机器。检测 自身代码是否被patch,一旦发现自己被patch则蓝屏。4) 对指定设备名进行占坑,对抗急救箱工具 5) 直接在内核以TDI 的方式访问网络下载shellcode解密后直接在内核中运行。木马在TDI层用udp连接访问**.maimai666.com的8064端口获取shellcode。如果失败改用tcp连接**.maimai666.com的8864获取。且木马自带了dns服务器地址用来解析域名。 ShellCode2 shellcode2的功能是解压尾部数据,得到一个playload.dll ,尝试以APC的方式向应用层指定进程插入该dll文件。 Shellcode2会遍历进程,当发现以下某一进程时,进行插入,成功后不再尝试其它进程。 图11. 进程列表一图12. 进程列表二 三、playload.dll行为分析playload.dll该dll被以APC的形式插入到应用层进程中,根据配置信息执行相应的功能,能够实现的功能及具体配置情况如下表所示。下载的文件所在的URL为:hxxp://www.**sewle.com:8877/ds/cl.db。 能实现的功能开关参数信息删除指定的服务关删除指定服务和注册表关下载指定Dll并Load关下载Exe并执行关下载恶意代码,注入到傀儡进程执行开http://www.**sewle.com:8877/ds/cl.db,解密后创建傀儡进程svchost.exe执行1) 根据配置(配置信息直接内置在文件中,比暗云Ⅱ减少了一次联网下载配置的行为)来决定执行哪些操作,可以实现的功能包括删除指定服务,指定注册表,下载指定文件加载、运行、注入等cl.db 该模块的结构是ShellCode+DLL,ShellCode的功能是在内存中展开执行解密后的DLL,DLL是个简单下载器,首先会从 hxxp://www.**sewle.com:8877/ds/kn.html下载配置文件,然后根据配置信息下载exe执行或者下载dll,最后创建傀儡进程svchost执行。对比暗云Ⅱ和暗云Ⅲ的配置文件中的Version字段,我们发现当前的版本已经达到624,说明该木马不仅持续活跃,而且更新频繁。 四、木马功能模块lcdn.db该木马是暗云木马的主要功能模块,直接在内存中加载执行,该模块集成了lua脚本解释器,其主要功能不断从http://www.**sewle.com:8877/ld/ndn.db处下载lua脚本,并解释执行,该脚本非常频繁地变换中,通过跟踪几个脚本,发现当前下发的脚本主要功能是刷流量和攻击网站。控制者可随时更新服务器上的脚本,做各种恶意行为,对用户电脑造成严重的安全隐患。图18.图19.脚本内容安全建议和木马查杀: 暗云Ⅲ木马主要通过外挂、游戏辅助、私服登录器等传播,此类软件通常诱导用户关闭安全软件后使用,使得木马得以乘机植入。管家建议大家持续保持安全软件开启状态,不要运行来源不明和被安全软件报毒的程序。目前腾讯电脑管家已经能够准确检测和查杀暗云系列木马。同时管家已经提供该木马单独的专杀工具供用户下载使用。参考链接:http://www.freebuf.com/vuls/57868.htmlhttp://www.freebuf.com/articles/system/109096.html

安全建议和木马查杀:

暗云Ⅲ木马主要通过外挂、游戏辅助、私服登录器等传播,此类软件通常诱导用户关闭安全软件后使用,使得木马得以乘机植入。管家建议大家持续保持安全软件开启状态,不要运行来源不明和被安全软件报毒的程序。目前腾讯电脑管家已经能够准确检测和查杀暗云系列木马。同时管家已经提供该木马单独的专杀工具供用户下载使用。

参考链接:

http://www.freebuf.com/vuls/57868.html

http://www.freebuf.com/articles/system/109096.html

原文发布于微信公众号 - FreeBuf(freebuf)

原文发表时间:2017-06-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏FreeBuf

3步以内利用中间人MitM攻击从RDP连接中获得密码

今天和大家分享个小技术,简单几步通过执行MitM攻击同时从RDP连接中提取明文凭据。我这里使用的测试环境是Linux(1台)、Windows(2台),此环境仅供...

2023
来自专栏腾讯电脑管家的专栏

Petya 勒索软件新变种详细分析报告

据 twitter 爆料,乌克兰政府机构遭大规模攻击,其中乌克兰副总理的电脑均遭受攻击,目前腾讯电脑管家已经确认该病毒为 Petya 勒索病毒变种。

2160
来自专栏Youngxj

QQ群被恶意封了?一招教你如何封群发言

8.7K3
来自专栏逸鹏说道

平安证券自主开户客户端存在任意用户信息篡改漏洞

详细说明: 1、打开应用点击“马上开户”-“我知道了”,登录账户 2、未注册过的手机登录时,验证码可爆破。但是这个只是任意用户注册,是另外一个漏洞了。 3、...

3116
来自专栏安恒信息

“永恒之蓝”勒索病毒安全事件应急指导手册(附工具包)

相关说明 北京时间2017年05月12日,安恒信息监测到黑客利用NSA黑客武器库泄漏的“永恒之蓝”工具发起的网络攻击事件:大量服务器和个人PC感染病毒后被远程控...

3817
来自专栏FreeBuf

从某电商钓鱼事件探索黑客“一站式服务”

深信服EDR安全团队,整理分析了一起某电商钓鱼事件,通过关联信息,发现背后可能存在一个“产业链齐全”的黑客团伙,研究发现其具备“一站式服务”的黑客攻击手段。

1403
来自专栏信安之路

windows 应急流程及实战演练

当企业发生黑客入侵、系统崩溃或其它影响业务正常运行的安全事件时,急需第一时间进行处理,使企业的网络信息系统在最短时间内恢复正常工作,进一步查找入侵来源,还原入侵...

5944
来自专栏玄魂工作室

【翻译】旧技术成就新勒索软件,Petya添加蠕虫特性

原文链接:https://blogs.technet.microsoft.com/mmpc/2017/06/27/new-ransomware-old-tech...

2856
来自专栏安恒网络空间安全讲武堂

RFID技术|门禁卡破解|IC卡破解学习过程

安全不仅仅包含网络上的安全,在我们实际生活中也同样存在很多个安全相关的事物,可以说跟科技扯上关系的事物都会有安全问题,无线,蓝牙,手机,无人机,汽车。真正有问题...

41.4K5
来自专栏ytkah

微信公众号后台编辑器出现短暂故障 附找回素材的方法

  今天下午(大致为8月15日13:30-14:40),微信公众平台后台编辑器出现短暂故障,保存素材后会出现被清空的现象,15:30左右已全面修复。   对于因...

4406

扫码关注云+社区

领取腾讯云代金券