一、 综述
近期,火绒安全团队截获一批捆绑在《地下城与勇士》游戏外挂上的首页劫持病毒。根据技术分析追溯,我们确定这些病毒的主要传播源是一个游戏外挂网站站,进而发现,这个外挂站是一个巨大的“病毒窝点”,传播的电脑病毒种类之多、数量之大,令人惊讶。
总体说来,该网站暗藏三类病毒,一类是游戏用户深恶痛绝的括盗号木马,二类是控制用户电脑,劫持首页的后门病毒,三类是强制捆绑安装软件的下载器病毒。该网站的用户会被随机感染数种病毒,电脑受到持久的多重侵害和骚扰。
这个游戏外挂网站是hxxp://www.dnf3996.com、hxxp://www.dnf9669.com、hxxp:// www.wg9669.com。
该站的运作流程如下:1、游戏外挂作者将自己开发的外挂程序放到该网站进行推广,并设定每个外挂的金额;2、代理商先付费获得代理资格,然后用各种方式(如QQ群等)推广、销售这些外挂程序,赚取代理费。
《地下城与勇士》是一款用户众多的经典网游,针对这款游戏的外挂数量巨大。电脑病毒制作者瞄准该游戏的海量外挂用户们,将各种电脑病毒和外挂程序捆绑在一起,进行再打包,然后通过这个外挂平台往外传播。根据“火绒威胁情报系统”统计,被这些病毒感染的用户,已经覆盖了全国大部分地区。
更为奇葩的是,除了盗取游戏账号、控制用户电脑锁首(将首页强行修改为“2345”导航站)之外,第三类下载器病毒捆绑安装的,竟然是老牌杀毒软件“瑞星”。根据测试,这款“瑞星”装入用户电脑之后,各种正常的安全模块都不开启,唯独开启自我保护和弹窗广告模块——也就是说,除了长期驻留电脑骚扰用户之外,没有任何功能。根据软件签名和下载地址可以确认,这款“专门弹窗版”瑞星杀毒软件,并非外部团伙的篡改和构陷,而是来自于瑞星官方。
二、 病毒行为简述
病毒推广站页面如下图所示:
图 1、外挂推广网站
图中所示,如“DNF XX辅助”就是属于不同的外挂作者的推广渠道,该网站中称之为端口。不同的推广端口对应的价格不同,经过一段时间的验证我们发现,外挂带毒主要集中在低价外挂区域,其外挂中不定期会捆绑病毒程序。该推广站所涉及的病毒共有三类,一类是下载器病毒,一类是通过漏洞传播的盗号木马,另一类是具有首页劫持功能的后门病毒。
2.1 下载器病毒
我们在该站“DNF封神辅助”推广端口下载到了捆绑此类病毒的外挂。文件属性如下图所示:
图 2、文件属性
外挂运行后,界面如下图所示:
图 3、外挂界面
其首先会释放带有数字签名且文件名随机的ThunderShell程序。如下图所示:
图 4、文件属性
ThunderShell程序启动时,会加载名为LiveUDHelper.dll的病毒动态库,该动态库中包含恶意代码。其加载后会启动系统svchost进程对其进程注入,注入内容为LiveUDHelper.dll中的一个子PE文件。该PE文件中包含真正的下载器病毒代码,执行后会下载hxxp://dl.i1236.com/dl/wrqdown2/ravv16stdf10O4120001.exe。如下图所示:
图 5、恶意推广行为日志
图 6、进程树
通过文件属性我们可以看出其所下载的文件是一个7Z自解压包,并且包含瑞星数字签名,如下图所示:
图 7、软件安装包
图 8、数字签名详细信息
更值得一提的是,该病毒与以往我们见到的恶意推广病毒不同,其只推广瑞星杀毒软件,且其推广的该版本瑞星杀毒软件不具有任何杀毒功能,除了自保功能外,只会不定期弹出广告,甚至连软件主界面都无法正常启动。
软件广告弹窗,如下图所示:
图 9、广告弹窗
根据域名查询结果,下载该版本瑞星杀毒软件的域名(hxxp://dl. i1236.com)与瑞星官方论坛域名(hxxp://www.ikaka.com)的注册人信息一致。如下图所示:
图 10、域名信息对比
2.2 盗号木马
在个别低价外挂下载过程中会跳转到一个漏洞页面,如下图所示:
图 11、漏洞页面
上述页面中利用MS14-064漏洞下载盗号木马,漏洞触发后,IE进程树如下图所示:
图 12、进程树
木马文件运行后会先在系统环境中搜索腾讯游戏登录相关的进程,伪装成腾讯游戏平台的登录界面,诱骗玩家输入账号密码。如下图所示:
图 13、盗号木马运行界面
2.3 后门病毒
我们在该站“DNF宝马辅助”推广端口下载到了捆绑此类病毒的外挂。该病毒功能分为两个部分:
1) Intel.exe与Intel.sys相互配合劫持浏览器首页。
2) Intel.exe下载后门病毒Pack.exe,通过与C&C服务器通讯Pack.exe可以随时执行多种DDOS攻击。
因为后门病毒的威胁级别更高,所以后文中统称其为后门病毒。捆绑后门病毒的外挂文件属性,如下图所示:
图 14、文件属性
外挂运行界面如下图所示:
图 15、外挂运行界面
外挂文件运行后,表面与一般外挂程序并没有什么不同,但是火绒剑进程树中我们可以看到,其后台执行的行为非常之多。如下图所示:
图 16、外挂进程树
外挂进程在释放带有数字签名360Tray.exe之后,会将其启动并对其进行注入。注入后,360Tray.exe会加载nike.dll动态库释放其主要病毒文件。如下图所示:
图 17、文件属性
图 18、病毒行为展示
Intel.exe和Intel.sys相互配合会劫持浏览器首页,在用户启动浏览器的时候Intel.sys会结束原有进程,之后由Intel.exe再次启动浏览器进程,并在参数中加入劫持网址。劫持效果如下图所示:
图 19、首页劫持
劫持网址为:hxxp://www.dresou.com/219671.htm,访问该网址后会直接跳转到hxxp://www.2345.com/?33483进行流量套现。劫持效果如下图所示:
图 20、劫持IE首页
图 21、劫持参数
病毒劫持的浏览器如下图所示:
被劫持浏览器
Intel.exe除首页劫持功能外,还会联网在C&C服务器(hxxp://main.dresou.net)下载后门病毒pack.exe。pack.exe会先将自身文件以svchost的文件名复制到Temp目录中,再由其释放的假spoolsv启动假svchost执行后门逻辑。如下图所示:
图 22、进程树
图 23、假svchost网络连接状态
假svchost是个后门病毒,连接C&C服务器的45678端口获取控制命令。根据从C&C服务器所传回的控制信息,该后门病毒可以清空IE浏览器缓存、发起洪水攻击或者从C&C下载执行其他恶意程序。其用来清除浏览器缓存的程序基本属性如下图所示:
图 24、文件属性
该后门病毒可以执行的洪水攻击类型如下图所示:
Intel.sys会在系统内核级保护Intel.exe、Intel.sys及其自身相关的注册表键值。因为Intel.exe是后门病毒的释放者,所以不通过内核级工具是无法彻底清除后门病毒。在启动外挂后,用户就会完全变成病毒作者的“傀儡”。
依托于该外挂推广站的“黑产”套现渠道众多,其中包含外挂推广、恶意软件推广、流量劫持推广、盗号获利、利用后门病毒组织DDOS攻击敲诈获利。一旦走进其套现链条,用户就会完全变成病毒作者的获利工具,造成持久性安全威胁。
根据“火绒威胁情报分析系统”提供的统计数据,该病毒已经在全国范围内进行传播。受该病毒影响的省市地区如下图所示:
图 25、病毒流行区域
三、 详细分析
如前文所述,该网站涉及传播共三组不同的病毒,下载器病毒、通过漏洞传播的盗号木马和后门病毒,下面我们将其按照分组进行详细分析。
3.1 下载器病毒
该组恶意程序是一组“白加黑”病毒,白文件ThunderShell程序启动时会加载名为LiveUDHelper.dll的动态库。病毒作者通过劫持动态库的方式使ThunderShell加载病毒动态库,其逻辑为启动系统svchost进程并对其进行注入,注入内容是该动态库中的一个子PE文件。动态库与其子PE文件均为易语言编写,LiveUDHelper.dll加载到内存中后,我们可以看到与其逻辑相关的信息。如下图所示:
图 26、病毒相关信息
最终,被注入的svchost进程会在安装包地址(hxxp://dl.i1236.com/dl/wrqdown2/ravv16stdf10O4120001.exe)下载捆绑软件安装包进行安装。安装包运行行为如下图所示:
图 27、安装包行为
3.2 盗号木马
病毒利用MS14-064漏洞进行传播,漏洞相关代码如下图所示:
图 28、漏洞代码
该漏洞触发成功后会在C:WindowsTemp目录释放text.vbs并执行。脚本内容如下图所示:
图 29、脚本内容
执行该脚本会从C&C服务器(hxxp://www.baidu2233.com)下载病毒文件,释放到C:WindowsTemp目录中名为svchot.exe。svchot.exe是Downloader病毒会联网(hxxp:// 115.231.8.27)下载病毒注入器svch.exe。svch.exe运行后,先会联网(hxxp:// 121.12.125.238)下载盗号木马,之后会启动系统svchost,用盗号木马的映像数据对svchost进程进行映像覆盖。当盗号木马检测到游戏进程时,盗号木马首先会结束检测到的游戏进程,之后启动其伪造游戏登录界面,诱骗用户输入账号密码。
盗号木马所检测的进程名如下:
3.3 后门病毒
通过该网站进行传播的后门病毒涉及文件较多,文件相关性如下图所示:
图 30、文件关系图
1. IS.exe
该组病毒的直接释放源为IS.exe,该程序由VMProtect加壳。通过火绒行为沙盒,我们可以看到病毒的释放逻辑。如下图所示:
图 31、IS.exe执行的病毒行为
2. Intel.exe
Intel.exe是与Intel.sys相互配合进行劫持首页的程序,Intel.sys所用到的关键数据都是由Intel.exe解密后通过调用FilterSendMessage函数进行发送的,如果没有Intel.exe发送数据,则Intel.sys驱动不会起到任何功能。Intel.sys与Intel.exe通过Intel.txt进行通讯,Intel.exe会根据Intel.txt中的浏览器路径启动新的浏览器进程,并在启动参数中加入劫持网址。Intel.exe主要功能代码如下图所示:
图 32、Intel.exe主要逻辑
关键数据全都是经过算法加密的,解密逻辑我们选取了部分代码进行举例说明。大致逻辑为,先按照加密数据粒度调用decode函数进行解密,解密后再将需要转为宽字符的字符串进行处理。如下图所示:
图 33、部分解密逻辑
解密流程是利用生成的数据字典,按照数据块粒度进行逐数据块的解密。如下图所示:
图 34、数据解密
Intel.exe除首页劫持功能外还会下载packxx.exe在本地进行执行,下载地址为hxxp://www.dresou.net/packxx.exe(xx代表数字1~3)。
3. Intel.sys
Intel.sys驱动中通过注册mini文件过滤的方式对一些文件的操作进行了干扰,不但该驱动对与自己相关的病毒文件进行了保护,还对一些安全软件的可执行文件(QQPCTray.exe和SuperKiller.exe)进行限制。代码如下图所示:
图 35、文件过滤代码
调用CmRegisterCallback函数添加注册表回调保护Intel.exe和Intel.sys的相关注册表键值。如下图所示:
图 36、注册表过滤
Intel.sys会检测不同的Windows版本来调用PsSetCreateProcessNotifyRoutineEx或者PsSetCreateProcessNotifyRoutine注册进程回调,禁止启动一些浏览器进程,再通过通讯方式转由Intel.exe加入劫持网址之后进行启动。大部分浏览器都是在参数中直接加入劫持网址,对不能接受网址参数浏览器则直接启动IE。如果是Intel.exe启动的浏览器进程,在启动进程不为pack.exe且进程启动参数与自己劫持的网址不一样时也会禁止进程启动,设置全局事件对象后,由Intel.exe再次尝试劫持。如下图所示:
图 37、进程回调代码
图 38、浏览器劫持相关代码
调用PsSetLoadImageNotifyRoutine函数注册映像加载回调,在回调函数中创建线程在映像加载过程中结束浏览器进程。如下图所示:
图 39、结束进程相关代码
4. Pack.exe
Pack.exe是一个后门病毒,可以用于进行多种DDOS攻击。其首先会在Temp目录中释放两个PE文件(spoolsv.exe和iexplore.exe),并将自身复制为Temp目录中的svchost.exe。之后启动spoolsv.exe,再由该进程启动其自身的复制体Temp目录下的svchost.exe执行后门逻辑。如下图所示:
图 40、释放PE文件
释放文件结束后便会开始执行其后门功能,该病毒与C&C服务器的通讯数据是以“|”进行分割,以“end”结尾的字符串。第一次通讯根据传来字符串数据的长度分别执行五种不同的操作:
1) 获取主机信息,信息包括语言、系统版本、CPU主频、物理内存大小和网络传输速度。
2) 接受服务器发来的攻击数据,包含攻击地址、攻击类型、攻击次数及组成DDOS攻击网络数据包的相关数据。
3) 返回主机状态,如占用或闲置。
4) 重置主机攻击状态,主要用于停止攻击。
5) 开始发起攻击。
如下图所示:
图 41、控制代码
该后门病毒可以实现的DDOS攻击类型共有七种,包括SYN Flood、Connect Flood、UDP Flood 、ICMP Flood、TCP Flood、DNS Flood及HTTP Flood。如下图所示:
图 42、攻击代码
除了DDOS攻击外,该后门病毒还可以运行主机的本地文件或者从远程服务器中下载并执行可执行文件。如下图所示:
图 43、后门病毒代码
在后门病毒需要更新时,可以通过运行其释放在Temp目录中的iexplore.exe清理Temp目录并清除网络缓存。
5. 病毒释放的iexplore.exe
该程序主要用于清理Temp目录和清除网络缓存。其主要会运行两条cmd命令:
rmdir /s/q "C:UserstestAppDataLocalTemp"
rmdir /s/q "C:UserstestAppDataLocalMicrosoftWindowsINetCookies"
6. 病毒释放的spoolsv.exe
该程序只负责启动Temp目录中的svchost.exe。如下图所示:
图 44、spoolsv.exe主要功能
四、 附录