每部手机中离不开APP的运行。但是有些恶意APP你知道是怎样运行的吗?这就需要我们掌握一定的安卓逆向基础。随着本文让我们一起走进安卓逆向的学习吧。
加壳与脱壳
什么是加壳
所谓“壳”,本人的理解是为app添加了一身保护自己的“壳”。从而保护自己核心代码算法,提高破解/盗版/二次打包的难度,还可以缓解代码注入/动态调试/内存注入攻击
为什么要脱壳
想要app反编译。我们就需要为其脱掉保护自身的“壳”。从而实现对app的反编译及打包。
怎样脱壳
目前市面上的脱壳工具还是很多的。直接拖入想要脱壳的app,一键脱壳。我们在安卓市场随便下载一款工具。加载到脱壳工具检查是否有壳。
在判断所要逆向的app是否有壳。没有没有可以直接利用反编译工具进行编译。如果有壳,我们需要对其脱壳。这里脱壳工具笔者用的是
BlackDex
。当然还有其他优秀的一些工具。大家可以自行查找。
实验准备
-
加壳app -
一部安卓手机(未root)或者安卓模拟器
将BlackDex
和加壳APP分别安装。运行BlackDex
后选择要脱壳的app会自动脱壳。
反编译
这里我们以最常见的安卓修改大师(可以自行找破解版)为例。安装完成打开工具,点击反编译——从本地选择要反编译的APP,工具就会自动反编译
当然,利用apktool反编译,也是不错的选择。
原文始发于微信公众号(kali笔记):APP脱壳与逆向
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论