MP1*_*P13 2 debugging assembly gdb reverse-engineering radare2
我应该使用 GDB 还是 Radare2 来反转可执行文件(我是初学者)?我尝试用 C 编程,但出现了 SegFault。我想对其进行逆向工程以获得装配经验并查看我在哪里获得 SegFault。
为了调试您自己从源代码构建的可执行文件,GDB 旨在用作调试器。layout reg如果查看 C 变量没有帮助,您可以使用反汇编 + 寄存器视图来帮助理解段错误。
来自编译的调试信息gcc -g意味着您不需要对任何东西进行逆向工程,只需使用普通的调试器。但是要获得 asm 的经验,同时使用调试器(源视图和 asm 视图)可以帮助您了解编译器如何使用某些 asm 指令来实现每个 C 语句。所以你肯定想要一个可以利用调试信息的调试器。有一些 GUI GDB 前端,例如https://www.gdbgui.com,它们比命令行 GDB 更易于使用。
但另请参阅如何从 GCC/clang 程序集输出中去除“噪音”?有关查看 C 如何编译为 asm 的更多信息。
我没用过radare2。我认为它具有适用于没有源代码的有意混淆的可执行文件的功能,这与您使用普通编译器编译自己的 C 程序所具有的功能相反。
| 归档时间: |
|
| 查看次数: |
1855 次 |
| 最近记录: |