前言
本文将主要介绍个人在Android App逆向分析时常用到的一些工具和小技巧。说起Android 逆向,就不得不提到常用的逆向分析神器了,IDA,jadx,Android Killer,JEB。
常用工具介绍
jadx是一款非常不错的apk反编译工具,可以直接将apk转换成java源码,代码还原度高,且支持交叉索引等等,以一款开源工具为例,反编译后结构图
代码显示效果:
排除混淆的影响外,整体看来代码的显示效果基本是跟原工程一样的,非常有逻辑感,右键还可以查看方法和变量的引用,但是jadx的缺点也很多,速度较慢,且不支持变量,方法重命名等等,在针对混淆代码分析时有些力不从心,这里就推荐另一款工具JEB。
JEB是一款非常不错的Android逆向分析工具,新版的JEB也已经支持了app动态调试,但由于不稳定性,暂时还不推荐使用,本文使用版本1.5,由于大部分人都接触过JEB,也知道JEB的常见特性,本文就主要讲解JEB的另一个功能,脚本功能,示例app为RE管理器。反编译后可以看到:
方法中多数字符串已经被转换成了byte数组,这在逆向分析时会比较头大,为了解决这一问题