安卓APP加固是什么意思呢?

常见APK应用加固核心有DEX文件、SDK文件、SO文件加固这3类。本文介绍三种APK加固的策略。一

安卓APP加固是什么意思呢?
安卓APP一般分为.APK或者.aab后缀格式的安装包,这个其实是一个数据包,可以简单理解为类似ZIP格式的压缩包!
我们可以在本地电脑通过鼠标右键直接将APK安装包进行解压,直接解压就可以获得包内数据结构和代码文件;
也可以通过APP开发工具对包内文件进行破解,反编译,溯源甚至可以得到APP数据通信核心关键,甚至拿到数据库的漏洞或权限。
这样就非常容易受到别有用心之人的恶意攻击
安卓APP加固就可以简单的理解为安卓数据包的加密过程

安卓APP加固的作用是什么?
安卓APP加固之后可以有效的对APP启动项,核心代码,核心数据,数据库通信等关键部分进行加密处理;
可以有效提高APP被破解的难度
可以有效的保护项目安全,隐藏服务器地址等;

APK加固的策略有那些?
常见APK应用加固核心有DEX文件、SDK文件、SO文件加固这3类。

一.DEX加固

上图为DEX加固技术演化,几种方案加固程度不同:

混淆代码:最原始也是最基础的防护措施;

整体DEX加固(加壳);

拆分DEX加固:函数抽取及动态恢复,递增内存Dump的难度;

虚拟机加固:自定义指令虚拟机解释器,指令可混淆;

Java二C加固:将DEX指令转换为native指令执行,可递增混淆、字符串加密功能。

开发APP从一门开始!

整体DEX加固,拆分DEX加固,均有相应的脱壳机,当前的防护程度几乎为零。

当前性能最强的加固方式是Java二c,将java指令转成c/c++指令,并做虚假控制流、字符串加密等处理,逆向难度最高。

二.SO加固

SO库文件通常存放着主要算法、关键协议等关键信息。

依据so结构特点,在2进制层面进行局部函数加解密。

SO加固前导出函数有三六九个函数,加固后只有四二个函数,其他的都是能够做加密的隐藏的。

三.SDK加固

SDK的加固策略和DEX类似,这里不做细致说明。

编辑:小明,如若转载,请注明出处:https://www.yimenapp.com/kb-yimen/7100/

部分内容来自网络投稿,如有侵权联系立删

(0)
上一篇 2022年7月22日 下午6:36
下一篇 2022年7月25日 下午12:44

相关推荐