腾讯电脑管家曝光外挂幽灵团伙:借助辅助网站传播双枪
暗云系列Bootkit木马是迄今为止最大的木马之一。自2015年以来,它已经吸收了数百万台电脑。暗云木马使用了许多巨大而新颖的技术来实现持久的隐藏。暗云木马吸磁盘主导区(MBR),中毒用户可以使用腾讯电脑管家的急救箱进行处理。克日,腾讯御见威胁情报中心发现暗云系列Bootkit木马又出现了许多新的变种…… 一、概述
暗云系列Bootkit木马是迄今为止最大的木马之一。自2015年以来,它已经吸收了数百万台电脑。暗云木马使用了许多巨大而新颖的技术来实现持久的隐藏。暗云木马吸磁盘主导区(MBR),中毒用户可以使用腾讯电脑管家的急救箱进行处理。
克日,腾讯御见威胁情报中心发现暗云系列Bootkit木马出现了许多新的变种,其中新发现的变种1将在核心层网络中tj.tagcbm1t.com下载shellcode解密执行,其工艺手段和暗云Ⅲ因此,它被命名为暗云Ⅲ v3.0。
新发现的变种2将插入应用层apc并毗邻C2服务器upax.ximics.com,下载payload解密执行,其工艺手段和暗云I因此,它被命名为暗云I v2.0。
暗云系列木马变种的最终负荷不同,不同的病毒运营团伙会有不同的赚钱模式,这取决于木马相邻C2下载服务器ShellCode。腾讯皇家威胁信息中心监控暗云系列木马几乎涉足所有病毒木马黑暗行业赚钱模式:从锁定主页、强制流量、弹出广告、推广软件、安装采矿木马DDoS攻击,几乎无恶不作。
暗云系列Bootkit木马版对比如下:
发现暗云系列的时间和主要特征
腾讯安图高级威胁追溯系统可查询暗云系列木马的家族图谱
二、暗云系列木马新变种详细分析
暗云系列木马新变种 ,1扇区被绑定MBR指导代码,两个区域是原始的MBR的备份,3-63加密风扇区域payload 吸烟后的风扇区域结构如下
熏制暗云后,磁盘指导扇区内容被改写
2.1 MBR指导代码绑定分析
MBR强制指导代码的执行过程如下:
BIOS自检和硬件检测完成后,将安装有操作系统的磁盘的第一个风扇区域读取内存的0000:7C00因为MBR指导代码被强制修改,病毒代码被执行
7C00病毒代码的主要作用是治疗病毒代码3-63扇区的加密payload读取内存解密并执行,payload内存将被复制8F00:0000处
8F00:0000处代码执行后,系统将被迫停止表格hook int15暂停,绑架后int15中止例程地址被修改8F00:247
读取第二扇区备份的原始MBR内存地址0000:7c00继续执行原始MBR
被胁制后MBR指导代码
被胁制后int15
跳到原始MBR继续执行
2.2 INT 15中止例程威胁分析
INT 15中止被挪用后木马获得了执行机遇,在int15 暂停例程绑架的主要功能是系统版本的基于特征码搜索指导启动文件,基于差异hook具体执行流程如下:
搜索特征码E9D501EB0490000000528BC30E076633判断是否是指导启动文件(注:指导启动文件在系统盘根目录下,vista之前是ntldr,Vista之后是bootmgr,指导文件前16字节为此特征码),如果匹配,则继续进行下一次搜索,否则将完成;
搜索指导文件特征码后,继续搜索特征码665266556633ED666A20665366CB66(注:该特征为bootmgr文件偏移0xA8c处的代码),如果搜索到,首先会在这个偏移处patch bootmgr,被patch后会跳转到8F51B如果搜索不到,继续下一步搜索;
搜索特征码FF73F883E103F3A4E88BF085F6741F(注:此特征码为ntldr搜索文件中的代码特征)patch。
搜索bootmgr特征码
搜索ntldr模块中的特征码
bootmgr被patch后代码对比
2.3 珍爱模式patch代码剖析
木马兼容处理不同的操作系统,vista之前patch bootmgr ,之后patch ntldr,下面以patch bootmgr以分析为例。
通过以上分析,bootmgr从加载到偏移0xA8c木马再次获得执行机会,此时将跳转8F51b处执行。此时,它已经从16个真实模式转移到珍爱模式。执行流程如下:
通过代码特征搜索bootmgr!Archx86TransferTo32BitApplicationAsm和bootmgr!Archx86TransferTo64BitApplicationAsm,如果搜索到了,就会反应patch(注:对x86和x64在32位系统和64位系统中进行兼容处理bootmgr到winload.exe的跳转)
通过代码特征566A1041554BCBC3搜索OslArchTransferToKernel,如果搜索到了,就会反应patch,该函数被patch后会跳转到8F7A5(注:在BootMgr.exe加载Winload.exe时pathc OslArchTransferToKernel,为hook ntoskrnl.exe做准备)
hook ntoskrnl的导出函数ZwCreateSection,该函数被hook后会跳转到8440ed00其主要作用是挪用PsSetCreateThreadNotifyRoutine注册线程设置的回调例程(注:回调例程完成了木马的主要恶意效果)
通过代码特征搜索
"暗云"查杀
OslArchTransferToKernel被patch后
ZwCreateSection被patch后
2.4 线程回调例程分析
木马挪用PsSetCreateThreadNotifyRoutine注册线程设置的回调例程,完成了木马的主要恶意效果。包括珍惜前62个区域的数据,在网上拉取shellcode等。
这次发现的暗云系列木马从MBR熏染代码到hook winload,到hook nt核心,其过程基本相同,主要区别是在注册线程回调程序后,其回调程序中的恶意代码不一致,然后简要分析其回调程序。
2.4.1 暗云Ⅲ v3.0
暗云III v3.0其线程回调例程执行流程如下:
挪用RtlInitUnicodeString初始化csrss.exe;
查找历程csrss.exe,检测到csrss.exe后则继续下一步;
熏染MBR,珍惜1到62个区域的数据。如果您试图阅读前62个区域的数据,您将返回正常数据。如果您试图编写前62个区域的数据,您将返回编写的数据进行欺骗,现实尚未编写;
挪用CreateSystemThread系统线程的建立主要完成shellcode下载执行等功能,下载地址为tj.tagcbm1t.com,现在域名已经失活了,后期不清理再活跃,可以拉任何恶意代码执行
线程回调
完成系统线程函数shellcode下载执行等功效
2.4.2 暗云I v2.0
暗云I v2.0回调例程的执行过程如下:
挪用RtlInitUnicodeString初始化svchost.exe,查找历程svchost.exe,如果找到,标志位置为1;
查询到svchost.exe插入插入APC,该APC功效是下载addata64.db/addata64.db这部分行为和暗云被解密和执行相应的文件I 差别不大。详细分析可参考附录中暗云的分析。
域名现在已经失活,url地址为:
http://upax.ximics.com/update/addata.db
http://upax.ximics.com/update/addata64.db
线程回调
联网拉取payload
插入apc
三、安全建议
-
暗云系列木马主要通过插件、第三方流氓软件、软件下载器、破解工具、盗版软件等传输。建议用户通过计算机管家的软件治理效果在官方网站上下载或下载应用程序,并停止从高风险网站下载和安装软件。
-
中毒用户可以用管家急救箱查杀,下载地址:http://dlied6.qq.com/invc/xfspeed/qqpcmgr/other/SystemAidBoxPro.zip
急救箱查杀图
附录:IOCs
URL:
upax.ximics.com
tj.tagcbm1t.com
http://upax.ximics.com/update/addata.db
http://upax.ximics.com/update/addata64.db
参考链接:
1.暗云Ⅲ BootKit 木马剖析
http://www.freebuf.com/articles/system/134017.html
2.暗云”BootKit详细的木马工艺分析
http://drops.xmd5.com/static/drops/binary-4788.html
3.暗云Ⅱ BootKit 木马剖析
https://slab.qq.com/news/kuaixun/1286.html
4.超大规模暗黑流量DDoS溯源剖析
https://slab.qq.com/news/kuaixun/1286.html
病毒也过万圣节?僵尸男孩,美人蝎子?……谁最擅长伪装?