编程语言
- C/C++:理解内存管理、指针、函数调用约定
- Objective-C:macOS/iOS 原生开发语言,熟悉 Runtime 机制
- Swift:现代苹果生态语言,需掌握 SIL(Swift Intermediate Language)
- 汇编语言:x86_64 和 ARM64 指令集(M1/M2 芯片为 ARM 架构)
操作系统原理
- macOS 内核(XNU)架构
- Mach-O 二进制文件格式
- 动态链接机制(dyld、LC_LOAD_DYLIB)
- 系统安全机制(代码签名、SIP、AMFI、TCC)
工具链
- 反编译工具:Hopper Disassembler、IDA Pro、Ghidra
- 调试工具:LLDB、Xcode Instruments
- 动态分析工具:Dtrace、Frida、class-dump
- 二进制修改工具:Hex Fiend、MachOView
静态分析
- 使用 otool、nm 分析 Mach-O 文件结构
- 通过 strings 提取二进制中的明文信息
- 反编译关键函数(如许可证验证逻辑)
动态调试