jjzjj

linux - 如何反汇编、修改然后重新组装 Linux 可执行文件?

无论如何,这可以做到吗?我使用了objdump,但这不会产生我所知道的任何汇编程序都可以接受的汇编输出。我希望能够更改可执行文件中的指令,然后再对其进行测试。 最佳答案 我认为没有任何可靠的方法可以做到这一点。机器码格式非常复杂,比汇编文件更复杂。实际上不可能获取已编译的二进制文件(例如,ELF格式)并生成将编译为相同(或足够相似)二进制文件的源汇编程序。要了解这些差异,请将GCC直接编译到汇编器的输出(gcc-S)与objdump在可执行文件上的输出(objdump-D)进行比较。我能想到两个主要的并发症。首先,由于指针偏移等原因

linux - objdump 如何发出 intel 语法

如何告诉objdump以Intel语法而不是默认的AT&T语法发出程序集? 最佳答案 你要找的是-Mintel。如下使用。objdump-Mintel-dprogram_name 关于linux-objdump如何发出intel语法,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/10362630/

linux - objdump 如何发出 intel 语法

如何告诉objdump以Intel语法而不是默认的AT&T语法发出程序集? 最佳答案 你要找的是-Mintel。如下使用。objdump-Mintel-dprogram_name 关于linux-objdump如何发出intel语法,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/10362630/

linux - 如何在 Linux 上检查 ELF 文件的数据部分的内容?

我一直在使用objdump来查看LinuxELF二进制文件中的汇编代码。有时会通过存储在rodata(只读数据)部分中的跳转表进行间接跳转。如何获取objdump或任何其他工具来显示此数据部分的内容?我可以执行程序并在调试器中检查相关地址,但我不想这样做,因为它必须以交互方式完成。理想的答案是确定一个工具,它不仅可以显示内容,还可以让我控制显示格式,就像od一样。 最佳答案 objdump-s-j.rodataexefile提供rodata部分内容的并排十六进制/可打印ASCII转储,例如:Contentsofsection.rod

linux - 如何在 Linux 上检查 ELF 文件的数据部分的内容?

我一直在使用objdump来查看LinuxELF二进制文件中的汇编代码。有时会通过存储在rodata(只读数据)部分中的跳转表进行间接跳转。如何获取objdump或任何其他工具来显示此数据部分的内容?我可以执行程序并在调试器中检查相关地址,但我不想这样做,因为它必须以交互方式完成。理想的答案是确定一个工具,它不仅可以显示内容,还可以让我控制显示格式,就像od一样。 最佳答案 objdump-s-j.rodataexefile提供rodata部分内容的并排十六进制/可打印ASCII转储,例如:Contentsofsection.rod