Android IDA 7.0 动态调试攻略

1.准备

a. 下载并安装 IDA 7.0版本

b.下载并安装JDK,因为需要使用jdb命令调试应用。

c.准备已经获得root权限的手机或者模拟器,我使用的是Android 6.0 小米的系统。

2.开始

a. 复制IDA 安装目录下dbgsrv 文件里面的相应的server文件到   手机内存储的 /data/local/tmp 目录下。对于比较新的手机,一般都是arm64的,所以我复制的是android_server64 。如果您对data目录缺少访问权限,需要使用chmod命令添加完全的访问权限。

b. 控制台输入 adb shell su 命令获取管理员权限

c. cd /data/local/tmp 进入server存放目录 ,输入chmod 777 <你拷贝的文件名> 获取执行权限

d.执行ida的server文件。执行方法是:/data/local/tmp/<你拷贝的文件名>

e. 新开一个命令窗口  ,执行 adb forward tcp:23946 tcp:23946   命令 端口转发

f.adb shell am start -D -n  包名/activity路径   启动应用

g.打开IDA64 ,菜单 debugger->attach->Remote ARM Linux/android debugger.

h.设定debug options,如下图所示。

i. 在弹出的进程选择框 选择要调试的进程.

j.手机上的App开始运行后一定要点击IDA 的开始运行按钮。如果有反调试的话,一定要先下断点,不然一运行就崩溃了,一切重新来过。

k.打开DDMS,查看你调试的应用的所用端口,然后执行:

 jdb -connect com.sun.jdi.SocketAttach:hostname=127.0.0.1,port=8700。8700根据具体的实际情况进行修改。

好了。可以开始调试了 F7进入函数,F8单步调试,F9跳到下一个断点,F2下断点,G调到函数地址。

reder to

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言 由于本人使用的是Mac来做开发,并且最近要做逆向相关,苦于网上多数教程都是Win的,没办法只有到处搜集资料和...
    Jafir阅读 10,036评论 2 17
  • Android 调试桥 Android 调试桥 (adb) 是一个通用命令行工具,其允许您与模拟器实例或连接的 A...
    guanjm阅读 5,412评论 0 1
  • 常见Android调试方法简介: 1.IDEA/Android Studio + SmaliIdea插件 可调试s...
    FallMR阅读 7,267评论 0 0
  • 遇见未来的自己 原理: 我们想到未来的自己时,我们的欲望不会像现在一样紧迫,情绪不会像现在一样真切。 方法: 下面...
    懿慧2018阅读 1,579评论 0 0
  • 今天晚上有好好学习グッ!(๑•̀ㅂ•́)و✧,有好好吃饭(*^^)/*。这是好的。但是,不好的是,ZHOUZIX...
    四叶草爱三小只阅读 1,274评论 0 0