Dwarf:基于PyQt5和frida的强大全功能arch/os逆向工程调试器

Dwarf介绍

Dwarf是一个逆向工程调试器,建立在各种框架和逻辑之上。一开始,它只是一个实验,主要在Android上运行而设计的,但随着发展,由于它们共享同一个核心,因此可以轻松添加对iOS的支持。如今,主要得益于社区的努力以及开源是道路(当然还有frida的力量),Dwarf可以在任何操作系统上调试逆向工程(感谢PyQt的)。类似的还有有radare2等。

Dwarf:基于PyQt5和frida的强大全功能arch/os逆向工程调试器
Dwarf界面

功能

  • Android应用程序存储和反编译
  • 与用户界面交换数据的API
  • 回溯
  • 断点solib初始化(android)
  • 社区中准备在运行时注入的脚本集合
  • 用汇编补丁程序分解视图
  • 带步骤的仿真器,动态映射范围从目标和第一个操作数突出显示
  • 导出、导入、符号、范围
  • 用通配符查找符号和字节
  • HAX0R用户界面
  • 带字节/字符串修补程序、指针跳转、快速断点等的十六进制视图。
  • 带frida更新程序和远程启动/停止的应用内更新程序
  • JVM资源管理器/ Java端调试(Android)
  • 接受frida和dwarf API的javascript代码注入器
  • 接受frida和dwarf API的javascript控制台
  • 内核支持(DWARF LKM)
  • 单个断点逻辑和条件
  • 内存转储和检查器
  • 用于读写访问的内存观察程序
  • python控制台
  • 具有递归值的寄存器
  • 单线程断点
  • 单线程Java断点(Android)
  • 单线程跟踪
  • 在多个线程之间切换
  • 更多
  • 所有这些都可以通过脚本来完成,以构建自定义调试逻辑

Dwarf安装

依赖

全局frida服务

ANDROID会话

  • 确保您可以在控制台中使用'adb'命令或在此处阅读
  • 设备/模拟器上的root是必需的!
  • 确保frida在/system/bin中xbin具有+ x权限或最终使用Dwarf自动安装最新的frida服务器

下载并运行

可选

您可以安装keystone-engine来启用汇编程序:

dex2jar工具(baksmali /反编译所需)

设置

你可以改变.dwarf