根据规范,ELF 文件格式只能包含文件头,而不包含节头。我有一些(VMProtect 之后的 ELF)。我可以以某种方式添加节标题吗 - 我需要将我的 .note 信息写入此文件,但我不能这样做,因为节已被 VMProtect 剥离。 objcopy --add-section 失败。
您可以尝试通过使用十六进制编辑器修改文件来手动添加节标题(例如 imhex;对 elf 使用模式文件:文件 -> 导入 -> 模式文件 -> elf)。问题可能是该文件不包含节标题,并且
objcopy
在创建第一个节标题时出现问题。我还没有对此进行测试,但如果您以包含某些节标题的方式修改文件,objcopy 可能不会抱怨使用 --add-section
。
您感兴趣的 ELF file 标头字段:
以下内容应该或多或少有效:
然后,使用
objcopy --add-section
添加您的部分。
有关更多信息,请参阅从第 4 页开始的链接器和库指南。 187. elf格式的定义在
/usr/include/elf.h
(你可能需要安装一些额外的包)