美文网首页Studio
Android逆向破解:使用Android Studio调试反编

Android逆向破解:使用Android Studio调试反编

作者: itfitness | 来源:发表于2020-12-03 21:07 被阅读0次

    目录

    目录

    所需工具

    Android Killer:使用及下载请看我的这篇文章Android逆向破解:Android Killer使用
    Android Studio:下载地址http://www.android-studio.org/
    ideasmali插件:官网https://bitbucket.org/JesusFreke/smali/downloads/,如果使用官网下载慢的话可以用这个下载:https://pan.baidu.com/s/1htl26qS 密码:0pre
    Android模拟器:这里我用的是逍遥模拟器https://www.xyaz.cn/

    调试步骤

    1.对目标Apk进行反编译
    具体的反编译步骤可以看我的这篇文章Android逆向破解:Android Killer使用
    这里有的小伙伴可能会出现反编译失败的情况,一般是因为apktool版本过低导致的,可以去官网下载最新的然后替换本地的即可。
    在本次案例中我反编译了一个我自己的Apk,反编译后的项目如下:


    2.修改文件
    这里我们需要修改AndroidManifest.xml,让项目可以进行断点调试,修改如下:

    在application标签内增加android:debuggable="true"
    3.回编译修改后的代码
    接下来就可以点击编译按钮进行回编译了。

    编译完成后回显示apk的路径,点击路径即可打开对应的目录。

    4.安装修改后的Apk到模拟器
    这时候我们打开模拟器,将修改后的apk拖到模拟器中就能进行安装了。

    5.Android Studio安装ideasmali插件
    接下来我们打开Android Studio,找到File->Settings->Plugins->Install Plugin from Disk,然后选择下载好的ideasmali插件即可安装,安装成功后需要重启Android Studio。


    6.使用Android Studio打开反编译后的项目
    重启完Android Studio后,点击File->New->Import Project,然后选择反编译后的Project目录,然后一路Next即可。



    打开后的项目大概是这样的,因为安装了ideasmali插件所以可以语法高亮显示。

    7.进行断点调试
    最后我们可以使用adb的命令对目标应用进行断点调试,命令的使用方法如下:
    adb shell am start -D -n 应用包名/入口Activity名称
    

    我的项目对应执行的命令如下:

    adb shell am start -D -n com.itfitness.fitnesslib/com.itfitness.fitnesslib.MainActivity
    

    这里可能会出现如下情况:



    原因是因为模拟器没有和Android Studio的adb建立连接,可以使用如下命令进行连接:

    adb connect 127.0.0.1:21503
    

    这里附上各种模拟器的端口号



    执行完命令后我这里已经显示连接成功了



    接下来继续执行adb调试命令
    adb shell am start -D -n com.itfitness.fitnesslib/com.itfitness.fitnesslib.MainActivity
    

    如下情况表示执行命令成功




    接下来在Android Studio中点击右上角的Debug图标



    这时出现如下界面,然后选择你的目标进程点击ok

    如果找不到目标进程的话可以勾选Show all processes

    点击完Ok之后就可以愉快的进行断点调试了:


    相关文章

      网友评论

        本文标题:Android逆向破解:使用Android Studio调试反编

        本文链接:https://www.haomeiwen.com/subject/vldvwktx.html