iOS逆向--恢复Mach-O文件的符号表(symbol)

在逆向项目时候, 很重要的一环是需要查看符号表, 通过查看符号表我们能找到想要的方法, 从而对其实现有效的hook, 然而很多第三方App的符号表显示的都是乱码, 这就会阻滞我们的脚步, 下面就讲述如何恢复符号表:

1. 下载restore-symbol : https://github.com/tobefuturer/restore-symbol

恢复符号表, 我们这里要借助第三方项目 restore-symbol

Snip20180520_3.png

2. 生成 restore-symbol 项目 mach-o 文件

cd 到 restore-symbol 路径下, 通过下列命令生成mach-o :

make restore-symbol

Snip20180520_5.png

3. 生成目标文件单一架构的 mach-o

将目标项目的mach-o文件拷贝至 restore-symbol 文件夹路径下, 使用下列命令:

lipo WeChat -thin arm64 -output WeChat_arm64

Snip20180520_6.png

4. 恢复mach-o文件的符号表

通过命令:

./restore-symbol WeChat_arm64 -o WeiChat

Snip20180520_7.png

5. 将target 的 app中的mach-o 替换掉

注意: 替换后的mach-o名称一定要和原app包内容中mach-o文件名一致

再次运行进入断点就可以看到符号表了

Snip20180520_9.png

希望对大家有帮助......

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容