Android代码混淆,为移动应用提供更安全的保护

发布时间:2019-06-23 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了Android代码混淆,为移动应用提供更安全的保护脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

由于AndROId开的环境,导致Android的整体环境都存在很多不安全的因素,同时用户在移动APP客户端的便捷应用,也给用户带来了巨大的安全隐患。未经过安全加固的APP存在被静态反编译、恶意篡改、二次打包、动态钓鱼攻击等多个安全隐患。静态破解可让黑客直接逆向出客户端所有的功能代码、加密算法以及与服务器通信的相关方法及URL等敏感信息。黑客可以随意进行恶意代码注入、篡改欺骗用户甚至攻击服务器;动态攻击可让黑客进行相关敏感数据的窃取,如用户核心账户信息、服务器端相关信息等。

谷歌公司虽然从硬件方面强化设备安全性,通过 TrustZone 来实现他们的目的。TrustZone 是系统内核中的一个独立于内核中其它部分工作的特殊部分,负责处理最重要和敏感的操作(比如数据加密)。安全性得到一定的提升,用户将可以在设备上执行设备认证、设备完整性检查、设备绑定以及其他复杂的操作。但是 Android 在安全保护方面依然一直受限,因为其对潜在的整合缺少控制权。而且安卓系统的破碎性也让用户更难获得最新的系统更新。

Android代码混淆,为移动应用提供更安全的保护

So文件保护

SO是Android平台下的动态链接库,通常将核心业务逻辑代码编写到SO文件中。

对SO文件做加密和自定义加载处理,除此之外还会对SO文件中字符串加密和代码混淆处理,层层止攻击者提取SO文件和对其二进制代码做反编译和反汇编处理。

所用技点:C/C++源码混淆

加固方式:so文件静态加壳、即只需上传.so文件,C/C++源码混淆,需要使用几维安全编译插件。

C/C++代码混淆

名词解释:将代码中的函数结构体复杂化,转换为功能等价逻辑代码,但是混淆后的代码难以阅读和理解。

功能详解:对Objective-C、C、C++编译后的Native代码进行代码混淆处理,被混淆过后的代码中存在多余代码、怪癖语法、冗余逻辑判断,冗余函数调用等难以阅读和理解的代码,让攻击者无法反编译,从而有效的保护源代码安全(使用IDA PRo工具查看代码混淆前后逻辑流程对比效果如图混淆前、图混淆后)。Android代码混淆是一个非常强大实用的功能,结合符号混淆、字符串加密和反调试机制等功能,对应用安全要求很高的场合也能完全胜任。

Android代码混淆,为移动应用提供更安全的保护

混淆前

Android代码混淆,为移动应用提供更安全的保护

混淆后

脚本宝典总结

以上是脚本宝典为你收集整理的Android代码混淆,为移动应用提供更安全的保护全部内容,希望文章能够帮你解决Android代码混淆,为移动应用提供更安全的保护所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。