IDA pro动态调试dex文件

本文档详细介绍了如何使用IDApro7.5动态调试Android的DEX文件。首先,需将androidserver发送到手机并设置权限,然后启动调试。调试过程中,加载APK的DEX,配置调试器选项和端口,最后启动调试。注意无需端口转发,调试时可能需关闭DDMS以解决异常。在调试中可能遇到端口占用问题,调整端口后继续调试。


前言

此篇博文仅仅记录下本人学习 IDA pro 动态调试dex文件步骤。

工具:IDA pro 7.5

书籍:《android软件安全权威指南》

一、启动android server

  • 进入 [安装路径]\dbgsrv\dbgsrv 目录,将对应android版本的 android serverandroid server64发到手机 /data/local/tmp/ 目录,并设置可执行权限,运行。(建议android serverandroid server64都发送,避免某些apk只有32位或64位so包。)

    # 同理,将android server64同样设置
    adb push [安装路径]\dbgsrv\android_server /data/local/tmp/
    adb shell
    su
    chmod 777 /data/local/tmp/android_server 
    ./data/local/tmp/android_server  # 启动
    
  • 此处和调试so文件不同,不需要设置端口转发,调试方式启动APK,启动DDMS。。。。

二、调试步骤

  1. 首先,IDA 加载APK文件,选择dex(由于某些APK由于性能原因会分成多个dex,建议在调试时先通过反编译和回编译等方式添加 android:debuggable="true",重新打包APK,新APK仅包含一个DEX,当然也可以直接使用工具合并)

    在这里插入图片描述

    在这里插入图片描述

  2. 单击菜单项 DebuggerDebugger options, 打开调试器设置窗口(如果需要分析的程序在启动后停在入口处, 可以勾选Suspend on process entry point”复选框),然后点击 Set specific options

    在这里插入图片描述

    在这里插入图片描述

  3. 点击:Debugger=>Process options,设置端口。

    在这里插入图片描述

  4. 点击:Debugger=>Start Process(或按F9),启动动态调试。

    在这里插入图片描述

三、注意事项

  • 不用设置端口转发。
  • 调试DEX,由于启动了DDMS,在第4步启动调试时出现各种异常,关闭DDMS后就可以启动调试了。
    1. 8700端口被占用。修改为8701后,又出现了异常2.
    2. The file can't be loaded by the debugger plugin. Please verify that the parameters are valid.
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值