* 本文原创作者:Sunnieli
首先做个说明为什么我会先这个自动化加固的评测。很大一部分原因是和兴趣有关,因为是学习app安全开发,所以多多少少要了解移动安全这方面的知识,很多时候我们会用一些线上的自动化安全平台来给应用加固。 所以在一开始选择什么加固产品的时候也是试了好多个不同的厂商。这次就不如把我之前测的一些数据分享出来,供大家参考。
对于移动应用开发工程师来说,应用自动化加固无疑是最便捷的一种安全方式了。通过加固可以在一定程度上达到反编译和防止被二次打包的效果。当然,现在网上很多平台都提供加固服务包括BAT在内。加固原理差不多,但是加固强度和兼容性上还是有很大差别的。
以下是我之前整理的一些应用加固评测。总共选择了5个平台,1款APP。同时用这5个平台加固,然后通过操作体验,加固后启动时间,加固后应用大小和兼容性上进行评测比较。
以下是五个评测对比的加固平台:
1.360加固保 链接http://jiagu.360.cn/
2.阿里聚安全 链接http://jaq.alibaba.com/
3.腾讯云应用乐固 链接https://www.qcloud.com/product/cr.html
4.梆梆安全 链接http://www.bangcle.com/
5.通付盾移动安全云 链接http://www.appfortify.cn/pc-index.html
首先将应用在选择的5个平台中进行加固,这次选择的应用是魅力惠3.1.0.2版本,大小为16MB。选择的加固全部都是免费使用的。当然部分也有付费版本的高级加固,不过这次不在评测范围内。
360的加固流程下来,加固前选择项比较多,可以选择增强服务比如日志分析,x86架构,应用升级通知,还有对于签名的选择。他们还有一个桌面版可以提供本地加固。
如果是认证用户可以选择已有的应用或者上传新应用直接开始加固,操作过程很顺畅。加固中会提示先给应用进行恶意代码检测,这点挺人性化的。
加固后将文件下载下来再次签名即可发布。另外还有在线多渠道加固可以选择,这个功能比较适合发布渠道多的用户。
腾讯云的加固上传应用后默认选择了加固,漏洞检测还有渠道监控。可选项是适配分析,限量每天一次。 卡片式的界面设计和阿里聚安全的倒是挺像的。
梆梆的整体流程和其他的差不多,可以选择安全评估和应用加固是否同时进行。
通付盾加固的界面,选择应用上传后,选择服务点击提交便可。
小结:
5个平台加固功能使用下来基本不会出现操作疑问,主要是步骤和流程都太像啦。个人从用户体验这一点来评价的话,腾讯云和通付盾的设计会比较好,在加固完成之后都会有签名工具的下载提供,想得比较周到。
对于加固等待时间这一次对比中也做了记录。同样的应用在不同的平台加固时间也是很不一样,最快的是阿里聚安全,16MB的应用加固用时35秒,而通付盾最久用时3分08秒。当然时间的差别除了和加固引擎不一样之外,也可能是加固强度和加固项目有关。
360加固保 | 阿里聚安全 | 腾讯云应用乐固 | 梆梆安全 | 通付盾 |
---|---|---|---|---|
1分20秒 | 35秒 | 1分01秒 | 2分14秒 | 3分8秒 |
加固后将这些加固保下载下来,对未签名的应用做了体积比较。阿里聚安全的加固反而使应用包变小1MB,其他的几个则都出现了0-0.8MB的浮动。
加固前 | 360加固保 | 阿里聚安全 | 腾讯云应用乐固 | 梆梆安全 | 通付盾 |
---|---|---|---|---|---|
16MB | 16MB | 15MB | 17MB | 16.5MB | 16.8MB |
通过第三方兼容性测试testin的测试,这五个平台输出的应用签名后兼容性相差不大。这次采用的是覆盖100台主流手机的测试,检测结果如下:
加固前 | 360加固保 | 阿里聚安全 | 腾讯云应用乐固 | 梆梆安全 | 通付盾 |
---|---|---|---|---|---|
2.52秒 | 1.77秒 | 5.02秒 | 3.48秒 | 5.57秒 | 3.82秒 |
除了360加固,其他4各平台加固后启动速度比加固前要慢。其中对速度影响最大的是梆梆安全。
对于应用的兼容性也是非常重要的一项指标。通过这次的评测,可以发现测试的应用采用通付盾的加固后,兼容性出现了大幅度下降只有88%。而其他四个并没有太多的变化。
加固前 | 360加固保 | 阿里聚安全 | 腾讯云应用乐固 | 梆梆安全 | 通付盾 |
---|---|---|---|---|---|
100% | 99% | 100% | 100% | 99% | 88% |
最后再来一个汇总的统计表格,看看这几个指标中都是哪些平台得了第一:
操作简便 | 加固等待时间少 | 体积变化率小 | 启动速度快 | 兼容性好 |
---|---|---|---|---|
通付盾,腾讯云 | 阿里聚安全 | 阿里聚安全 | 360加固保 | 阿里聚安全,腾讯云 |
这里要特别提一下,如果应用市场选择360和百度开发平台的话他们的规定是不允许使用其他品牌商的加固功能的,这一点体验上就会不太好。
各位如果想选择加固产品可以重点关注加固后的兼容性还有启动速度这两个维度。
最后是想说明一下这次加固使用的都是免费版自动化加固,目前各个平台也都有提供一些API或者更高强度的加固方案。
不过就目前加固技术而言,还是有方法可以对应用脱壳的,对于应用安全来讲除了加固还可以再结合其他的一些方式。比如在应用中嵌入安全组件,进行数据加密和逻辑混淆这种方式。
第一次发文,请多指教:)
* 本文原创作者:Sunnieli,本文属FreeBuf原创奖励计划,未经许可禁止转载。