Android App 安全防护基础

2020-7-15 宋宋宋

一. 存在的痛点:

1.源代码泄露

2.数据库注入

3.业务逻辑漏洞

4.通讯安全漏洞


二. 加固解决方案:

1.第一代加固技术:

    以代码混淆为主,主要目的是提高代码阅读难度,其方法:压缩,优化,混淆,预检。

2.第二代加固技术:

    主要是对App中dex文件加密,并加壳,隐藏核心代码。通过修改程序入口,使其在App运行时,先运行壳代码,就做到了保护加密dex的目的。但在运行时,还是可以在内存中,解密原始dex文件,转存内存即可。

3.第三代加固技术:

    分散dex文件中的类及方法函数,使其碎片化,用什么解密什么,增加攻击者解密成本。

4.第四代加固技术:

    前三代技术,最终都是需要Android虚拟机执行“解壳”之后的代码,理论上,可以构建一个脱壳虚拟机,专门还原内存中的“原始执行代码”。

    为了防止这种行为发生,演变出第四代加固技术-dex虚拟机保护(DVMP),就是重写Android原有的指令集语言。攻击者需要猜测指令集,才可还原原有逻辑代码,增加攻击者逆向攻击成本。


参考《Android应用安全测试与防护》 转载需注明本页面url及参考书籍。


标签: Android

发表评论:

密码站 2013 - 2020 | 辽ICP备17016418号-1