传奇私服攻破https,劫持网页

2020.8.21 来源:安全豹作者:安全豹

一、概述

        近期收到用户反馈,电脑在访问一些论坛网页和游戏网页时,浏览器被劫持跳转至私服网站sfbao.XXXX.com(XXXX为变化的)。该现象涉及市场上几十种浏览器,被劫持网站列表更是高达1000+,包含论坛网站、游戏网站、视频网站等。且被劫持网站列表还会实时更新。

        毒霸工程师跟进后发现,该现象来源于一批私服登陆器,这类私服登录器会释放出恶意驱动文件tdtkcuaqc.sys(名称随机化),该恶意驱动会在C:\Windows\Temp目录下,释放winaudio.exe和winaudio.dll(winaudio64.dll)文件,最后利用winaudio.exe和winaudio.dll去操作浏览器劫持相关的网页访问。

        劫持的原理是针对浏览器进程进行winaudio.dll远程线程注入,winaudio.dll会对浏览器访问的网址进行过滤,若当前访问的网址存在于被劫持的网站列表中,就会把连接网页服务端的ip修改为127.0.0.1,去和winaudio.exe连接,winaudio.exe则作为一个中转服务器去访问网页sfbao.XXXX.com(XXXX为变化的),然后把通讯数据传输给浏览器,从而实现劫持。下图为大致执行流程。

rtjuh

样本执行流程图

二、样本分析
        以下暂且把winaudio.exe称作病毒控制模块,把winaudio.dll称作病毒注入模块。
(一)、病毒控制模块winaudio.exe分析

        研究发现winaudio.exe模块会通过三层云控,获得真正的文本网页证书server.crt,server.der,server.key和加密的劫持网页列表信息的5B7C84755D8041139A7AEBA6F4E5912F.dat文件。

775c0e84-ba90-4cab-937b-d3d1b788c51a        

        以上数据加密方式都采用DES加密,密钥为字符串”j_k*avb”。解密发现下载链接都采用http://i2.tiimg.com和http://imgsrc.baidu.com的公共图床存储。分析发现图片不定时更新,但信息大致一样。下面为解密后的数据。

66fbc7c7-9fe1-4951-8633-41b7f71eb381

        下面为其中的jpg图片。

8cd4b0bb-ad38-4566-905f-bb9f7e802349

        通过对图片进行二进制查看,可以看出图片数据分为两部分。上部分为图片信息,对应着上面的小狗图片。下部分为携带的文本信息,对应着server.crt,server.der,server.key和5B7C84755D8041139A7AEBA6F4E5912F.dat文件。

0ca1805e-9c37-42d1-b579-ecbfb1951db8

        病毒控制模块通过访问这些图片链接,去读取图片携带的文本。根据传入的字符串ja001、ja002、ja003、server.crt、server.der和server.key去下载对应的文本保存到程序目录下,下图为相应对应关系图。

9072b0ff-e1ea-415f-83a7-4dfc92e65ff9

        病毒控制模块通过上面的图片链接,下载网页证书server.crt,server.der,server.key和加密的劫持网页列表信息的5B7C84755D8041139A7AEBA6F4E5912F.dat文件,保存到该程序的目录下。

        通过分析发现5B7C84755D8041139A7AEBA6F4E5912F.dat文件分为两部分,前面12字节用于数据存储,后面的字节为需要解密数据。加密算法为DES,密钥为字符串“j_k*a-vb”。

12d04b56-c4b6-4e11-9cd9-d8c685aae862

        5B7C84755D8041139A7AEBA6F4E5912F.dat经过解密,转换被劫持的网站列表保存到同目录下的vmware24A.dat文件中。下图为转换流程。

4700d764-0d90-4c71-baff-feed207e2001

        下面为从网页获取信息的主要函数,通过传入参数2字符串的不同返回证书相关文件和被劫持的网站列表文件信息。由于从网络获取,故被劫持网站列表会实时变化。传入的字符串server.crt,server.der,server.key对应各自文件,ja001,ja002,ja003对应着5B7C84755D8041139A7AEBA6F4E5912F.dat文件。

66244d62-70bc-49e9-9b9a-edc0df5b335c

        病毒控制模块在获取文本信息后,会为注入浏览器做相应的准备工作,解密浏览器名和需要规避的进程名字符串。会遍历当前电脑进程,检查是否存在ZhuDongFangYu、360Safe、360Tray进程,如果这些进程正在运行就不会进行DLL注入,不进行网页劫持。

ff7c7f7f-046e-4e5e-a249-bc952937d574

        解密字符串发现该劫持危害性较大,涉及了市场上大多数浏览器,下图为会被注入的浏览器列表:

5b3b9b7f-d8e3-4d36-9c29-a3de60fe061c

        病毒控制模块获得需要注入的浏览器列表后,会通过遍历进程获取进程信息,当找到需要注入的目标浏览器进程后,就会进行dll注入,注入模块路径为C:\Windows\Temp\winaudio.dll,代码如下图所示

9a476fba-10b5-4bf9-b8b4-598ae8c45c5b

        最后病毒控制模块会创建两个线程去监听和与被劫持浏览器通讯。一个线程用于接收注入dll发送过来的信息,分析发现注入dll那边会进行URL判断,当访问网页在被劫持网站列表中时,会与winaudio.exe构建本地TCP通讯,将访问的网址URL发送给winaudio.exe。该线程会把数据传输到下面线程,做好劫持连接准备。

        当第一个线程接收到劫持浏览器进程发送的URL后,第二个线程会把winaudio.exe作为一个中转器,连接浏览器和网站服务端,中转传递浏览器和网站服务端的通讯。病毒利用注入dll去hook函数GetAddrInfoW相关函数,对访问的URL进行筛查,当访问网页的URL在被劫持列表中时,会把访问网页服务端ip获取保存,然后通过hook的函数connect与前面获得的ip进行筛查。当为需要劫持的ip时,被劫持网页访问连接会被偷换为与winaudio.exe的本地TCP通讯,此处采用了MITM(中间人攻击),winaudio.exe(作为中间人)一方面利用伪造的server.crt,server.der,server.key证书信息与浏览器客户端进行通讯数据传输,另一方面与劫持到的目标网站sfbao.XXXX.com进行通讯数据传输,winaudio.exe作为中间人将通讯进行了劫持重定向。下面为访问同一网站的对比图。

        正常访问网页及证书信息

5e45b8b7-33e2-49d0-b61a-17c213edfa2f

        劫持后的网页和证书信息,该证书来源于前面下载的server.crt等文件

3235f27b-f8e0-408a-b576-a3108f2f0a20

96597714-42d8-4623-845e-1b0e5c0be8cf

https劫持原理

        此外该模块还会收集一些电脑信息,如用户名、网卡、电脑配置等用户基础数据,发送到sfbao.XXXX.com(XXXX为变化的)网页。

(二)、病毒注入模块分析

        病毒控制模块(winaudio.exe)通过遍历进程将病毒注入模块(winaudio.dll)注入到指定浏览器进程中,病毒注入模块会在浏览器进程中创建线程去执行恶意行为。

        病毒注入模块按照行为划分可以分为两大部分。第一部分清理浏览器Internet URL缓存,解密获得被劫持网页列表,和winaudio.exe构建本地TCP通讯,发送被劫持网页的URL地址到winaudio.exe。代码如下图所示。

eb0aaecd-d1b7-4d02-befd-8ec15a2017a3

        第二部分为hook函数GetAddrInfoW、getaddrinfo、GetAddrInfoExW、GetAddrInfoExA、gethostbyname和connect。hook函数采用inline hook方式,前面几个函数主要会针对访问的URL网址进行筛选判别,当在被劫持列表中时,会把该网址的服务端所有ip进行记录保存,作为后面connect连接时劫持判断的依据,前面几个hook函数的功能相似,代码如下所示。

291ff1c7-0900-48d5-ba31-b3f1b9f7e2c2

        最后的connect函数主要进行网页劫持ip替换,会进行判断是否为127.0.0.1本地连接或ip在前面hook函数中是否被记录。为127.0.0.1本地连接时正常连接。当ip在前面被记录时,就会进行ip替换为127.0.0.1本地连接到winaudio.exe,通过winaudio.exe去连接sfbao.XXXX.com(XXXX为变化的)网站服务端。当ip在前面没有被记录时,正常连接访问网站服务端,代码如下所示。

41e152e4-4bf9-450a-8999-ed0f83519be5

        通过分析hook函数的功能发现,当浏览器访问的网页网址在被劫持网页列表中时,浏览器并不会真正连接访问的网页网址,而是被劫持为与winaudio.exe构建的本地TCP通讯连接,winaudio.exe作为一个中转服务器,去访问sfbao.XXXX.com(XXXX为变化的)网页,把访问接收的数据再通过本地TCP通讯,加工传输给浏览器,从而实现浏览器劫持。

        分析发现被劫持网站网页,涉及面广,包括论坛网站、视频网站、游戏网站、色情网站等,且被劫持网页数量较大,目前截获涉及的网站数量已达1000+,被劫持网页列表还是实时更新的,危害性较大,严重损坏用户利益,下面为部分被劫持网页。

330e1687-c7e4-4918-9814-c2d1b8bdc8ed


三、总结

        病毒文件来源于私服登陆器,用于劫持网页到特定网站。被劫持网站列表实时更新,劫持比较隐蔽,持续性强,涉及了市面几十种浏览器,涉及的被劫持网页列表更是高达1000+,危害性较大,故我们需要谨慎使用非正版软件,建议使用安全软件实时监控。针对该病毒的解决方案:

        使用金山毒霸查杀:

4cda4528-3834-4173-9337-2d4c3a0815b2

手动查杀:

        步骤一:删除该驱动文件(驱动名称随机化的,驱动签名为Xinyi Electronic Technology (Shanghai) Co., Ltd)

        步骤二:删除C:\Windows\Temp\winaudio.exe和winaudio.dll程序,并关闭重启浏览器。


ioc:

劫持到的目标网页URL: 
http://sfbao.r4t3.com/
http://sfbao.r4t3.com/
http://sfbao.zh6x.com/
http://sfbao.p7zc.com/

文中访问的URL:
http://41ku.cn:10100/xccddhttps
http://i2.tiimg.com/710255/36a95bfb97802133.jpg
http://i2.tiimg.com/710255/0b69e38e4df6bc05.jpg
http://i2.tiimg.com/710255/d52d401803c42d11.jpg
http://i1.fuimg.com/710255/7acc45163f44abb8.jpg
http://imgsrc.baidu.com/tieba/pic/item/8435e5dde71190ef447aee8bc11b9d16fcfa60e4.jpg
http://imgsrc.baidu.com/tieba/pic/item/314e251f95cad1c8c61b8073703e6709c83d51c5.jpg
http://imgsrc.baidu.com/tieba/pic/item/0e2442a7d933c89543ffe42fde1373f0830200e4.jpg

MD5:
A2F535D8A801F7CDF94B66791B71EDB2
86B72209C4B71047E3690A0F64453675
A9AF04C2D0656927440DAB1F9776C747
C5E63654BE025ADC89C45DA57FACEC93
53DD62C31A298E69EDDC6341CE7AD782
021C1A04D47E8C3E353E1063A4F31E86
DE33919958225EAF185AE0F74FB70B7A
4D9A3023956409036C53843198B77D05

17069D878C3D6DCAB4F9FB1526E73279


上一篇: