Loading

安卓动调

调试前先在XML文件修改调试权限为true。

image-20260503180840362

IDA调试SO文件

根据手机和 .so文件的位数选择合适的IDA服务文件(在IDA安装目录的 dbgsrv 目录中),将其推送至手机根目录 data/local/tmp 下,可以重命名为好记的名字(如ass),更改权限为 777。

image-20260730161205008

找到目标程序的 PID:

adb shell pidof 包名

运行安卓端的调试程序:

adb shell
su
cd data/local/tmp
./ass32

会出现下图,则说明在监听端口 23946,服务端成功运行。

IDA Android 32-bit remote debug server(ST) v9.0.30. Hex-Rays (c) 2004-2024
2026-05-03 18:10:51 Listening on 0.0.0.0:23946...

新开一个cmd执行端口转发:

adb forward tcp:23946 tcp:23946

以调试模式运行程序:

adb shell am start -D -n 包名/程序入口名
例:
adb shell am start -D -n com.droider.debugjniso/com.droider.debugjniso.DebugjnisoActivity

出现:

image-20260730161949551

IDA中这样配置即可(只需要手填hostname):

image-20260730161543586

然后attach到调试进程。

这个时候IDA会跳转到一个地方,但此时只是跳转到了类似头文件的东西,还没有正式开始调试。

image-20260730162057483

接着执行以下命令:

直接用命令查看 PID 和 JDWP:

adb shell pidof com.crackme.bbbbutton
adb jdwp

建立调试端口:

adb forward tcp:8615 jdwp:<PID>

连接:

jdb -connect "com.sun.jdi.SocketAttach:hostname=127.0.0.1,port=8615"

再点一下IDA上面的绿色开始调试的按钮即可开始调试。

posted @ 2026-07-30 16:43  2017BeiJiang  阅读(4)  评论(0)    收藏  举报