您的位置:首页 > 移动开发 > Android开发

Android逆向基础笔记—巧用蓝叠和Android Studio进行动态调试

2016-08-31 21:20 302 查看
我们知道很多apk光是静态调试时远远满足不了我们对apk的分析,这个时候,我们就需要来一波静态调试。

此处为个人笔记,也为入门小白引路,这里就不看结果了,主要是教大家怎么结合调试。

起因是昨天刚看了动态调试的方法,我就想来试试。结果电脑上只有Android studio。好吧,那我就百度了Android studio的调试。然后用模拟器,结果那个模拟器太恼火了,慢死人,还卡。(学生党,只能苦逼用低配笔记本)然后身边唯一一根数据线居然罢工。没办法,后来突然想起来,蓝叠模拟器很快了,可不可以试试。于是就有了下文。好了,不废话了,进入正题。

一、工具

毫无疑问:Android studio(附带SDK,这个不多说)  蓝叠

然后有个大家可能大家不知道的东西  smalidea  这个百度一大堆。我就不多说了,自己去下一个就是了

然后一个反编译的工具 jeb apkIDE AndroidKiller等等,都可以

我用的是jeb

二、环境

1.java那些环境我想这个不应该说了,然后就是adb的环境,最好是加到环境配置中去,方便,省事。



2.smalidea  这个是配置到Android studio的,配置了才能看smali文件

具体步骤:







然后选择你本地smalidea文件,这里说一句,最好不要有中文路径。也行不一定会出问题,但是不一定不会出问题。





这个样子就是OK了

一般会重启一下Android studio

三、准备

这部分是反编译出文件,然后导入到Android studio中去。

我这里用的jeb反编译的,各位请用自己喜欢的,都可以哈。



看到反编译成功,我们就去把文件提取出来

这里最好是也是不要放中文路径最好

接来下比较重要,一步一步操作。



然后选择我们放进去的反编译的文件夹



然后点那个三角





添加一个remote

名字随便取,端口号为8700



之后我们打开cmd。进行adb的安装

adb install -r apk的位置\apk全名



看到succe就知道成功了,蓝叠也会有提示的(一直默认蓝叠是开启的,没开的我就无语了)

然后进去调试状态

adb shell am start -D -n packageName/ActivityName





蓝叠也会这样显示



说明进入了调试状态,这个时候千万不要去点Force Close

四、进入调试

进入调试之前我们还需要去monitor看看我们是否端口号给正确了。





点击我们需要调试的apk包名,把8700端口给它

然后我们就可以调试了

这个时候我们需要去源码看看我们在哪里下断点了。这里就不多说了

我直接点断点了。在这行代码前面点一下,就断好了



然后点上面那个就可以进行调试了



下面是我们的信息地方,我们可以点加,进行添加寄存器



最后就可以进行调试,看看寄存器的值的变化了。F7是进入方法,F8是单步。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: