解决ida7.5在android10环境下无法debug调试的pacth文件

查看 65|回复 10
作者:快乐的小跳蛙   
出现的错误:
jdb -connect com.sun.jdi.SocketAttach:hostname=127.0.0.1,port=8608
java.io.IOException
        at com.sun.tools.jdi.VirtualMachineManagerImpl.createVirtualMachine(VirtualMachineManagerImpl.java:234)
        at com.sun.tools.jdi.VirtualMachineManagerImpl.createVirtualMachine(VirtualMachineManagerImpl.java:241)
        at com.sun.tools.jdi.GenericAttachingConnector.attach(GenericAttachingConnector.java:117)
        at com.sun.tools.jdi.SocketAttachingConnector.attach(SocketAttachingConnector.java:90)
        at com.sun.tools.example.debug.tty.VMConnection.attachTarget(VMConnection.java:519)
        at com.sun.tools.example.debug.tty.VMConnection.open(VMConnection.java:328)
        at com.sun.tools.example.debug.tty.Env.init(Env.java:63)
        at com.sun.tools.example.debug.tty.TTY.main(TTY.java:1066)
致命错误:
无法附加到目标 VM。
错误原因:
在使用IDA在android10环境下debug启动apk调试so文件时,会出现这样的错误,这是由于android10的libc文件不在/system/lib/libc.so目录下,
而是在/apex/com.android.runtime/lib/bionic/libc.so目录下,由于android_server在判断是否加载libc的逻辑中失败,所以无法调试。
解决办法:
方法1,让android_server程序判断找到libc即可,我这里采用的时patch原先的libc路径为/apex/com.android.runtime/lib/bionic/libc.so和/apex/com.android.runtime/lib64/bionic/libc.so
方法2,当然还是可以指定glibc的路径来解决
export IDA_LIBC_PATH=/apex/com.android.runtime/lib/bionic/libc.so
export IDA_LIBC_PATH=/apex/com.android.runtime/lib64/bionic/libc.so
方法3,修改android判断libc的逻辑
我觉得每次启动android_server都要指定libc加载路径过于繁琐,所以直接使用方法1比较稳妥。
成品在此连接中:
链接: https://pan.baidu.com/s/1I1FlHHUGT5aPEmjtPcP22Q?pwd=cu9f 提取码: cu9f 复制这段内容后打开百度网盘手机App,操作更方便哦
这是修改ida7.5的版本,其他ida版本未测试是否可以使用
效果展示;

参考链接:
https://bbs.kanxue.com/thread-258103.htm

微软, 这是

旧年白白白   


debug_cat 发表于 2024-8-2 11:07
怪不得,我在mac上面7.0上面一直失败,原来我用手机是12,13系统的。应该也是这个问题。但是在家里7.7的用13 ...

附加后直接IDA去把linker64里面的__dl_notify_gdb_of_load 函数中两个 BL              rtld_db_dlactivity
给NOP掉也可以
debug_cat   

怪不得,我在mac上面7.0上面一直失败,原来我用手机是12,13系统的。应该也是这个问题。但是在家里7.7的用13系统就可以。一直都不知道怎么回事。
看来7.0版本还是用10以下的手机比较稳妥。
快乐的小跳蛙
OP
  

附送一份ddms提取版:链接: https://pan.baidu.com/s/1sRidJFRS2bw64Au2K6GbcQ?pwd=2kvx 提取码: 2kvx 复制这段内容后打开百度网盘手机App,操作更方便哦
wasm2023   

学习了,感谢分享
QQQQQQQQQQQ   

感谢分享
Gao20   

感谢分享
EUV996   

及时,非常感谢
小猫猫   

非常感谢
sanmylc   

收藏了 铁拳痛击sun 每次看到throw io错误 调不动 根本调不动
您需要登录后才可以回帖 登录 | 立即注册

返回顶部