IDA 动态调试详细介绍
#
IDA
动态调试要求apk
的debuggable
属性为true
或者安卓系统的ro.debuggable
的值为1
- 开启
anroid_server
#
apk
进入debug
模式设置
apk
可调试,参考上一篇文章:http://blog.wen2go.site/2022/04/02/20220402/在
AndroidManifest.xml
查看包名,manifest
标签package
属性的值在
AndroidManifest.xml
查看activity
, 找到包含android.intent.action.MAIN
的activity
输入下面指令,进入
debug
adb shell am start -D -n com.sohu.newsclient/com.sohu.newsclient.boot.activity.SplashActivity
# 开启
android_server
并转发端口android_serve
r 在ida
安装目录的dbgsrv
下,找到自己的对应的版本推送到手机里,跟frida_server
差不多adb push android_server64 /data/local/tmp # 推送到手机 tmp 目录下
adb shell
su
cd /data/local/tmp
chmod 777 android_server64 # 添加执行权限
./android_server64 # 开启 server
重新打开一个终端,转发端口
adb forward tcp:23946 tcp:23946
# 打开
ida pro
,动态调试- 选择 anroid_debugger
输入
127.0.0.1
然后点击Debug_options
勾选以下配置,具体咱也不知道为啥这样选😢,希望大佬告诉我
点击
ok
,然后跳转到选择进程界面,通过search
搜索进程名点击
ok
,等待几秒进去 debug 界面然后打开终端,输入下面指令,让
app
继续执行jdb -connect com.sun.jdi.SocketAttach:hostname=127.0.0.1,port=8700
如果出现以下错误,打开
ddms
,然后再执行上面指令即可
# 然后就可以愉快的调试了
本篇文章主要是达到可以动态调试的目的,如果有兴趣可以加我好友一起学习研究😁