2

我有一个 ELF 可执行文件,我想知道如何修改它的 .rodata 段。

此外,更一般地说,我如何修改 ELF 可执行文件?

4

1 回答 1

1

如果您确切知道需要修改 ELF 的哪个部分,则可以使用任何 hexeditor 来执行此操作。

如果您想解析 ELF 并执行更复杂的逻辑,您应该编写一些可以打开文件或更好的代码,mmap 它。然后您可以阅读 ELF 标头,它提供有关 ELF 的基本信息并指向 ELF 中的其他重要位置。我建议阅读 ELF 和<include/elf.h>.

如果您使用的是 Linux,您可以使用 readelf 或 objdump 查看节在内存中的位置。

于 2013-04-07T21:14:00.017 回答