Theseus

Android逆向解题流程
拿到Android逆向题目,我们回忆一下Android的文件结构在Android逆向中无非就两大类考点:1、jav...
扫描右侧二维码阅读全文
20
2020/08

Android逆向解题流程

拿到Android逆向题目,我们回忆一下Android的文件结构
apk1.png
APK.png
在Android逆向中无非就两大类考点:

1、java层的代码运行机制(主要考察java代码分析能力)(对应dex文件)

2、native层的代码分析(so文件的分析)(对应lib文件下的文件)

分析的流程如下:

分析工具:IDA、jeb、jadx、Androidkiller

1、模拟器中运行APK,观察运行的模式,活动的布局

2、查看AndroidManifest.xml中的文件,寻找是否可以调试,APK的主活动的名称是什么

3、查看主活动(通常我们会从功能按键入手分析或者是从打印正确提示的地方分析)
通常的apk题目都是输入flag在文本框中,然后点击提交的按键。然后从相等或者 判断的地方入手分析。从后往前分析代码逻辑,查看或者分析调用的函数功能。
Untitled.png

4、如果函数在java层中没有定义逻辑,只声明了函数的方法名,这时我们需要关注可能是把这个方法的逻辑写在了So文件中,这时我们就需要分析So文件。

5、如果某些数据是从数据库中调用,那我们获取数据就需要从数据库中取出

6、以上是静态分析手段,如果出题人的考察点很微小,那我们就需要动态调试smali文件或者修改smali中的逻辑,或者动态调试So文件

7、动态结合,分析解题

最后修改:2020 年 08 月 20 日 02 : 15 PM
如果觉得我的文章对你有用,请随意赞赏

发表评论