IDA调试模式

IDA调试模式

请添加图片描述

1.在IDA安装目录找到dbgsrv目录下的 android_server

2.讲android_server文件放置手机/data/local/tmp下

​    adb  push 文件拖进来 /data/local/tmp 

​	并授权 chomd 777  android_server

3.CMD窗口,运行./android_server

​	或指定端口方式  ./android_server  -p 端口 (默认端口23946

4.adb forward tcp:端口号 tcp;:端口号

​	默认 :adb forward tcp:23946 tcp:23946
​	(注:Android Studio 断点调试为 adb forward tcp:8700 jdwp:程序进程 且在调试模式启动之后)

5.打开DDMS:观察程序的端口号

6.调试模式启动

   adb shell am start -D -n包名/类名

7.IDA里面勾选三项

​ 1》打开ida,选择debugger-第二项-Remote ARMlinux(第四项)

​ 2》添加hostname和portt :

	hostname:主机号《默认127.0.0.1)

	port:端口号(之前android_server运行时的端口号)

​ 3》出来进程列表:选择要调试的程序(可以ctrl+f,搜索包名)

​ 4》进来后,勾选三项: debugger/options(倒数第二项)

​ Suspend on process entry point程序入口点断下

​ Suspend on thread start/exitE程的退出或启动断下

​ Suspend on library load/unload库的加载和卸载断下

8.挂载程序

jdb -connect com.sun.jdi.SocketAttach:hostname=127.0.0.1,port=端号

​ 该挂载端口为 程序启动端口,非IDA启动端口,可以用DDMS查看。

9.可以直接在这里F9(左上角有一个三角形)运行程序

10.真机调试时,需要开启调试模式。

adb shell下执行命令getprop ro.debuggable
值如果为0就需要改成1

adb shell #adb进入命令行模式
su #切换至超级用户
magisk resetprop ro.debuggable 1
stop;start; #一定要通过该方式重启

猜你喜欢

转载自blog.csdn.net/qq_41369057/article/details/131242678