用途:ipsw 是用于 Apple 固件与二进制分析的命令行工具,涵盖固件查找、下载、解包、dyld 共享缓存、内核、Mach-O、沙盒、权限、差分和崩溃符号化等任务。
安装与使用:brew install blacktop/tap/ipsw,其他平台见 github.com/blacktop/ipsw releases。用 ipsw version 查看版本,ipsw <group> <command> --help 查看参数。远程与下载命令需要联网;idev 需要 USB 连接设备。
主要能力:--remote 可先远程读取(info、extract --kernel、fw 等)避免下载 10–15 GB 整包;dyld a2s/disass/xref 分析共享缓存;kernel 查看符号、C++ 类、syscall、KEXT;class-dump/swift-dump 导出私有框架接口;macho info/disass/search 分析独立二进制;ent 搜索权限;sb 分析沙盒;diff 比较两次构建;symbolicate 处理崩溃与 panic。
使用要点:命令行必须显式指定选择,非终端环境需 --confirm;同名 dylib 需传完整安装路径;胖 Mach-O 加 --arch arm64e;多设备 IPSW 加 --device。大输出用 --json | jq 或 -o 写入文件。ipsw mount 需加 --detach,idev syslog 需 -t 指定秒数。首次 dyld 反汇编会构建约 1.5 GB 缓存,sb graph export 约 30 秒并写约 500 MB,appledb 首次克隆约 600 MB。输出结果应交叉验证后再报告。
限制:命令与参数在不同版本间有变化,3.1.725 及更早版本存在提示跳过、退出码不准确等差异,须参考官方 Older releases 表处理;部分命令在 --help 中标记 🚧 表示开发中。本资料未提供内置收费、平台扩展等信息。