我已经得到了这个EFL文件,我需要对其进行调试/单步执行。这是一场逆向工程竞赛。我所需要做的就是找出寄存器在特定时间点和特定位置的值。我使用Hopper反汇编程序找出了感兴趣的地址。
问题就在这里。我不知道如何调试ELF文件。这是我第一次在Linux环境中调试。学习如何执行ELF文件本身花了我一段时间。我使用ld-linux.so.2 ./[EFLFILE] [arguments]执行
有没有一种至少可以在进程上附加调试器的方法?我甚至无法使用ps命令找到它。此外,我还听说可以使用远程调试器;在windows机器上运行调试器,并在linux上运行要检查的二进制文件。
有人能帮我实现这一切吗?
发布于 2016-11-08 05:58:59
通常,ELF文件可以按如下方式执行:
$ /path/to/elffile [arguments]要使用GDB调试它,您可以执行以下操作:
$ gdb /path/to/elffile或传递参数:
$ gdb --args /path/to/elffile arguments...在您的案例中:
$ gdb --args ./[EFLFILE] [arguments]然后键入run或simly r并按< Enter >键。键入help以获取有关gdb命令的帮助。
注意:如果您的程序需要一些外部库,那么在运行它之前,您应该定义指向包含这些库的文件夹(export LD_LIBRARY_PATH=/the/path/to/libs)的LD_LIBRARY_PATH。
https://stackoverflow.com/questions/40475223
复制相似问题