前言
基于java开发的android应用由于其语言的特性,所以很容易被反编译,虽然android提供了proguard,但是也只是增加了源码阅读的难度,其中业务逻辑依旧可以分析得出。有些人通过各种破解手段将apk文件破解、反编译,然后加入广告、病毒代码,重新打包投入市场,不明真相的用户将带病毒广告的apk下载下来,甚至因此造成利益损失。
一些个人开发者,小企业等并不会有这么多的资源精力投入在应用的安全方面,因此一些第三方的加固服务也应运而生,它们通过加壳、加密、逻辑混淆、代码隐藏等各类安全加固方法,增加移动安全应用的安全防护等级,防止移动App被逆向分析,反编译,以及防止二次打包潜入各类病毒、广告等恶意代码,并且应用加固是针对移动应用的安装包直接加固,无需开发者修改源代码或进行二次开发。
第三方免费加固
功能概述及其使用
1. 阿里聚安全 链接:jaq.alibaba.com/ (已经于2018.8.1停服)
- 上传应用
- 提供安全扫描(漏洞扫描、恶意代码扫描、仿冒应用扫描)
- 可以从结果知道漏洞总数,如果是认证过的开发者,可以直接得知漏洞的具体位置。其中还有部分漏洞需要付费扫描。
- 然后我们可以进行应用加固,其中分快速加固和多渠道加固,可以按需选择
- 加固包下载(应用需要重新签名)
2. 腾讯云应用乐固 链接:www.qcloud.com/product/cr
- 上传应用
- 默认服务类型:
- 应用加固
- 漏洞检测
- 渠道监控
- 可选服务类型:
- 适配分析(每天可以有一次)
- 质量跟踪(即接入腾讯的bugly进行异常追踪)
- 之后我们可以得到应用的基本信息、加固包、缺陷分析、应用检测
- 选择下载加固包(应用需要重新签名)的同时还提供了签名及多渠道打包工具、自动加固工具的下载使用
3. 360加固保 链接:jiagu.360.cn/
- 上传应用
- 提供加固基础服务:
- DEX文件加密
- 防二次打包
- APK大小优化
- 防DEX内存截取
- 应用盗版检测
- 加固数据分析服务
- 可选增强服务:
- 崩溃日志分析(即接入360的bug追踪)
- 支持x86框架(约增大apk大小400k左右)
- 应用升级通知(一键接入增量更新,约增大apk大小20k左右,详情地址:jiagu.360.cn/qcmshtml/de…
- 选择下载加固包(应用需要重新签名)的同时还提供了签名工具、加固工具(链接:jiagu.360.cn/qcmshtml/de…
4. 梆梆加固 链接:dev.bangcle.com/
- 上传应用
- 提供功能:安全评估(更多定制化的评估,需联系客户并且收费)、应用加固(认证过的开发者还提供:报告下载,多渠道打包)
- 评估结果提供了风险的详情,位置及解决方案
- 提供对加固后的包再进行快速评估
- 选择下载加固包(应用需要重新签名)的同时还提供了加固工具的下载使用
5. 爱加密 链接:safe.ijiami.cn/
-
上传应用并直接执行加密
需要注意其中有一个选项:防止二次打包,请按需选择
-
可以对加固后的包申请渠道检测,除了加固包的下载,还提供了签名工具的下载
-
使用智游爱加密服务的开发者APP,并已成功提交到Google 官方应用市场并上架的,可得到智游官方网站应用的下载推荐
对应用的影响
APK大小
Old Size 为原本的app包
New Size 为加固后的app包
- 阿里聚安全
- 腾讯云应用乐固
- 360加固保
- 梆梆加固
- 爱加密
原本大小 | 阿里聚安全 | 腾讯云应用乐固 | 360加固保 | 梆梆加固 | 爱加密 |
---|---|---|---|---|---|
16.6MB | 18.2MB | 17.3MB | 17MB | 18.4MB | 17.7MB |
兼容性
采用testin标准兼容测试,终端数100款
通过率如下:
原本 | 阿里聚安全 | 腾讯云应用乐固 | 360加固保 | 梆梆加固 | 爱加密 |
---|---|---|---|---|---|
100% | 100% | 99% | 98% | 98% | 97% |
启动时间
采用testin标准兼容测试,终端数100款
原本 | 阿里聚安全 | 腾讯云应用乐固 | 360加固保 | 梆梆加固 | 爱加密 |
---|---|---|---|---|---|
2.04s | 2.00s | 3.13s | 3.05s | 3.05s | 2.49s |
漏洞扫描结果
综合扫描质量,覆盖项广度等方面的考虑,采用了阿里聚安全的安全扫描
原本 | 阿里聚安全 | 腾讯云应用乐固 | 360加固保 | 梆梆加固 | 爱加密 | |
---|---|---|---|---|---|---|
评分(100) | 74.2 | 80.4 | 87.5 | 86.4 | 83.5 | 87.3 |
漏洞总数 | 50 | 44 | 17 | 20 | 10 | 23 |
高危漏洞 | 13 | 12 | 2 | 4 | 1 | 1 |
中危漏洞 | 19 | 16 | 2 | 4 | 2 | 1 |
低危漏洞 | 18 | 16 | 13 | 12 | 7 | 21 |
一开始用阿里聚安全加固后的包,再上传上去无法进行扫描,联系客服后发现它们那存在问题,在问题修复后再上传进行扫描,发现阿里扫阿里加固后的包竟然是这得分,这就有点尴尬了~
总结
体积(体积小的为优):360 > 腾讯 > 爱加密 > 阿里 > 梆梆
兼容性: 阿里 > 腾讯 > 360 = 梆梆 > 爱加密
启动速度(时间短为优): 阿里 > 爱加密 > 360 = 梆梆 > 腾讯
漏洞: 腾讯 > 爱加密 > 360 > 梆梆 > 阿里
app加固的好处是进一步保护了自己的核心代码,提升了盗版的难度,但同时也影响的应用的兼容性,程序的执行效率,还有部分的市场会拒绝加壳后的应用上架。所以请大家结合自身的情况来选择。
原文链接:zhangjm05.coding.me