知名软件 净网大师(ADSafe)暗藏恶意代码,从众多网站劫持流量

一、概述

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

ADSafe

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

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

劫持

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

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

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

二、病毒来源

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

 3被劫持网址.jpg
被劫持网址
随后,我们找到了清网卫士官网(hxxp://www.ad-off.com/),如下图所示:
 4清网卫士官网.jpg
清网卫士官网
值得一提的是,在我们查看清网卫士页面源码的时候,发现在被注释的网页代码中竟然出现了ADSafe(ADSafe)的官网微博地址和用户QQ群。如下图所示:
 5清网卫士网页源码.jpg
清网卫士网页源码
被注释的清网卫士官方微博地址(https://e.weibo.com/3066343347),实际最终会跳转到ADSafe的官方微博,如下图所示:
 6清网卫士微博地址.jpg
清网卫士微博地址
被注释的QQ群号实际为ADSafe用户群,如下图所示:
 7清网卫士QQ群.jpg
清网卫士QQ群
除此之外,被注释的清网卫士微信公众号 “adoffjwds”,公众号名称后半部分”jwds”为净网大师首字母。根据上述几点,我们可以初步推断,清网卫士可能和ADSafe存在着某种联系。
在我们对ADSafe 5.3.117.9800版本(安装包来源为某下载站)进行分析后发现,该版本的ADSafe也具有相同的劫持行为。除此之外,该版本ADSafe和清网卫士的功能组件中大部分功能代码基本相同,甚至有部分用于流量劫持的数据文件SHA1也完全相同。以HTTP代理主模块为例进行代码比对,ADSafe.exe(ADSafe)和Adoff.exe(清网卫士)代码对比,如下图所示:
 8代码对比.jpg
代码对比
用于流量劫持的数据文件SHA1对比,如下图所示:
 9数据文件SHA1对比.jpg
数据文件SHA1对比
该版本ADSafe安装包数字签名有效,名称为”Shanghai Damo Network Technology Co. Ltd.”,即上海大摩网络科技有限公司。如下图所示:
 10ADSafe 5.3.117.9800版本安装包文件属性.jpg
ADSafe 5.3.117.9800版本安装包文件属性
 11ADSafe签名信息.jpg
ADSafe签名信息
综上,我们可以完全断定,清网卫士和ADSafe5.3.117.9800版本都属于同一个软件制作商,且带有相同的流量劫持逻辑。
随后,我们也对ADSafe官网(hxxp://www.ad-safe.com/)版本进行了分析。 我们发现,官网下载的ADSafe安装包不会释放网络过滤驱动和劫持策略,由于官网版本安装后网络过滤框架不完整,所以不会进行恶意流量劫持。

三、详细分析

如上文所述,清网卫士与ADSafe5.3.117.9800版本劫持逻辑基本相同,所以我们下文中针对该版本ADSafe进行详细分析。病毒运行流程,如下图所示:
12病毒运行流程.jpg
病毒运行流程
如上图所示,由于ADSafe使用HTTP代理的方式进行劫持,所以一旦劫持规则生效,用户电脑中所产生的所有HTTP请求都会被ADSafe进行劫持,截至到我们发布报告之前,ADSafe劫持的网址多达54家,且受影响网址还在不断进行更新。
网络过滤驱动
当本地产生HTTP请求时,网络过滤驱动会将过滤到的HTTP请求转发给本地的HTTP代理(ADSafe.exe)。网络过滤驱动中的转发逻辑,如下图所示:
 13转发逻辑代码.jpg
转发逻辑代码
HTTP代理
HTTP代理进程(ADSafe.exe)主要负责处理网络过滤驱动转发来的HTTP请求,根据不同的规则可以用于做广告过滤和流量劫持。ADSafe规则分为两个部分,分别在两个不同的目录下。规则目录位置及用途,如下图所示:
 14规则目录位置及用途.jpg
规则目录位置及用途
如上图所示,用户订阅规则主要对应ADSafe中的自定义广告过滤规则,主要用于广告过滤、间谍软件过滤等;流量劫持规则中主要包括劫持策略和劫持内容,劫持生效后,可以将原有的HTTP请求替换为预先准备好的劫持内容,达到劫持目的。以访问https://www.jd.com为例,由于跳转过程较快,我们断网截取到了劫持链接(hxxps://p.yiqifa.com/c?w=***&t=https://www.jd.com/)。劫持效果,如下图所示:
 15流量劫持.jpg
流量劫持
最终跳转页面,如下图所示:
16最终劫持地址.jpg
最终劫持地址
流量劫持策略不但会被5.3版本的ADSafe直接释放,还可以进行云控更新,就在我们分析的同时,劫持策略还在不断更新,所以下文所提到的劫持策略均以我们获取到的最后一个版本为准。
ADSafe策略文件中数据均使用AES算法进行加密,加密后数据使用BASE64进行编码。由于所有策略文件解密流程完全相同,下文中不再进行赘述。相关解密逻辑,如下图所示:
17解密逻辑相关代码.jpg
解密逻辑相关代码
策略更新功能主要对应ADSafe中的AdsCdn.dll模块,该模块主要负责策略的请求、下载和解密流程。劫持策略更新流程首先会访问C&C服务器地址请求策略配置数据CdnJsonconfig.dat。C&C服务器地址,如下图所示:
18C&C服务器地址.jpg
C&C服务器地址
请求CdnJsonconfig.dat数据相关代码,如下图所示:
19请求CdnJsonconfig.dat数据代码.jpg
请求CdnJsonconfig.dat数据代码
该文件完成解密后,我们可以得到如下配置:
20CdnJsonconfig.dat解密后数据.jpg
CdnJsonconfig.dat解密后数据
如上图所示,其中”0002020A”属性中存放的是策略更新配置文件下载地址(hxxp:// filesupload.b0.upaiyun.com/pc_v4/rulefile/source_9800.xml?-70969872),通过HTTP请求我们可以得到如下配置:
21策略更新配置.jpg
策略更新配置
如上图所示,每一组”<RuleFile>”标签对应一个策略或数据文件,其下一级的”<sUrl>”标签中存放的是文件下载地址,下载每个文件至本地后都会对文件的MD5值进行比对,确保文件的完整性。在验证MD5之后,会将规则文件解压至ADSafe安装目录下的res目录中。策略更新相关代码,如下图所示:
 22策略更新代码.jpg
策略更新代码
我们前文说到,在ADSafe官网版本(4.0版本)中未包含流量劫持策略,其实是因为低版本AdsCdn.dll动态库中用于请求CdnJsonconfig.dat数据的网址指向的是一个局域网地址(hxxp://192.168.1.77:823/i.ashx),所以不能进行劫持策略的更新。不但如此,官网版本安装包安装后,不会释放网络过滤驱动,这就直接导致官网版本的ADSafe安装后根本不具有任何广告过滤功能。
代理服务进程除了上述操作外,还会通过检测窗口名(OllyDbg等)、修改线程调试属性等方式进行反调试,相关代码如下图所示:
 23检测调试器.jpg
检测调试器
流量劫持策略
在流量劫持策略下发到本地之后,首先会进行解密,之后加载到HTTP代理服务中。为了方便我们下文中对劫持规则的说明,我们首先引用ADSafe过滤语法简表对过滤规则的关键字进行说明。关键字及相关用途如下图所示:
24过滤语法简表.jpg
过滤语法简表
流量劫持策略被存放在ADSafe安装目录下的”res\tc.dat”文件中,经过解密我们可以得到劫持策略。部分劫持策略,如下图所示:
 25劫持策略.jpg
劫持策略
如上图所示,劫持规则每条含义大致相同。首先通过正则匹配网址,在网址匹配成功之后,会将”$$”后的HTTP数据包内容进行返回,在返回的数据包中包含带有流量劫持功能的JavaScript脚本。以0025.dat解密后数据包内容为例,如下图所示:
26数据包内容.jpg
数据包内容
以前文劫持规则为例,劫持生效后当用户访问”dangdang.com”和”suning.com”等网址时,返回数据都会被替换为HTTP数据包0025.dat。数据包文件内容也需要进行解密,解密后我们可以看到JavaScript脚本控制的相关劫持逻辑。
劫持京东等电商网站
首先脚本会根据不同的网址执行不同的劫持逻辑,网址列表如下图所示:
 27网址劫持规则列表.jpg
网址劫持规则列表
如上图,url属性中存放的是欲劫持网址,name存放的是劫持调用函数,在该劫持脚本中,每个网址都对应不同的劫持函数。劫持函数调用逻辑,如下图所示:
28劫持函数调用.jpg
劫持函数调用
由于劫持网址众多,我们只以较为典型的几种劫持情况进行说明。我们先以劫持京东商城为例,劫持使用的函数为_fun_17。函数逻辑,如下图所示:
 29用来劫持京东的_fun_17函数.jpg
用来劫持京东的_fun_17函数
_fun_17函数会从预先准备的劫持数据中解密出一组劫持链接,且每个链接都对应一个劫持概率,劫持概率以比例的形式被依次存放在劫持链接数组后面。解密出的劫持数据,如下图所示:
 30劫持数据.jpg
劫持数据
在获取到上述劫持链接后,会调用ft_r函数在当前页面中插入刷新标签进行跳转。如下图所示:
31ft_r函数内容.jpg
ft_r函数内容
如上图,每个劫持链接都是通过广告推广平台(如亿起发、星罗、多麦等)链接跳转至最终的京东主页,ADSafe会通过这些广告推广平台进行流量套现。其他网址的劫持也大致相同,下面对其他劫持逻辑进行简单说明。
劫持Hao123导航
针对Hao123的劫持逻辑,如下图所示:
 32.jpg
如上图,劫持Hao123所示用的HTTP数据在0021.dat中存放,解密后与0025.dat大致相同,但该文件中只存放又针对Hao123的相关劫持代码。劫持函数,如下图所示:
33Hao123劫持函数.jpg
Hao123劫持函数
上图脚本会从推广号列表中随机选取一个推广号拼接在”https://www.hao123.com/?tn=”链接后面,之后也是通过插入刷新标签的方式进行跳转。用来劫持的推广号共8个,如下图所示:
 34用来劫持Hao123的推广号数据.jpg
用来劫持Hao123的推广号数据
劫持百度搜索
劫持百度搜索的劫持策略,如下图所示:
35劫持策略.jpg
劫持策略
劫持百度搜索的数据在0023.dat中,劫持函数如下图所示:
 36百度搜索劫持函数.jpg
百度搜索劫持函数
与 Hao123劫持情况相似,推广号也在一个列表中共36个,如下图所示:
 37推广号列表.jpg
推广号列表

四、同源性分析

除了前文中所说的清网卫士外,我们还发现一个与ADSafe具有相同劫持策略及功能模块的广告过滤软件”广告过滤大师”。该软件有两个页面完全相同的官网,分别为hxxp://www.admon.cn/和hxxp://www.newadblock.com/,且”admon.cn”域名是由”上海大摩网络科技有限公司”注册的。如下图所示:
 38admon.cn注册信息.jpg
admon.cn注册信息
官网页面不但完全相同,且都带有多家安全软件的安全认证,如下图所示:
 39广告过滤大师官网页面.jpg
广告过滤大师官网页面
广告过滤大师劫持策略目录与ADSafe、清网卫士对比,如下图所示:
 40劫持策略目录对比.jpg
劫持策略目录对比
不但目录中文件名基本一致,而且用于流量劫持的数据SHA1也基本一致(只有0025.dat的SHA不同),三款软件也都同时包含有相同的功能模块。所以我们可以判断,三款软件同属于一家软件制作厂商。SHA1对比,如下图所示:
 41流量劫持数据文件SHA1对比.jpg
流量劫持数据文件SHA1对比

五、附录

文中涉及样本SHA256:
42.jpg

原创文章,作者:老D,如若转载,请注明出处:https://laod.cn/4581.html

(6)
上一篇 2018-03-08
下一篇 2018-03-12

相关推荐

发表回复

登录后才能评论

评论列表(23条)

  • 1999
    1999 2018-04-15 18:53

    給Chrome裝上ABP或者直接用Opera瀏覽器(內置ABP)就好了。
    早已對國產軟件徹底絕望。翻了下自己的程序列表,桌面應用除了不得不裝的百度盤以外,一款國產軟件都沒裝。
    必要工具如QQ 微信一類的,都裝的UMP版。

  • hundouluobudajia
    hundouluobudajia 2018-04-11 11:57

    最近也发现ADSafe有问题,但是没有找到更好用的去广告软件了,有推荐的吗?

  • asriel
    asriel 2018-03-29 14:56

    广告过滤我只服ABP,国产某各类软件通常都没有下限。

  • Dark丶陆
    疯狂的陆先生 2018-03-16 12:48

    想问一下,火绒和电脑管家的兼容性怎么样

  • hugh_hang
    hugh_hang 2018-03-15 16:37

    果然免费软件都是“全家桶”

  • FenFire
    FenFire 2018-03-15 11:39

    那有没有类似功能能去视频广告的插件呢

  • 干粮豆沙包
    干粮豆沙包 2018-03-15 10:18

    早期很好用,自从发现百度后面有?xx=就不用了

  • agnostic
    agnostic 2018-03-15 10:08

    你说说还有良心企业吗?Windows 下装个软件不是捆绑一大堆软件,就是玩一些猫腻的。累觉不爱呀!还是用我的 Mac 舒心点。

  • ywqywq
    ywqywq 2018-03-15 07:56

    已卸载,还是用火狐插件

  • ider
    ider 2018-03-14 20:18

    能持续屏蔽那么多恶心的网页视频广告,总要赚点钱养些码农,可以理解一下,如果哪天故意安装木马另说

  • bluegoal
    bluegoal 2018-03-13 09:10

    所以还是不用为好

  • zhao880520
    zhao880520 2018-03-13 09:00

    火绒最近很活跃嘛,先是怼的腾讯道歉,又来爆这么大个料!

  • 花开半生
    花开半生 2018-03-12 20:21

    早就卸载了,用了win10不需要这玩意

  • Bakura
    Bakura 2018-03-12 12:23

    刚开始用的那时候就知道了,因为去狗眼东,只要开着adsafe的话,每次都要跳转到其它域名,关闭adsafe就没这问题了,所以后来就删除了adsafe了。

  • flys
    flys 2018-03-12 11:23

    ADSafe流量劫持很早前不是已经爆出来了吗 (好像是卡饭)现在又来个全家桶 :evil:

  • moluyouwo
    moluyouwo 2018-03-12 09:12

    对于用户来讲,只要没广告就行,流量劫持与自己没关系,鹬蚌相争,用户受伤啊

  • humor502
    humor502 2018-03-11 19:48

    火绒简直是丧(干)心(的)病(漂)狂(亮)

  • GalaxyHao
    GalaxyHao 2018-03-11 17:51

    这款软件我曾经用过,感觉好用是好用,的确有点流氓。于是换成了chrome拓展程序,不知道拓展程序会不会也有流氓代码