首页
课程
招聘
安卓X86模拟器无法调试native code

描述一下我的环境

  • 官方安卓模拟器, X86 image, 安卓11的系统
  • IDA 7.5
  • 本机环境Windows10

把android_x86_server用adb push到安卓模拟器, 然后启动一个demo应用, adb forward转发23946端口. IDA 用 remote linux debugger 连到安卓模拟器.

 

奇怪的事情就发生了

  • 正常的暂停程序和恢复程序一切正常. 程序可以被暂停也可以恢复运行, 但是不管什么时候按下暂停程序, IP寄存器总是停在同一个位置.

  • 虽然IP寄存器不管在什么时候暂停都会停在同一个位置, 但是如果在IP的位置下一行设置一个断点再恢复程序运行, 程序马上就会跳到断点上.

  • 设置完断点, 执行到断点程序停住之后, 再点击恢复程序运行就不行了, 一直收到 SIGSEGV 的段错误 (一条指令会尝试去取 0x00 的地址导致的 )

收藏
0条回答