首页
社区
课程
招聘
[原创]知名软件ADSafe暗藏恶意代码 从众多网站劫持流量
发表于: 2018-3-11 22:08 8058

[原创]知名软件ADSafe暗藏恶意代码 从众多网站劫持流量

2018-3-11 22:08
8058
一、 概述
日前,火绒安全团队发现“ADSafe净网大师”、“清网卫士”、 “广告过滤大师”等多款知名软件暗藏恶意代码,偷偷劫持用户流量。这些软件出自同一公司,功能类似,主要是屏蔽网页广告。根据技术分析,三款软件都会通过替换计费名(不同网站和上游分成的标识)的方式来劫持流量,牟取暴利。其劫持网站数量为近年最多,已达50余家,包括国内多家知名导航站、电商以及在线消费交易平台等。更可怕的是,“ADSafe”劫持规则可随时通过远程操作被修改,不排除其将来用来执行其他恶意行为的可能性,存在极大安全隐患。
 

图1

火绒安全团队发现,“ADSafe”官网的软件版本虽然停留在v4.0.610,但其论坛、下载站中却发布了v5.3版。根据技术分析,“清网卫士”、“广告过滤大师”和v5.3版“ADSafe”的功能、广告过滤规则,以及恶意代码都完全一样,可以认定,“清网卫士”和“广告过滤大师”软件其实就是"ADSafe"的最新版本,都会通过替换计费名(不同网站和上游分成的标识)的方式来劫持流量,牟取暴利。

目前,"ADSafe"(v5.3及以上版本)和“清网卫士”等软件正在通过国内各大下载站、官网以及官方论坛大肆传播。用户电脑中只要装了上述软件,网站中(如 图2)产生的流量都会被劫持。 
 

图2

如上图所示,此次涉及到的受劫持网站数量是我们近年来发现最多的一次,共有50余家。不仅包括国内的导航站、电商(淘宝、京东、华为商城、小米商城、1药网等);还包括国内一些在线消费交易平台(新东方、悟空租车);国外的品牌购物站(Coach、Hanes、Clarins等)。

另外,现在劫持规则还在持续更新,不排除将来可能用于其他攻击。例如火绒之前报道过的病毒利用JavaScript进行挖矿(www.huorong.cn/info/151443978790.html)和窃取个人信息(www.huorong.cn/info/1518338707106.html)的案例,建议广大用户注意防范。“火绒安全软件”最新版可以拦截“ADSafe”和“清网卫士”。 

近几年,互联网公司间的流量争夺赛愈演愈烈,并成为其主要收入来源。然而“流量”和“侵害用户”往往是相伴而生,这也是“火绒关停流量业务”的初衷。软件提供服务,用户购买服务/产品,才是健康的商业模式,而不是打着“免费”的旗子,背地里却把用户电脑当作“战场”,当成软件厂商的赚钱工具。归根结底,只有规范的服务、优质的产品,才是企业的制胜法宝,是企业长久发展的经营之道。 

二、 病毒来源
火绒近期在多个用户现场发现,名为清网卫士的广告过滤软件会恶意劫持流量。当用户访问搜索引擎、网址导航站、电商网站时,该软件会通过HTTP代理的方式将访问网址劫持为带有推广号的目标网址链接,恶意流量劫持涉及国内外众多线上消费平台及导航搜索站点,国内电商平台包括:淘宝、京东、苏宁等,国外线上消费平台则包括:Coach、Hanes、Nike等多个知名品牌。被劫持的网址列表,如下图所示:
 

被劫持网址

随后,我们找到了清网卫士官网(hxxp://www.ad-off.com/),如下图所示:
 

清网卫士官网

值得一提的是,在我们查看清网卫士页面源码的时候,发现在被注释的网页代码中竟然出现了ADSafe(ADSafe)的官网微博地址和用户QQ群。如下图所示:
 

清网卫士网页源码

被注释的清网卫士官方微博地址(http://e.weibo.com/3066343347),实际最终会跳转到ADSafe的官方微博,如下图所示:
 

清网卫士微博地址

被注释的QQ群号实际为ADSafe用户群,如下图所示:

 
清网卫士QQ群

除此之外,被注释的清网卫士微信公众号 “adoffjwds“,公众号名称后半部分”jwds“为净网大师首字母。根据上述几点,我们可以初步推断,清网卫士可能和ADSafe存在着某种联系。

在我们对ADSafe 5.3.117.9800版本(安装包来源为某下载站)进行分析后发现,该版本的ADSafe也具有相同的劫持行为。除此之外,该版本ADSafe和清网卫士的功能组件中大部分功能代码基本相同,甚至有部分用于流量劫持的数据文件SHA1也完全相同。以HTTP代理主模块为例进行代码比对,ADSafe.exe(ADSafe)和Adoff.exe(清网卫士)代码对比,如下图所示:
 

代码对比

用于流量劫持的数据文件SHA1对比,如下图所示:
 

数据文件SHA1对比

该版本ADSafe安装包数字签名有效,名称为“Shanghai Damo Network Technology Co. Ltd.“,即上海大摩网络科技有限公司。如下图所示:
 

ADSafe 5.3.117.9800版本安装包文件属性
 

ADSafe签名信息

综上,我们可以完全断定,清网卫士和ADSafe5.3.117.9800版本都属于同一个软件制作商,且带有相同的流量劫持逻辑。

随后,我们也对ADSafe官网(hxxp://www.ad-safe.com/)版本进行了分析。 我们发现,官网下载的ADSafe安装包不会释放网络过滤驱动和劫持策略,由于官网版本安装后网络过滤框架不完整,所以不会进行恶意流量劫持。
三、 详细分析
如上文所述,清网卫士与ADSafe5.3.117.9800版本劫持逻辑基本相同,所以我们下文中针对该版本ADSafe进行详细分析。病毒运行流程,如下图所示:
 

病毒运行流程

如上图所示,由于ADSafe使用HTTP代理的方式进行劫持,所以一旦劫持规则生效,用户电脑中所产生的所有HTTP请求都会被ADSafe进行劫持,截至到我们发布报告之前,ADSafe劫持的网址多达54家,且受影响网址还在不断进行更新。

网络过滤驱动
当本地产生HTTP请求时,网络过滤驱动会将过滤到的HTTP请求转发给本地的HTTP代理(ADSafe.exe)。网络过滤驱动中的转发逻辑,如下图所示:
 

转发逻辑代码

HTTP代理
HTTP代理进程(ADSafe.exe)主要负责处理网络过滤驱动转发来的HTTP请求,根据不同的规则可以用于做广告过滤和流量劫持。ADSafe规则分为两个部分,分别在两个不同的目录下。规则目录位置及用途,如下图所示:
 

规则目录位置及用途

如上图所示,用户订阅规则主要对应ADSafe中的自定义广告过滤规则,主要用于广告过滤、间谍软件过滤等;流量劫持规则中主要包括劫持策略和劫持内容,劫持生效后,可以将原有的HTTP请求替换为预先准备好的劫持内容,达到劫持目的。以访问http://www.jd.com为例,由于跳转过程较快,我们断网截取到了劫持链接(hxxps://p.yiqifa.com/c?w=***&t=https://www.jd.com/)。劫持效果,如下图所示:
 

流量劫持

最终跳转页面,如下图所示:
 

最终劫持地址

流量劫持策略不但会被5.3版本的ADSafe直接释放,还可以进行云控更新,就在我们分析的同时,劫持策略还在不断更新,所以下文所提到的劫持策略均以我们获取到的最后一个版本为准。

ADSafe策略文件中数据均使用AES算法进行加密,加密后数据使用BASE64进行编码。由于所有策略文件解密流程完全相同,下文中不再进行赘述。相关解密逻辑,如下图所示:
 

解密逻辑相关代码

策略更新功能主要对应ADSafe中的AdsCdn.dll模块,该模块主要负责策略的请求、下载和解密流程。劫持策略更新流程首先会访问C&C服务器地址请求策略配置数据CdnJsonconfig.dat。C&C服务器地址,如下图所示:
 

C&C服务器地址

请求CdnJsonconfig.dat数据相关代码,如下图所示:
 

请求CdnJsonconfig.dat数据代码

该文件完成解密后,我们可以得到如下配置:
 

CdnJsonconfig.dat解密后数据

如上图所示,其中“0002020A”属性中存放的是策略更新配置文件下载地址(hxxp:// filesupload.b0.upaiyun.com/pc_v4/rulefile/source_9800.xml?-70969872),通过HTTP请求我们可以得到如下配置:
 

策略更新配置

如上图所示,每一组”<RuleFile>”标签对应一个策略或数据文件,其下一级的“<sUrl>”标签中存放的是文件下载地址,下载每个文件至本地后都会对文件的MD5值进行比对,确保文件的完整性。在验证MD5之后,会将规则文件解压至ADSafe安装目录下的res目录中。策略更新相关代码,如下图所示:
 

策略更新代码

我们前文说到,在ADSafe官网版本(4.0版本)中未包含流量劫持策略,其实是因为低版本AdsCdn.dll动态库中用于请求CdnJsonconfig.dat数据的网址指向的是一个局域网地址(hxxp://192.168.1.77:823/i.ashx),所以不能进行劫持策略的更新。不但如此,官网版本安装包安装后,不会释放网络过滤驱动,这就直接导致官网版本的ADSafe安装后根本不具有任何广告过滤功能。

代理服务进程除了上述操作外,还会通过检测窗口名(OllyDbg等)、修改线程调试属性等方式进行反调试,相关代码如下图所示:
 

检测调试器

流量劫持策略
在流量劫持策略下发到本地之后,首先会进行解密,之后加载到HTTP代理服务中。为了方便我们下文中对劫持规则的说明,我们首先引用ADSafe过滤语法简表对过滤规则的关键字进行说明。关键字及相关用途如下图所示:
 

过滤语法简表

流量劫持策略被存放在ADSafe安装目录下的”res\tc.dat”文件中,经过解密我们可以得到劫持策略。部分劫持策略,如下图所示:
 

劫持策略

如上图所示,劫持规则每条含义大致相同。首先通过正则匹配网址,在网址匹配成功之后,会将“$$”后的HTTP数据包内容进行返回,在返回的数据包中包含带有流量劫持功能的JavaScript脚本。以0025.dat解密后数据包内容为例,如下图所示:
 

数据包内容

以前文劫持规则为例,劫持生效后当用户访问“dangdang.com”和“suning.com”等网址时,返回数据都会被替换为HTTP数据包0025.dat。数据包文件内容也需要进行解密,解密后我们可以看到JavaScript脚本控制的相关劫持逻辑。

劫持京东等电商网站
首先脚本会根据不同的网址执行不同的劫持逻辑,网址列表如下图所示:
 

网址劫持规则列表

如上图,url属性中存放的是欲劫持网址,name存放的是劫持调用函数,在该劫持脚本中,每个网址都对应不同的劫持函数。劫持函数调用逻辑,如下图所示:
 

劫持函数调用

由于劫持网址众多,我们只以较为典型的几种劫持情况进行说明。我们先以劫持京东商城为例,劫持使用的函数为_fun_17。函数逻辑,如下图所示:
 

用来劫持京东的_fun_17函数

_fun_17函数会从预先准备的劫持数据中解密出一组劫持链接,且每个链接都对应一个劫持概率,劫持概率以比例的形式被依次存放在劫持链接数组后面。解密出的劫持数据,如下图所示:
 

劫持数据

在获取到上述劫持链接后,会调用ft_r函数在当前页面中插入刷新标签进行跳转。如下图所示:
 

ft_r函数内容

如上图,每个劫持链接都是通过广告推广平台(如亿起发、星罗、多麦等)链接跳转至最终的京东主页,ADSafe会通过这些广告推广平台进行流量套现。其他网址的劫持也大致相同,下面对其他劫持逻辑进行简单说明。

劫持Hao123导航
针对Hao123的劫持逻辑,如下图所示:
 


如上图,劫持Hao123所示用的HTTP数据在0021.dat中存放,解密后与0025.dat大致相同,但该文件中只存放又针对Hao123的相关劫持代码。劫持函数,如下图所示:
 

Hao123劫持函数

上图脚本会从推广号列表中随机选取一个推广号拼接在“https://www.hao123.com/?tn=”链接后面,之后也是通过插入刷新标签的方式进行跳转。用来劫持的推广号共8个,如下图所示:

 
用来劫持Hao123的推广号数据

劫持百度搜索
劫持百度搜索的劫持策略,如下图所示:

 
劫持策略

劫持百度搜索的数据在0023.dat中,劫持函数如下图所示:
 

百度搜索劫持函数

与 Hao123劫持情况相似,推广号也在一个列表中共36个,如下图所示:
 

推广号列表
四、 同源性分析
除了前文中所说的清网卫士外,我们还发现一个与ADSafe具有相同劫持策略及功能模块的广告过滤软件“广告过滤大师”。该软件有两个页面完全相同的官网,分别为hxxp://www.admon.cn/和hxxp://www.newadblock.com/,且“admon.cn”域名是由“上海大摩网络科技有限公司”注册的。如下图所示:


 admon.cn注册信息

官网页面不但完全相同,且都带有多家安全软件的安全认证,如下图所示:
 

广告过滤大师官网页面

广告过滤大师劫持策略目录与ADSafe、清网卫士对比,如下图所示:
 

劫持策略目录对比

不但目录中文件名基本一致,而且用于流量劫持的数据SHA1也基本一致(只有0025.dat的SHA不同),三款软件也都同时包含有相同的功能模块。所以我们可以判断,三款软件同属于一家软件制作厂商。SHA1对比,如下图所示:
 

流量劫持数据文件SHA1对比 

五、 附录
文中涉及样本SHA256:

 


[课程]FART 脱壳王!加量不加价!FART作者讲授!

收藏
免费 0
支持
分享
最新回复 (16)
雪    币: 204
活跃值: (911)
能力值: (RANK:1324 )
在线值:
发帖
回帖
粉丝
2
好详细
2018-3-11 23:09
0
雪    币: 204
活跃值: (19)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
站着挣钱,站着挣大钱!
2018-3-12 08:27
0
雪    币: 2460
活跃值: (2954)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
4
你们啊,不要总想搞个大新闻,然后把别人批判一番!
2018-3-12 08:49
0
雪    币: 3848
活跃值: (642)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
5
艹,我一直用的ADSafe来过滤广告。。
2018-3-12 09:16
0
雪    币: 12848
活跃值: (9118)
能力值: ( LV9,RANK:280 )
在线值:
发帖
回帖
粉丝
6
bjtwokeight 你们啊,不要总想搞个大新闻,然后把别人批判一番!
火绒搞的这个分析啊,EXCITED!
2018-3-12 09:29
0
雪    币: 283
活跃值: (2498)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
真的恶心到我了。
2018-3-12 09:30
0
雪    币: 63
活跃值: (361)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
难怪先前发文说自己不做流量业务了,现在就捅人家。。早有预谋的。。。
2018-3-12 10:31
0
雪    币: 576
活跃值: (2035)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
大天朝这环境,劫持点流量怎么了,怎么了!
哪有免费午餐,做饭的也要吃饭.
2018-3-12 11:09
0
雪    币: 3121
活跃值: (1609)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
@火绒实验室
要不你再分析下阿呆喵?
2018-3-12 14:38
0
雪    币: 155
活跃值: (2201)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
可恶的流氓软件。
2018-3-12 18:38
0
雪    币: 1208
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
刚出来就用这个软件来着,发现老是上传数据,持续时间很长,我家网速很快,不懂这么多数据,但感觉有鬼,就没再用了。
2018-3-25 14:29
0
雪    币: 341
活跃值: (995)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
13
看不懂,赞
最后于 2018-4-6 16:01 被fatcateatrat编辑 ,原因:
2018-4-6 16:00
0
雪    币: 8770
活跃值: (5955)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
14
感觉火融有意攻击人家啊,过滤广告本身是会劫持网页内容的,
人家不过是劫持了浏览信息然后去掉广告,部分广告是改了自己的推广,并没展示出来。
再者就是你也没证据说人家有挖矿,还说人家有可能挖矿。
2018-5-5 07:11
0
雪    币: 9941
活跃值: (2143)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
15
看到yiqifa.com就觉得非常熟悉了,  我们这电信直接劫持JD.COM
2018-5-5 10:48
0
雪    币: 244
活跃值: (169)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
上这网站的人还有用这类软件 ,也是服了
2019-1-14 10:52
0
雪    币: 257
活跃值: (32)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
学习中,收藏啦!
2019-7-21 12:54
0
游客
登录 | 注册 方可回帖
返回
//