【发布时间】:2012-09-26 20:21:13
【问题描述】:
我需要将 mach-o 二进制文件中函数的引用更改为我自己的 dylib 中定义的自定义函数。我现在遵循的过程是,
将对旧函数的引用替换为新函数。例如
_fopen到_mopen使用 sed。我打开MachOView 中的mach-o 二进制文件以查找我要更改的实体的地址。然后我使用十六进制编辑器手动更改二进制文件中的信息。
有没有一种方法可以使这个过程自动化,即编写一个程序来读取符号和动态加载信息,然后在可执行文件中更改它们。我正在查看/usr/include/mach-o 的 mach-o 头文件,但我不完全确定如何使用它们来获取这些信息。是否存在任何库 - C 或 python 可以帮助做同样的事情?
【问题讨论】: