iOS Extracting Entitlements From Compiled Application
Last updated
Last updated
学习和实践 AWS 黑客技术:HackTricks 培训 AWS 红队专家 (ARTE) 学习和实践 GCP 黑客技术:HackTricks 培训 GCP 红队专家 (GRTE)
在处理应用程序的 IPA 或已安装在越狱设备上的应用程序时,直接找到 .entitlements
文件或 embedded.mobileprovision
文件可能不可行。然而,权限属性列表仍然可以从应用程序二进制文件中提取,遵循“iOS 基本安全测试”章节中概述的程序,特别是“获取应用程序二进制文件”部分。
即使是加密的二进制文件,也可以采用某些步骤来提取这些文件。如果这些步骤失败,可能需要使用 Clutch(如果与 iOS 版本兼容)、frida-ios-dump 或类似工具来解密和提取应用程序。
在计算机上访问应用程序二进制文件后,可以使用 binwalk 提取所有 XML 文件。以下命令演示了如何做到这一点:
或者,radare2 可以用来安静地运行一个命令并退出,搜索应用程序二进制文件中包含 "PropertyList" 的所有字符串:
两种方法,binwalk 和 radare2,都可以提取 plist
文件,检查第一个文件 (0x0015d2a4) 显示成功恢复了 Telegram 的原始权限文件。
对于在越狱设备上访问的应用程序二进制文件(例如,通过 SSH),可以使用带有 -a, --text
标志的 grep 命令将所有文件视为 ASCII 文本:
调整 -A num, --after-context=num
标志可以显示更多或更少的行。此方法即使对于加密的应用程序二进制文件也是可行的,并且已在多个 App Store 应用程序中验证过。前面提到的工具也可以在越狱的 iOS 设备上用于类似目的。
注意:由于 strings
命令在查找相关信息方面的局限性,不建议直接使用该命令来完成此任务。相反,建议在二进制文件上使用带有 -a
标志的 grep,或利用 radare2 (izz
)/rabin2 (-zz
) 来获得更有效的结果。
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)