IDA调试so

IDA调试so

  • 环境配置
  • 一台 root 的手机,与电脑在同一局域网
  • IDA 7.0
  • Android 环境
  • 准备工作
  1. 将IDA pro 目录下的\dbgsrv\android_server 上传到手机 /data/local/tmp 目录下。
    adb push D:\Program Files\IDA 7.0\dbgsrv\android_server  /data/local/tmp
    
  2. 修改权限
    将android_server修改成可执行文件
    C:\Users\Jeqee>adb root
    C:\Users\Jeqee>adb remount
    remount succeeded
    C:\Users\Jeqee>adb shell
    root@cancro:/ # cd data/local/tmp    
    127|root@cancro:/data/local/tmp # chmod 777 android_server
    root@cancro:/data/local/tmp # ls -l    
    -rwxrwxrwx root     root       589588 2017-09-14 15:08 android_server
    
  • 开始调试
    手机上打开要调试的目标app。
  1. 执行./android_server

    image.png

    这个cmd窗口不要关闭。

  2. 端口转发
    另外打开一个cmd窗口,执行 adb forward tcp:23946 tcp:23946

    image.png

  1. 打开 IDA 进行调试
  • 打开用管理员身份打开IDA。

  • IDA quick start界面选择 Go


    image.png
  • Attach手机
    Debugger -> Accach ->Remote ARMLinux/Android debugger

image.png

输入手机IP,端口号默认

image.png

OK之后,选择调试的进程
image.png

这里可以使用快捷键 Ctrl+F 搜索。

  • Modules窗口中选择模块
    选择需要调试的so。
    image.png

图中,Base一栏是so的基地址。
双击点击需要调试的so,进入so内部,找到需要调试的方法,按F2断点

image.png

然后就可以开始愉快地调试了。

  • 快速定位地址
    通过静态方式打开so,红框中的都是相对地址,动态调试时,基地址 + 相对地址 = 实际地址,快捷键 G,输入实际地址,就可以快速定位。
    image.png

AF048000 + 1C144 = AF067144

image.png

快捷键 G


image.png

剩下的需要继续摸索。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容