jadx动态调试

jadx是目前最常用的逆向反编译工具,其新出的功能动态调试,能调试smali代码(需要一定的smali代码阅读功底),实时获取apk中的寄存器值,针对一些复杂的代码,可以使用动态调试的方式帮助我们分析。相较于frida、xposed等hook工具,动态调试不需要设备root和安装各种调试工具,比较简单。

安装最新版的jadx:Release 1.4.7 · skylot/jadx (github.com)

1、先决条件

安卓设备开启usb调试,被调试的app 在manifest开启debuggabel = true。

2、调试

将待调试的apk安装在安卓手机上,且丢入jadx逆向分析。之后开启调试功能

点击启动adb服务,之后等待adb启动完成后点击刷新,出现usb设备,点击启动app,此时app进入待调试阶段。

app显示waiting for debugger

双击待调试的进程

可通过步入、跳过、运行等方式进行调试。

  • F2 设置/删除断点

  • F7 步入

  • F8 跨步跳过

  • Shift + F8 跳出去

  • F9 运行

若报错:jdwp handshake failed

是因为jdwp端口号的问题,可以看看8700端口是否被占用了,类似于Android stuido就会占用该端口。

  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值