# 美玉在外，败絮其中——色播病毒的那些事儿

Author: 乌云历史资料库 (@wooyun_archive)
Published: 2015-10-16T23:37:00Z
Canonical: https://wepostx.com/topics/1115

> 乌云历史资料归档
>
> **原始作者：** 腾讯电脑管家
> **原始编号：** superkieran-wooyundrops:831
> **原始发布时间：** 2015-10-17 07:37
> **声明：内容仅用于技术研究和个人使用，版权归 wooyun.org。**

---

长期以来,色播类App屡见不鲜,其背后是巨大的金钱利益,是病毒主要栖息之地。为了保护用户切身利益,腾讯手机管家长期以来对此类病毒进行及时查杀。
色播类病毒每日感染用户数如下图所示,感染用户数在周末日与假日期间尤为严重

![原文图片](/media/2016/06/a8383224a6859409b6173c8b9cd20373)

为了进行有效的查杀,我们对色情类病毒进行实时的监控。以某约爱色播视频为例,下图所示,晚上8点后会进行爆发,每小时以千为单位,库中总量达80万。

![原文图片](/media/2016/06/9b248aa55edfc6446f8d75cc6aa95d60)

美玉在外,败絮其中,此类色播病毒常以美女色情图片或者视频来诱导用户安装,不断提示用户安装难以卸载的恶意插件,进行广告的推送,甚至在后台静默下载安装应用和发送扣费短信,给用户造成很大的影响
色播病毒执行的流程如下图所示:

![原文图片](/media/2016/06/eec76757a03cec9ee41c3f5b726737e4)

# 0x01 色播类病毒主要行为分析

## 1.1 通过继承Application来解密Dex,隐藏真正的Dex来躲避查杀

![原文图片](/media/2016/06/5c05b7c4c5d9fb37d5badd03c00e0c68)

## 1.2 解密Dex:
通过包名中的数字截断来确定需要解密的文件的名称,此时文件名为26a6.fdc
解密后的Dex名称由:Md5加密(包名+”.Core”)+“.apk”组成

## 1.3 通过DexClassLoader加载Dex,读取资源解密释放出文件:

![原文图片](/media/2016/06/52200376df2f5f8f4780d260203da51f)

命名方式为:MD5加密(包名+“.original”+versionCode),此时的文件为一个Loader

## 1.4 Loader联网获取恶意插件:
01f61033344309ee8aa69bfab53f8196.apk即为Loader,
包com.jmedia.loader.ad的函数AdApkHandler为加载插件函数

### 1) 联网获取数据,配置广告文件config_ad.xml

![原文图片](/media/2016/06/8a76c91db4fd482457349da31fdfefc1)

### 2) 读取json数据,通过解密字符串获得需要的字段downloadurl,filesize,outStartActivity等

![原文图片](/media/2016/06/e3078bd9225df3dfaabfd7d2c2b819f8)

对应的字符串

![原文图片](/media/2016/06/92685562eafb6d52e234e776cc24eb7d)

解密函数主要过程:将密钥 进行MD5 加密,取前17位作为AES解密的key
解密函数如下:

![原文图片](/media/2016/06/16e40c0117b2c0e615b3e08e203f1715)

### 3）写SharedPreferences文件config_ad.xml,内容如下

![原文图片](/media/2016/06/0b758ecc80074026847d01d70f5896b1)

### 4）获取到config_ad.xml的downloadUrl下载解密
下载到的文件ad20150513.apk文件,命名为game.properties, 该文件为加密文件,读取config_ad.xml的secretKey进行AES解密,释放解密后的文件到sdcard中的SAdAssets目录下,命名为game20141210.apk,该文件即为我们要的com.android.system.contact.app推广的APP

![原文图片](/media/2016/06/ec0be4bc20247161372295f4bb064b0c)

其中config_ad.xml中的字段：outStartActivityAction, outStartActivity , serviceClassName 为需要启动的组件信息

## 1.5 推广的 com.android.system.contact.app 主要行为

- 激活设备管理器

- 监听设备管理器DeviceAdminReceiverm,当用户禁用时,返回字符串:“取消激活将导致手机系统不稳定,部分安卓程序无法运行”,且记录是否禁用

- 联网下载推广信息,banner广告,悬浮窗广告,推送消息等

![原文图片](/media/2016/06/83b07fe555af72a5f08aa3a562f3c9ed)

# 0x02 色播类病毒追踪

## 2.1批量生成灵活配置后台进行推广:色播类病毒中含大量重打包的应用,其推广应用可灵活配置

![原文图片](/media/2016/06/16395f8c9e268db9e47fcb2bcd393582)

### 1)根据Manifest配置文件的Appid来决定访问的网址

![原文图片](/media/2016/06/89d0f9bfa80c5c81d669d17029cf5ce8)

### 2) 后台含需要推广的应用,及其诱导信息

![原文图片](/media/2016/06/1fc626c8c8842db39ff41cf28b6708bc)

![原文图片](/media/2016/06/8c13fbae64b085e0a7b96645f5def062)

![原文图片](/media/2016/06/fb454075034c07d76342c9a1924a2ec2)

## 2.2 静默发送短信或者诱导点击来达到扣费的效果,以云端控制的方式返回 待发送短信和号码,此种方式能控制发送任意短信内容

### 1)除了偷偷发送短信,还会以诱惑性或者模糊的词来诱导用户进行点击

![原文图片](/media/2016/06/64c185adb77bc5936054d3761bb58124)

### 2）以云控的方式来控制短信内容

![原文图片](/media/2016/06/7eb60eb59babb9e349140adb64bb6dfa)

## 2.3我们在实时监控的过程中,发现色播类病毒和大量插件,App捆绑相关联,可见病毒作者在开发时,在捆绑的测试也下过不少功夫。

![原文图片](/media/2016/06/fc5be59f5b4bd6eadad2b0347455ce37)

# 0x03 色播伪装的羊皮

色播类病毒在隐藏伪装方面也着实下了不少功夫

## 1. 将推广应用或者dex伪装成so,mp3等各种格式

![原文图片](/media/2016/06/181e24f8f460cb412a5e9f1f4eb67488)

实际上Media.mp3为Apk文件,如下图所示

![原文图片](/media/2016/06/f8b9acf0e7915df9c070f51229e06a3a)

## 2. 少量使用主流加固,大多数通过私有加固,加解密的方式来躲避查杀,并且使用公开的隐藏Apk方式

### 1) 如下图所示,样本为dex文件,但其数据的尾部隐藏着一个APK文件

![原文图片](/media/2016/06/a792cb91ed52d79b51e82d3f9705a91d)

### 2) 直接以字符串的形式存储在字符串中,进行解密写文件

![原文图片](/media/2016/06/7add50ac0dc8b18bff15e1c1fca491a8)

### 伪装成正常的类名

![原文图片](/media/2016/06/4a6af0f20e6936356a2ce29efc50ff60)

### 通过So来调用android代码下载插件,色播逐步转向Native层将成为一大趋势

![原文图片](/media/2016/06/3a4e1bb71000753ec8bb8f6661791b1d)

# 0x04 总结

色播类的样本使用各种伪装,加解密的方式的手段来加载恶意代码,此种通过云端控制、插件化加载的方式,可达到加载各种恶意app,并且含推广应用,推送消息,恶意扣费的行为,将对用用户造成很大的影响。

# 0x05 解决方案与安全建议

- 使用腾讯手机管家可进行精确的查杀与防御

- 健康上网,不安装来历不明的应用软件

![原文图片](/media/2016/06/3b2af66e8fbe7e28fe6e52d4c4330f6c)

## Replies
