甲方安全之安卓App第三方加固对比
前段时间公司要给 Android 应用进行加固,由笔者来选一家加固产品。然后发现,加固产品何其之多,且鱼龙混杂。各种问题也是层出不穷,比如,有些加固时间非常久、有些加固会失败、有些运行会崩溃等等问题。目前笔者已经给老板交了差,想把之前分析的数据整理出来分享给大家。
笔者从主观数据与客户数据两部分对第三方加固做了对比。其中,主观数据主要表现在对操作便捷方面的感受,客户数据就是体现在我们较为关心的各项指标(安全性没法评估,本文跳过了,请各路大神见谅)。
公司产品由于安全隐私问题不方便展示,我从网上随便找来三个应用(如果有冒犯到贵公司的应用,请通知本人删掉),这里将三个应用分别命名为:test1.apk、test2.apk、test3.apk。
01
主观数据
操作体验
• 梆梆安全
加固时需要选择应用类型,可能是梆梆要对 App 做数据统计,在选择好应用类型后,直接点击“提交应用”,即可对应用做加固。个人感觉操作上相对便捷,对于我这种小白用户来说较为友好。
在提交加固后,加固进度条一直处于四分之一状态,不会随着加固进度而改变,这使得用户无法较好地得知当前的加固进度,希望后续能够改进。
• 爱加密
爱加密在上传 APK后需要填写多种配置项,其中包括“应用类型”、“防二次打包”、“infoBeat 数据服务”、“多渠道打包”等,同时还需要同意相关条款才能够进行加固。对于入门级的我来说,很多选项并不明白其用处,只是盲目地做了勾选,然后选择“提交加密”。
加固过程没有进度条显示,无法得知当前加固进度,且加固时间较长,基本要20分钟以上。
• 360 加固保
提供多种不同的保护方式让用户选择,默认情况下都会全选。选择后点击确定,即可实现应用加固,整个流程相对简单,且可选择性较大。
• 几维安全
上传应用后,需要点击“加固”对话框才能进入加固页面,一开始以为上传就能够自动做加固,等了好久之后发现还没开始,这个设计有点反人性。
几维的加固默认状态下没有勾选 “Dex 函数加密”,如果不注意,直接点击“开始加固”将不会对 Dex 文件做加密。个人感觉有诱导不加固的嫌疑,付费可以享受更多功能,但操作都在同一页面。
• 顶象加固
上传应用并点击“确定”即可直接对APK做加固,操作简单快捷。小白也可以方便使用,不需要额外的学习成本。
• Testin 云加固
上传应用并点击“下一步”即可直接对 APK 做加固,操作简单快捷。小白也可以方便使用,不需要额外的学习成本。
另外,还支持邮件通知与微信通知,相当人性化的体验。
• 腾讯云应用加固
从进入页面到开始加固的整个过程比较繁琐,需要连续点击多个页面才能真正进入到加固页面。
与其他加固厂商相比,乐固免费版APK 保护的功能较多。同时,也是这么多家唯一有加固进度显示的厂商,这一点的体验方面比较好。
横向对比
1、界面体验:
从各个加固厂商的网页界面来看,顶象以及几维两家企业网站的界面的体验相对友好,可能是因为新兴企业的原因,使用注重界面体验的UI设计,从使用体验上来讲,能够给人更为直观的感受;
2、操作便捷程度:
从操作便捷性来看,梆梆跟爱加密都需要用户对上传的应用做分类,并且同意相关协议才能做加固。
几维安全则在默认情况下是不勾选Dex加固,用户很容易没有留意到而导致应用加固强度不够。在上传应用后,需要点击“加固”对话框,才能进入加固页面。
顶象加固与 Testin云加固的加固流程简单快捷,直接上传APK即可实现加固,对于新手用户也可以快速应用,学习成本低。
360加固保则提供多种不同的保护选项让用户选择,默认情况下都会全选,在选择后点击确定,即可实现应用加固。选择性大,造就操作步骤的繁琐。
乐固可能由于是免费版的因此从进入页面到开始加固整个流程相对繁琐,但从功能上来说具备更多的加固功能项,并且能告知用户等待时间。
02
客观数据
1、加固时长
2、加固体积
其中,test2.apk 与 test3.apk 在使用爱加密加固的时候均失败。部分加固后的体积比原包还要小。
3、首次启动时间
4、二次启动时间
5、内存
6、兼容性
Testin 作为一家云测厂商,启动黑屏,有点难以接受。
从这张表中可以看到,顶象的兼容性是最好的。
总结
据上数据,横向对比做下排序,以便大家更直观清晰的了解,排序规则为从左至右依次递减,左侧最优。
1、加固时长:
顶象 > 360 > 腾讯 > 几维 > Testin > 梆梆 = 爱加密
2、加固体积:
test1:梆梆>顶象> 原包 > Testin > 腾讯 > 几维 > 爱加密 > 360
test2:腾讯 > 360 > 原包 > 几维 > 顶象 > 梆梆 > Testin(爱加密加固失败)
test3:原包 > 腾讯 > 几维 > 顶象 > 360 > 梆梆 > Testin(爱加密加固失败)
3、首次启动:
test1:原包 > 爱加密 > 顶象 > 梆梆 > 腾讯 > Testin(几维 与 360 崩溃)
test2:原包 > 几维 > 360 > 腾讯 > 顶象 > Testin(梆梆 崩溃,爱加密 加固失败)
test3:几维 > 原包 > 顶象 > 360 > 腾讯(梆梆 崩溃/爱加密 加固失败/Testin 黑屏)
4、二次启动:
Test1:原包 > 顶象 > 梆梆 > 爱加密 > 腾讯 > Testin(几维 与 360 崩溃)
Test2:原包 > 几维 > 顶象 > 360 > 腾讯 > Testin(梆梆 崩溃,爱加密 加固失败)
Test3:原包 > 几维 > 顶象 > 腾讯 > 360(梆梆 崩溃/爱加密 加固失败/Testin 黑屏)
5、内存:
test1:原包 > 顶象 >爱加密 >梆梆 >腾讯 >Testin(几维 与 360 崩溃)
test2:原包 > 顶象 > 几维 > 腾讯 > 360 > Testin(梆梆 崩溃,爱加密 加固失败)
test3:原包 > 几维 > 顶象 > 腾讯 > 360(梆梆 崩溃/爱加密 加固失败/Testin 黑屏)
6、兼容性
test1:梆梆、爱加密、顶象、Testin、腾讯等五家均正常启动(几维与 360 崩溃)
test2:360、几维、顶象、Testin、腾讯等四家均正常启动(梆梆崩溃,爱加密加固失败)
test3:360、几维、顶象、腾讯 等三家均正常启动(梆梆崩溃/爱加密加固失败/Testin 黑屏)
最后
客观数据每组都是测试了至少10组,然后去除最高及最低值,再计算平均值,已经尽可能去除干扰。
主观数据仅是个人的一些感受,客观数据也只是将所测数据展示给大家。以上数据仅供大家参考,测试过程中可能有一些误差,请大家见谅,毕竟 Android 手机测试的数据本身就有波动。
PS:如有想要测试APK的可在“X安全”微信号里回复“APK”关键字获取。
甲方安全之安卓App第三方加固对比的更多相关文章
- Android 第三方加固方案 对比 MD
常见的第三方加固方案官网介绍 由于安卓APP是基于Java的,所以极容易被破解,一个不经过加固的APP犹如裸奔一样,毫无防备.之前曾有新闻报道,一些专职的APP打包黑产就是专门从各种渠道找到apk,通 ...
- 微信小程序、安卓APP、苹果APP对比分析
今天的话题主要是关于微信小程序.安卓APP.苹果APP对比分析.既然是对比分析肯定是将它们一个一个说明. 本篇不涉及技术话题,只讲解微信小程序.安卓APP.苹果APP它们各自的优缺点及其应用场景. 一 ...
- 当前安卓App加固到底该如何做到防篡改?
安卓dalvik虚拟机要求dex文件在内存中以明文形式存在,那么任何加壳方法到头来到了内存还是明文存在,各种dump方法终究是可以获得它的.App究竟应该如何加固才能防止被篡改? 加固和 dump ...
- 【转载】安卓APP架构
注:本篇博文转载于 http://my.oschina.net/mengshuai/blog/541314?fromerr=z8tDxWUH 本文介绍了文章作者从事了几年android应用的开发,经历 ...
- 安卓---app自动更新
主要参考:http://blog.csdn.net/jdsjlzx/article/details/46356013/ 效果如下: 大致思路:[原文] 首先,我们要有一个可以被手机访问的后台. 这里有 ...
- 一文了解安卓APP逆向分析与保护机制
"知物由学"是网易云易盾打造的一个品牌栏目,词语出自汉·王充<论衡·实知>.人,能力有高下之分,学习才知道事物的道理,而后才有智慧,不去求问就不会知道."知物 ...
- 小程序第三方框架对比 ( wepy / mpvue / taro )(转)
文章转自 https://www.cnblogs.com/Smiled/p/9806781.html 众所周知如今市面上端的形态多种多样,手机Web.ReactNative.微信小程序, 支付宝小程 ...
- 小程序第三方框架对比 ( wepy / mpvue / taro )
众所周知如今市面上端的形态多种多样,手机Web.ReactNative.微信小程序, 支付宝小程序, 快应用等,每一端都是巨大的流量入口,当业务要求同时在不同的端都要求有所表现的时候,针对不同的端 ...
- 安卓app开发-03-项目的基本开发步骤
android项目的基本开发步骤 这里分享一下开发 安卓 app 的流程,当然有些感觉不必要,其实不然,前期工作也是极为重要的额,就像开发的时候如果目标不对的话,到后期后很迷的,所以一定要提前做好规划 ...
随机推荐
- Nginx配置实例-负载均衡实例:平均访问多台服务器
场景 Nginx配置实例-反向代理实例:根据访问的路径跳转到不同端口的服务中: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...
- JS---案例:协议按钮禁用(倒计时)
案例:协议按钮倒计时和禁用 <textarea name="texta" id="" cols="30" rows="10& ...
- 带你了解Android Jetpack
1.Jetpack主要特性有以下三点: 1.加速开发组件可单独使用,也可以协同工作,当使用kotlin语言特性时,可以提高效率. 2.消除样板代码Android Jetpack可管理繁琐的Activi ...
- mysql与python的交互
mysql是一种关系型数据库,是为了表示事物与事物之间的关系,本身存于数据库中的内容意义并不大,所以广泛应用于编程语言中,python中九含有与MySQL交互的模块 pymysql 编程对mysql的 ...
- .NET 收徒,带你走向架构师。
最近感悟天命,偶有所得,故而打算收徒若干,以继吾之传承. 有缘者,可破瓶颈,走向架构师之峰,指日可待. 入门基本要求: 1.工作经验:1年或以上. 2.入门费用:10000元(RMB). 联系方式(联 ...
- Linux中获取本机的最新IPv6地址_更新ddns的脚本
Linux中获取本机的最新IPv6地址_更新ddns的脚本 转载注明来源: 本文链接 来自osnosn的博客,写于 2019-11-07. 运营商提供ipv6地址. 路由器后有台linux机器,通过e ...
- Cortex-M7,A8,A9,A15与ADI的BlackFin以及SHARC的DSP性能PK
说明:1.通过此贴让我们对M4和M7的DSP性能有个全面的认识.2.测试数据来源于DSP Concepts,对于这家公司的名字,大家可能比较陌生.我们现在用的CMSIS-DSP软件就是由ARM委托这家 ...
- 源码角度分析-newFixedThreadPool线程池导致的内存飙升问题
前言 使用无界队列的线程池会导致内存飙升吗?面试官经常会问这个问题,本文将基于源码,去分析newFixedThreadPool线程池导致的内存飙升问题,希望能加深大家的理解. (想自学习编程的小伙伴请 ...
- mysql不等于判断时,空值过滤问题
产生根源 比如我们有三条数据,对应的列名是delete_flag,对应的数据是'normal','delete',null. 此时我们查所有不等于delete的记录,我们期望的是两条记录 normal ...
- Redis 实现美团的外卖派单系统“附近的人”筛选实战原理分析
针对“附近的人”这一位置服务领域的应用场景,常见的可使用PG.MySQL和MongoDB等多种DB的空间索引进行实现.而Redis另辟蹊径,结合其有序队列zset以及geohash编码,实现了空间搜索 ...