JEB Decomplier 是一个专门用于反编译 Android 应用程序的工具,它能够将 Android 应用程序的 DEX 文件反编译成可读的 Java 源代码。以下是使用JEB Decomplier调试Android应用程序的详细步骤。
调试器是附加到现有代码单元的特殊模块。它们不会生成额外的单元;相反,它们提供专门的操作,可通过UI 客户端中的调试器菜单以图形方式访问。
1、可用性
JEB 附带了以下调试器:
- Android DEX 字节码:调试器实现 JDWP
- 机器代码(x86/x86-64、ARM/ARM64、MIPS 等):调试器实现 gdb/lldb 协议
- 2、附加到目标
- 打开代表要调试的代码单元的代码视图。
- 执行调试器,启动...
- 指定目标(例如机器/进程、主机名/端口等)和调试选项
- 单击附加
根据您的目标应用程序,将创建一个或多个调试器单元。
3、Dalvik 调试
JEB 支持调试 Dalvik 代码。
4、远程调试
JEB通过其gdb/lldb调试客户端模块支持调试本机代码。在目标上设置gdbserver(或 lldb-server)后,指定主机名和端口以调试x86、arm 和 mips代码。
5、视图
UI 客户端还将自动打开代表调试器单元的视图。这些视图包括:
- 线程
- 断点
- 局部变量和寄存器
- 内存和现场拆卸(如果适用)
- 当前堆栈(如果适用)
- 日志视图
您可能需要切换到自定义布局以更好地容纳这些附加视图。上图显示了 Android 应用正在进行的调试会话。使用自定义布局:
- 字节码调试器视图位于右上象限
- 进程代码调试器视图位于右下象限
还可以看到断点以及即将执行的代码行。
6、基本命令
可以从调试器菜单访问基本命令。
- 断开或重新启动调试会话
- 暂停、恢复或终止目标
- 暂停或恢复线程
- 设置断点
- 逐步执行(进入、结束或退出例程)
- 在调试会话处于活动状态时,将动态代码单元添加到调试器(例如,将 dex 单元添加到 dalvik 调试器,将本机代码单元添加到本机调试器)。当在开始分析后检索代码对象并需要将其添加到项目时,这很有用。
您还可以通过将鼠标悬停在代表变量和寄存器的项目上来检查它们的实时值。
7、高级命令
高级调试命令可通过控制台视图使用。此视图链接到当前关注单元提供的命令解释器。调试器提供命令解释器来执行高级任务,例如:
- 在记忆中寻找模式
- 检查物体
- 创建对象或调用方法
- 特定于给定调试器的自定义任务,无法由 UI 客户端通用表示
以上就是JEB Decomplier调试Android应用程序的相关内容。通过以上步骤,你可以使用JEB Decomplier轻松调试Android应用程序,并进行深入的静态和动态分析。