概述:
下载站的高速下载器一直是恶意木马大规模传播的温床,前段时间的暗云Ⅲ木马通过高速下载器传播推广,感染机器数高达数百万台。近期,腾讯电脑管家又拦截到了一个通过高速下载器大范围传播的恶性Bootkit木马——异鬼Ⅱ,令人吃惊的是这个恶意VBR的植入者,居然是一款比较知名的软件——甜椒刷机。
正因为开发者是正规的软件公司,软件上打了官方的数字签名,不少安全厂商将其加入白名单中,导致大量机器感染。该木马主要有以下特点:
1. 正规软件携带恶意代码:异鬼Ⅱ隐藏在正规软件中,带有官方数字签名,导致大量安全厂商直接放行。
2. 影响范围广:通过国内几大知名下载站的高速下载器推广,并且异鬼Ⅱ能够兼容xp、win7、win10等主流操作系统,影响数百万台用户机器。
3. 云控、灵活作恶:木马的VBR感染模块,以及最终实际作恶的模块均由云端下发,作者可任意下发功能模块到受害者电脑执行任意恶意行为,目前下发的主要是篡改浏览器主页、劫持导航网站、后台刷流量等。
4. 隐蔽性强、顽固性强:通过感染VBR长期驻留在系统中,普通的重装系统无法清除木马;异鬼Ⅱ还通过底层磁盘钩子守护恶意VBR,对抗杀软查杀。
(更多“异鬼”资料查看http://tav.qq.com/index/newsDetail/255.html)
一、 甜椒刷机通过下载器静默推广传播,云控篡改VBR
近期,甜椒刷机通过各大网站高速下载器疯狂静默推广,该版本的甜椒看似刷机软件,实则为恶性木马。异鬼Ⅱ隐藏了能够拉起云端恶意代码的后门,一旦运行,会从云端下载VBR感染模块感染电脑VBR,即使用户重装系统,也无法清除。
该版本甜椒刷机与官方http://www.onekeyrom.com/index.html最新版版本不同,应该是一个支线版本,但和官网的安装包用的是同一个数字证书签名,且木马使用的C&C服务器与其官方软件所用服务器一致。
1. 安装包行为
1) 运行后安装包首先会判断自身文件名中是否包含“20174”字符,如果包含则开始静默安装并在注册表、互斥量上做标记,准备感染。
2) 创建名为SamRootDetect的互斥量,创建HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{FC70EFDD-2741-495C-9A93-42408F6878D9}\un注册表键值。
3) 释放所有安装文件到指定目录后,运行主程序TJShuaji.exe,并Sleep 20秒,TJShuaji.exe启动后会检测互斥量,检测到才进行感染,所以必须在20秒内启动。
2. TJShuaji.exe行为
1) 检测是否存在名为SamRootDetect或者OdinDetect的互斥量,或者命令行中是否包含有以上字符串。若是,则设立感染标志。
2) 满足以上条件,则设立感染标志。
3) 判断感染标志,创建线程进行感染行为。
4) 在线程中判断注册表否存在{FC70EFDD-2741-495C-9A93-42408F6878D9}\un键值(母体创建),以及是否存在{FC70EFDD-2741-495C-9A93-42408F6878D9}\ex键值(感染后会设置,防止重复感染)。
5) 满足以上条件后,访问以下URL,根据操作系统版本信息等下载数据,
http://bd.705151.com/clientapi/clientreport.ashx?u=%d&pc=%s&os=%d&sid=%d
其中u为注册表un键值,pc为mac、cpuid等硬件信息的hash值,sid写死为10,os为32或64。
6) 提交信息后,服务器根据上传的版本信息重定向到不同的URL返回下载结果。
32位:http://npic.shangfx.com/42c/43/6/a07/31a2d803.wav
64位:http://cache.yzrub.com/842/99/bb26/a2087bb.wav
文件下载回来后,解密并用zlib解压后在内存中加载执行,以下将其称作installdll.dll
2. installdll.dll行为
该文件pdb路径与VBR中的木马PDB路径一致,可以确定为同一伙人开发。
1) 判断指定进程下是否有甜椒刷机安装包程序,以确定自己是否为被指定的程序推广安装,若否,则退出,不会进行感染。此外,如果注册表存在\duowan\YYExplorer等路径,即便没有找到相关文件也会进行感染。
2) 检测进程列表中的进程名是否包含有smsniff、Wireshark、Dbgview、Procmon、procexp、OLLYDBG、regshot、ProcessHacker、idaq、devenv等字符,有则退出。
3) 检测进程中是否有SbieDll.dll、api_log.dll、dir_watch.dll、SXIn.dll模块,有则退出。
4) 通过进程名检测瑞星、360安全卫士、360杀毒、金山卫士、金山毒霸、腾讯电脑管家、百度杀毒、百度卫士、卡巴斯基、诺顿、MSE、火绒等安全软件,根据检测结果执行不同的感染逻辑,杀软进程名使用XOR 0x29加密。
5) 感染相关的代码在dll中,木马会在内存中展开感染模块并加载执行,以下将其称为infect.dll,该dll提供两个导出函数,一个为BkInstall、BkTryWriteDisk,分别对应直接应用层写磁盘和通过驱动写磁盘的功能。此外,该dll有两个版本,分别对应win10操作系统和其他windows操作系统。如果要调用BkTryWriteDisk,则会先释放驱动到driver目录下并加载。
3. infect.dll行为
1) BkInstall,该函数直接打开磁盘写入木马。
2) BkTryWriteDisk,与\\.\{28F28D04-F525-fd5d-87197-C7A95250BCE2}设备进行通信,将要写入的内容和地址传给该设备进行磁盘写操作。
4. WriteDiskBySys.sys行为
该驱动加了VMP,从其老版本以及pdb信息和应用层的调用方式分析,可知该驱动会创建名为{28F28D04-F525-fd5d-87197-C7A95250BCE2}的设备,供应用层调用,主要实现向指定磁盘位置写入数据的功能。
二、 从VBR进入内核
该恶意的VBR是基于著名的网银木马Carberp的泄漏源码修改而来的,从VBR起一路hook到进入windows内核。
1. VBR行为
由VBR到windows内核的启动过程见http://tav.qq.com/index/newsDetail/255.html,下图所示为被感染后的VBR数据。恶意VBR代码实现解密并加载磁盘尾部的palyload数据到windows内核中得到dump_diskfs.sys并执行。
2. dump_diskfs.sys行为
1) 加载的内核驱动不会落地,驱动名字为dump_diskfs.sys。与系统中的几个正常驱动名字非常相近,并且同样不会落地,因此具有很大的迷惑性。
2) 从playload数据中解压出一个应用层dll,将其保存到C:\\Windows\\system32\\usbsapi.dll
payload数据:
3) 将解压出来的dll注入usbapi.dll到应用层:注册LoadImageNotifyRoutine回调,将usbapi.dll注入到explorer.exe,services.exe,spoolsv.exe,注入的方式是在目标进程的导入表中添加usbapi.dll为新的导入项。
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)