6

“道有道”的对抗之路 | WooYun知识库

 6 years ago
source link:
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

“道有道”的对抗之路

Author:360移动安全团队

0x00 背景


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

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

p1

0x01 广告形式


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

p2

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

p3

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

0x02 推广


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

p4

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

0x03 对抗演变


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

1.静态对抗

1.1 组件名称随机化

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

p5

1.2 方法及字符串变形

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

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

p6

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

p7

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

p8

1.3 核心代码的隐藏

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

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

p9

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

p10

2.动态对抗

**2.1 URL变化***|

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

p11

  • 红色部分: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的变化,都是在对抗沙箱等动态检测技术。

0x04 讨论


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

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

p12

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

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

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

0x05 参考文献



About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK