一:使用mprop文件为手机开启调试模式(手机需要root)
将下载好的mprop文件复制到手机 /data/local/tmp文件夹中,选择好手机系统对应的版本
adb (-s device_serial 有多台设备连接时使用) push "mprop文件在电脑中的路径" /data/local/tmp
修改mprop文件权限
adb shell
su
cd /data/local/tmp
chmod 777 mprop
./mprop ro.debuggable 1
stop
二:IDA动态调试
- 将IDA目录下的android_server文件复制到手机中的/data/local/tmp目录中
adb push "C:\Program Files\IDA 7.0\dbgsrv\android_server" /data/local/tmp
- 进入手机/data/local/tmp目录中,修改文件权限
adb shell su cd /data/local/tmp chmod 777 android_server
-
启动android_server(可将android_server文件修改下名字,以防被要调试的程序检测到)
./android_server
-
开启端口转发
adb forward tcp:pc_port tcp:mobile_port 如有多个设备连接电脑则用 adb -s serial_no forward tcp:pc_port tcp:mobile_port
-
IDA调试端口设置
Debugger-->Process Option --> Hostname:localhost Port:port
-
程序以调试模式启动
adb shell (-s serial_no) am start -D -n packagename/activityName
-
IDA挂接
Debugger-->Attach to Process
-
cmd命令中打开monitor
-
恢复程序运行jdb connect
jdb -connect com.sun.jdi.SocketAttach:hostname=127.0.0.1,port=8700