反汇编后在 ELF 文件中进行更改

逆向工程 拆卸 小精灵 十六进制
2021-06-20 07:59:59

我是逆向工程的新手,经过一些研究,我还没有找到做我想做的事情的明确方法。

我有一个 ELF 文件,但没有生成它的原始源代码。这真的很简单,只是打印一些数字。我想对它打印的数字范围做一个小的改变。我已经拆开它并找出必须进行更改的位置,但我不确定如何进行此更改。

有没有办法编辑反汇编代码并仍然生成可执行文件?或者我应该找出十六进制文件中我想要更改的相应信息并使用十六进制编辑器?

1个回答

由于问题中没有提供有关二进制文件的详细信息,因此只能给出一般性答案。听起来您正在尝试静态修改可执行的 ELF 二进制文件。这也称为修补这与动态修改或程序运行时检测不同。

工具和示例

可用于修补工具包括gdbradare2的ERESI套件xxdhexedit

雷达2

使用radare2在linux中修补精灵二进制文件

教程 1 - 简单补丁

使用 r2 修复二进制文件中的错误

广交会

使用 gdb 修改二进制

使用 GDB 修改可执行文件

xxd

执行反向十六进制转储

十六进制

修改 Linux ELF 二进制文件 - 更改 Callq 地址

类似问题:

如何更改 esp 中的值?

如何向现有的二进制可执行文件添加功能?

静态修改 ELF 可执行文件的可用库有哪些?