Author: geneblue
Blog: https://geneblue.github.io/
0X01 基本步骤
这里介绍使用IDA对so文件的动态调试,其他调试工具的使用,以后再做补充。
IDA从6.1版本开始支持Android原生程序的动态调试。
将ida目录下的android_server拷贝到android的目录中
adb push android_server /data/local/tmp/
adb shell 进入模拟器
cd /data/local/tmp/ chmod 755 android_server
./android_server
注意程序的执行必须要在root权限下,不然在attach的时候找不到要附加的so文件
可以看到正在监听端口 23946
端口转发
adb forward tcp:23946 tcp:23946
将pc上端口数据转发到手机的端口
调试前配置
在debugger中选择attach并选择Remote ARMLinux/Android debugger选项,在出现的配置窗口中填上localhost 并选择端口23946
选取so文件
配置完毕后,在出现的文件选择列表中,选取要attach的文件即可。
0X02 注意
使用32位的IDA,64位IDA在连接android_server的时候会出现
incompatible debugging server
的错误哦以root权限运行android_server,不然只能attach上极少的进程