1

在反转 x86 二进制文件时,我已经能够使用我的本地主机 (x86_64) 库在 Cutter (radare2) 中运行调试器。尝试调试 arm 二进制文件时,我将如何做这样的事情?如何让切割机使用 libc.so 代替我的本地主机,以便我可以调试?

4

1 回答 1

4

环境

  • Cutter:版本 1.10.0,使用 r2-4.1.1,基于 Qt 5.12.1(GCC 7.4.0,64 位)
  • 系统: Ubuntu 18.04.3 LTS

解决方案

  • 注意:截至 Cutter v1.10.0 调试仍处于测试阶段,因此这些结果可能会随着时间的推移而变化。

debug_is_beta

  • 选项 1:利用 Cutter 的仿真功能而不是调试。
  • 选项 2:将 Cutter 连接到远程会话。

例子

选项1

使用目标 ARM 二进制文件打开 Cutter 并查找主函数。

seek_to_main

从调试菜单中选择“开始仿真”。

调试菜单

像调试一样设置断点/步骤/继续。

debug_like_normal

选项 2

使用目标 ARM 二进制文件打开 Cutter 并查找主函数。

seek_to_main

启动目标 ARM 二进制文件的远程会话。

user@host:~$ qemu-arm -g 5000 test.x

从“调试”菜单中选择“连接到远程调试器”。

调试菜单

以远程调试器为目标。

远程配置

像往常一样设置断点/步骤/继续。

debug_like_normal

于 2020-01-22T15:38:30.707 回答