1. 生成可执行程序
-
下载源码编译
git clone --recursive https://github.com/tobefuturer/restore-symbol.git cd restore-symbol && make ./restore-symbol
-
恢复符号表
./restore-symbol ./xxx -o ./xxx_symbol
替换 MachO
2. 恢复 block
利用 ida 执行 block 提取脚本, 生成恢复 block 的 block.json
文件, 然后将 block.json
恢复到 MachO 中.
ida 提取 block
用 ida 打开目标 MachO 文件,ida file -> script file
选择下载好的脚本, 执行脚本, 等待生成的 .json 文件.-
恢复 block
./restore-symbol xxx -o xxx -j block_symbol.json
接下来可以用恢复符号表的 MachO 文件替换原来的, 然后再运行起来, 一边🍺🍺🍺🍺🍺🍺, 一边查看OC 方法调用栈!