一、恢复方法符号表
1.获取已经砸壳后的app
恢复符号表需要可执行文件为单一架构, 需要使用如下命令
查看是否是fat的文件(切换到当前可执行文件对应下的目录):
lipo -info Aweme
如果是fat的文件,那么执行下方命令进行瘦身, 这里使用抖音为例, 得到arm64架构的可执行文件:
lipo Aweme -thin arm64 -output Aweme_arm64
这里就得到了可以进行恢复符号表的可执行文件了
2.使用工具恢复
想要恢复符号表,需要使用工具 restore-symbol
打开对应链接查看使用方法,有详细的命令教程,这里就不copy了
这里说下,因为我自己已经重签名过了,这里我就只执行了两步骤.
当执行当前命令时,会在你终端所打开的位置创建对应的项目,可以提前cd到想存放的位置,在执行命
./restore-symbol /pathto/origin_mach_o_file -o /pathto/mach_o_with_symbol
关于命令的解释
/pathto/origin_mach_o_file
是在第一步得到的Aweme_arm64可执行文件的路径 /pathto/mach_o_with_symbol
是执行符号恢复后保存的文件及存储路径
二、恢复block符号表
完成上面步骤只初步恢复了相关的方法,恢复block对应的需要额外操作
这里同样使用restore-symbol,命令参考文档
需要用到的python命令文件获取地址
在ida中执行 python文件命令方式 点击 「file -> Script file」然后根据路径选择所要执行的python文件即可
这里需要注意,如果终端被关掉 ,需要重新执行命令
./restore-symbol
这里就全部执行完了,得到可执行文件Aweme_block
参考文章:http://blog.imjun.net/posts/restore-symbol-of-iOS-app/