“道有道”的对抗之路

阅读量153883

|

发布时间 : 2016-03-25 11:29:46

https://p4.ssl.qhimg.com/t01361738d4bf99ee63.jpg

        作者:360移动安全团队

一、背景

        今年央视3.15晚会曝光了道有道科技公司通过推送恶意程序,使手机用户被莫名扣费的问题,引起了广大手机用户的高度关注。

        360移动安全团队对道有道广告SDK进行了分析与研究。截至2016年3月底,嵌入道有道广告SDK的应用软件累计达到80万个,从月增样本数量统计可以看出,在去年年中的一个月内就收录了近10万个。

image1


二、广告形式

        在道有道的官网上,介绍了其广告SDK的展现形式包括插屏广告、Banner广告和应用推荐广告。

image2

        其官网展示的插屏广告是在软件内的插屏,实际上在其广告SDK开发文档中,还支持在自身软件外弹插屏广告,这也正是3.15曝光的展现形式。

image3

        这种外插屏的展现形式,侵犯了用户的知情权,用户不知道是哪个应用弹的广告,并且点击屏幕任何地方都会直接下载推广的应用,除非准确点击ⓧ才能关闭广告。这种匿名且在自身应用外推送的广告展现形式,不但容易造成用户手机流量损失,还影响用户手机正常使用,被我们定义为恶意广告。


三、推广

        360移动安全团队发现,借助道有道广告SDK推广的软件,除了正常软件外,还存在大量的恶意软件,比如3.15曝光的色情视频类恶意软件。我们之前发布的“舞毒蛾”[1]和“百脑虫”[2]木马分析报告,都是借助色情视频类恶意软件传播、感染用户手机,并且难以清除干净。

image4

        移动广告平台对推广的应用审核不严,助涨了恶意软件传播,成为了其帮凶,最终造成用户经济损失、隐私泄露。


四、对抗演变

        360移动安全团队分析发现,道有道广告SDK利用静态和动态相结合的手段,与杀软特征进行持续性的对抗,从而躲避杀软的查杀。

1.      静态对抗

1.1           组件名称随机化

        从静态角度,通过对比嵌入其SDK的两个相似样本的AndroidManifest.xml文件内容,可以发现其声明的activity、service名称都是随机生成的,没有任何含义,这与一般正常软件的声明方式有明显的不同。

image5

1.2           方法及字符串变形

        SDK中的方法及字符串也在不断的进行变化,来躲避杀软静态特征识别。下面以onKeyDown方法为例,来展示其不同版本的变化情况。

最初的版本,方法和字符串均未加密。

image6

        升级的版本,方法中的字符串进行简单的Base64加密。

image7

        再后续的版本中,隐藏方式又有所加深,将方法名称及字符串都保存在配置文件里。

image8

1.3           核心代码的隐藏

        道有道广告SDK的核心功能都是依靠动态加载的dex文件来实现,这也是躲避杀软静态特征扫描的一种手段。其主要采用本地文件释放和代码运行释放两种手段隐藏其核心代码。

        解析assets目录下的资源文件,得到加载的dex文件。

image9

        将dex文件的二进制编码到代码中,在代码运行过程中解码释放。

image10

2.      动态对抗

2.1           URL变化

        从动态角度,我们以时间轴和不同颜色的方式来展示其广告联网的URL变化情况。

image11

  • 红色部分:URL前面几乎都是以“api”开头,不同时间段后面分别是 “is”、“cp”、“info”;

  • 绿色部分:URL最后面都是以“jsp”结尾,并且从“init”、“in”和“i1n2i3t4”能够看出有明显的对抗变化;

  • 蓝色部分:URL中间部分从“is”变为“nis”,从“_b”变为“_tgb”;

  • 黄色部分:URL开头部分从“api”变为“ai”;

  • 紫色部分:URL结尾从“wa.*/bb”变为“ai.wa.*/ia”;

以上这些URL的变化,都是在对抗沙箱等动态检测技术。


五、讨论

        移动广告市场的快速增长导致国内涌现出上百家移动广告平台,他们主要依靠在移动应用中集成广告SDK,收取广告主的展示费来盈利。3.15曝光的移动广告平台问题,仅仅是冰上一角,这些广告平台大小不一,良莠不齐,他们提供的广告SDK没有统一的行业标准,给移动安全带来了一定的风险和隐患。

        360移动安全团队发现,开发者嵌入广告SDK需要的开发门槛极低,甚至有些广告厂商为了方便开发者嵌入自家平台的广告,提供了广告打包器,只要将开发的应用通过打包器,就可以制作出嵌有该平台广告的应用。

image12

        极低的二次打包成本在一定程度上助涨了盗版软件的滋生。在360发布的《2015年Android手机应用盗版情况调研报告》[3]中指出,平均每款正版APP对应92.7个盗版。

        广告厂商借助移动应用平台进行广告投放,有责任对自身推广的软件安全性进行严格审查,避免广告推广给手机用户带来的不必要话费、流量损失。

        我们建议用户在选择应用下载途径时,应该尽量选择大型可信站点,如360手机助手、各软件官网等。同时,安装360手机卫士定期查杀。

image13

参考文献:

[1]“舞毒蛾”木马演变报告:

http://blogs.360.cn/360mobile/2016/03/08/analysis_of_wudue/

[2]“百脑虫”手机病毒分析报告:

http://blogs.360.cn/360mobile/2016/01/06/analysis_of_bainaochong/

[3]2015年Android手机应用盗版情况调研报告:

http://zt.360.cn/1101061855.php?dtid=1101061451&did=1101657409

本文由360移动安全团队原创发布

转载,请参考转载声明,注明出处: https://www.anquanke.com/post/id/83688

安全KER - 有思想的安全新媒体

分享到:微信
+10赞
收藏
360移动安全团队
分享到:微信

发表评论

Copyright © 北京奇虎科技有限公司 三六零数字安全科技集团有限公司 安全KER All Rights Reserved 京ICP备08010314号-66