1.
https://www.jianshu.com/p/b7112ac60859
https://www.jianshu.com/p/c33db8e95e6d
https://github.com/DanTheMan827/ios-app-signer
2.脱壳
https://www.jianshu.com/p/979fe886e28e
前期准备
-
一台Mac
-
一台iPhone
frida-ios-dump
用于脱壳,脱壳是逆向的第一步。直接AppStore上下载的应用都有带壳,导致我们无法对他进行任何操作。脱壳的ipa文件,也可以直接去一些越狱商店下载,但是可能版本上比较旧。
如果有一台已越狱的机器,按照frida-ios-dump的wiki来操作很简单。
Hopper Disassembler
Hopper Disassembler是Mac上的一款二进制反汇编器,基本上满足了工作上的反汇编的需要,包括伪代码以及控制流图(Control Flow Graph),支持ARM指令集并针对Objective-C的做了优化。
class-dump
class-dump是一款可以导出头文件的命令行工具,改程序用于检查Objective-C运行时信息存储在Mach-O文件,它生成类的声明,类别和协议。
class-dump -H XXX.app -o /DumpHeaderClass
-
-H后跟的是脱壳后的app文件路径
-
-o是头文件输出的文件夹路径
MonkeyDev
MonkeyDev的前身是iOSOpenDev,在iOSOpenDev的基础上增加CaptainHook Tweak、Logos Tweak、Command-line Tool。
MonkeyDev为我们做的事情:
-
创建dylib,通过hook修改类的属性或方法
-
将dylib注入到App中
-
重签名ipa文件
https://github.com/AYJk/AYTikTokPod
https://www.itcodemonkey.com/article/12699.html
https://www.52pojie.cn/thread-837108-1-1.html?tdsourcetag=s_pcqq_aiomsg
https://mryulong.github.io/2019/08/21/iOS-%E9%80%86%E5%90%91%E4%BA%8C%E4%B8%89%E4%BA%8B/
成功
https://www.github.com/MrYulong/TikTokMonkeyApp
LLVM Profile Error: Failed to write file "default.profraw": Operation not permitted
3.越狱tweak