用途:在获得授权的渗透测试中,对 iOS 应用进行运行时安全探索,检查钥匙串、文件系统与内存中的敏感数据暴露,绕过 SSL 固定与越狱检测等客户端安全控制,并在无源码情况下评估应用运行时行为。禁止在未明确授权的生产设备上使用,Objection 会修改应用运行时行为并可能触发安全监控。
前置条件:Python 3.10+ 与 pip;安装 Objection(pip install objection)与 Frida(pip install frida-tools);目标 iOS 设备需越狱并运行 Frida server,或使用重打包 IPA 的非越狱设备(objection patchipa 注入 Frida gadget);推荐 macOS 并配合 Xcode、ideviceinstaller;需 USB 连接或网络 Frida server。
主要能力与用法:越狱设备可通过 SSH 启动 frida-server -D,并用 frida-ps -U 验证连接;非越狱设备用 objection patchipa --source target.ipa --codesign-signature 打补丁后以 ideviceinstaller 安装。使用 objection --gadget "com.target.app" explore 附加或启动应用,进入交互式 REPL。可执行 ios keychain dump、ios nsuserdefaults get、sqlite connect 与 sqlite execute query 检查存储;用 ios sslpinning disable 绕过证书固定并配合 Burp Suite 观察流量;用 ios hooking list/search/watch 检查认证类与方法;用 ios jailbreak disable/simulate、memory list modules、memory search 与 memory dump 评估二进制保护;用 ios info binary、ios bundles list_frameworks、ios pasteboard monitor 检查平台交互。
限制与常见问题:附加时应用可能因 Frida 检测崩溃,可用 --startup-command 提前挂钩反 Frida 检查;钥匙串转储仅限应用访问组,系统项需越狱级工具;Swift 方法名经过名称修饰,需用 grep 查找;所有修改仅运行时有效,重启即重置,应即时记录发现。资料未提供具体收费、平台支持范围或效果保证。