1.调试准备
在IDA目录下的dbgsrv目录下找到android_server。有点类似gdbserver,操作也是类似;
adb remount
adb push android_server /system/bin
adb shell chmod 755 /system/bin/android_server
adb shell android_server
adb forward tcp:23946 tcp:23946
2.IDA-attach
模拟器里启动要调试的APP
启动IDA,打开debugger->attach->remote Armlinux/andoid debugger
debugger->process options
填写hostname为127.0.0.1或localhost(推荐),端口确定为23946或你自定义转发的端口,其他默认,点击确定
attach to process
弹出Choose process to attach to窗口,找到app的进程名,点击ok,等待分析后即可进入调试界面
问题分析:为什么会断在libc.so中
问题解决:
android系统中libc是c层中最基本的函数库,libc中封装了io、文件、socket等基本系统调用。所有上层的调用都需要经过libc封装层。所以libc.so是最基本的,所以会断在这里,而且我们还需