查看: 25287|回复: 154
收起左侧

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

  [复制链接]
hizyw
发表于 2018-3-10 00:51:19 | 显示全部楼层 |阅读模式
一、概述
日前,火绒安全团队发现"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:



评分

参与人数 3分享 +1 人气 +2 收起 理由
海洋饼干 + 1 版区有你更精彩: )
钢铁侠 + 1 精品文章
Tarchia + 1 版区有你更精彩: )

查看全部评分

hizyw
 楼主| 发表于 2018-3-10 00:52:03 | 显示全部楼层
纯搬运,搬运自火绒官方咨询,火绒越来越犀利了
lii
头像被屏蔽
发表于 2018-3-10 01:50:52 来自手机 | 显示全部楼层
ADSafe"劫持规则可随时通过远程操作被修改,不排除其将来用来执行其他恶意行为的可能性,存在极大安全隐患      难道QQ火绒一类的软件不能远程修改而作恶?
ccsfuture
发表于 2018-3-10 03:11:39 | 显示全部楼层
断人财路
davidyxw
发表于 2018-3-10 05:48:56 | 显示全部楼层
非常专业技术分析,能给一个干净的版本就更好了
tao8023yy
发表于 2018-3-10 06:34:20 | 显示全部楼层
太感谢了。已卸载,备份了数据,双清,再安装自己需要的软件。
莒县小哥
发表于 2018-3-10 07:47:02 来自手机 | 显示全部楼层
厉害了我的绒。。。加油
锦瑟无端五十弦
头像被屏蔽
发表于 2018-3-10 08:04:07 | 显示全部楼层
adsafe从一开始就不算干净。
Jerry.Lin
发表于 2018-3-10 08:13:55 | 显示全部楼层
又是一家在做偷鸡摸狗的事情

附上样本
julia跺跺
发表于 2018-3-10 08:46:53 | 显示全部楼层
早知道了,火狐+扩展+脚本解决一切
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2024-11-28 00:04 , Processed in 0.145705 second(s), 18 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表