Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否可以将可执行部分/段添加到ELF二进制文件?_Elf - Fatal编程技术网

是否可以将可执行部分/段添加到ELF二进制文件?

是否可以将可执行部分/段添加到ELF二进制文件?,elf,Elf,使用objcopy-add-section很容易添加空节。 但是,我希望添加的部分可以像普通的.text部分和可执行文件一样加载。这意味着需要修改段头。有什么建议吗 是否可以将可执行部分/段添加到ELF二进制文件 这在理论上是可能的,但在实践中是不可能的:ELF文件具有复杂的内部结构,这些结构都需要重建 这意味着需要修改段头 修改Phdr表非常简单:它只是一个固定表。但您必须移动其他段,并更新指向这些段的所有内部偏移量,这是最困难的部分。我想还有另一种选择,不确定是否能满足我的期望:在文件末尾添

使用objcopy-add-section很容易添加空节。 但是,我希望添加的部分可以像普通的.text部分和可执行文件一样加载。这意味着需要修改段头。有什么建议吗

是否可以将可执行部分/段添加到ELF二进制文件

这在理论上是可能的,但在实践中是不可能的:ELF文件具有复杂的内部结构,这些结构都需要重建

这意味着需要修改段头


修改Phdr表非常简单:它只是一个固定表。但您必须移动其他段,并更新指向这些段的所有内部偏移量,这是最困难的部分。

我想还有另一种选择,不确定是否能满足我的期望:在文件末尾添加一个新的可执行段,并将现有加载段扩展到新文件末尾的.text段。但是,修补后,无法加载二进制文件。。。不确定是否有其他可能的解决方案?在.text之后移动节和段可能可行,但我需要编写一个工具来调整后面节/段中的所有偏移。