mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-30 00:20:59 +00:00
82 lines
6.5 KiB
Markdown
82 lines
6.5 KiB
Markdown
<details>
|
||
|
||
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks云 ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 推特 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
|
||
|
||
- 你在**网络安全公司**工作吗?你想在HackTricks中看到你的**公司广告**吗?或者你想获得**PEASS的最新版本或下载PDF格式的HackTricks**吗?请查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||
|
||
- 发现我们的独家[**NFTs**](https://opensea.io/collection/the-peass-family)收藏品[**The PEASS Family**](https://opensea.io/collection/the-peass-family)
|
||
|
||
- 获取[**官方PEASS和HackTricks周边产品**](https://peass.creator-spring.com)
|
||
|
||
- **加入** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram群组**](https://t.me/peass) 或 **关注**我在**Twitter**上的[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks_live)**。**
|
||
|
||
- **通过向[hacktricks repo](https://github.com/carlospolop/hacktricks)和[hacktricks-cloud repo](https://github.com/carlospolop/hacktricks-cloud)提交PR来分享你的黑客技巧**。
|
||
|
||
</details>
|
||
|
||
|
||
**页面复制自** [**https://mobile-security.gitbook.io/mobile-security-testing-guide/ios-testing-guide/0x06h-testing-platform-interaction#universal-links**](https://mobile-security.gitbook.io/mobile-security-testing-guide/ios-testing-guide/0x06h-testing-platform-interaction#universal-links)
|
||
|
||
如果你只有应用的IPA文件或者只是在越狱设备上安装的应用,通常你无法找到`.entitlements`文件。这也可能是`embedded.mobileprovision`文件的情况。不过,你应该能够自己从应用二进制文件中提取出entitlements属性列表(如在“iOS基本安全测试”章节中所述,通过“获取应用二进制文件”一节获得)。
|
||
|
||
即使针对加密的二进制文件,以下步骤也应该适用。如果由于某种原因不适用,你将需要使用Clutch(如果与你的iOS版本兼容)、frida-ios-dump或类似工具来解密和提取应用。
|
||
|
||
**从应用二进制文件中提取Entitlements Plist**
|
||
|
||
如果你在电脑上有应用的二进制文件,一种方法是使用binwalk来提取(`-e`)所有XML文件(`-y=xml`):
|
||
```bash
|
||
$ binwalk -e -y=xml ./Telegram\ X
|
||
|
||
DECIMAL HEXADECIMAL DESCRIPTION
|
||
--------------------------------------------------------------------------------
|
||
1430180 0x15D2A4 XML document, version: "1.0"
|
||
1458814 0x16427E XML document, version: "1.0"
|
||
```
|
||
或者你可以使用radare2(`-qc`以静默模式运行一个命令并退出)在应用程序二进制文件上搜索包含"PropertyList"(`~PropertyList`)的所有字符串(`izz`):
|
||
```bash
|
||
$ r2 -qc 'izz~PropertyList' ./Telegram\ X
|
||
|
||
0x0015d2a4 ascii <?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n<!DOCTYPE plist PUBLIC
|
||
"-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">\n<plist version="1.0">
|
||
...<key>com.apple.security.application-groups</key>\n\t\t<array>
|
||
\n\t\t\t<string>group.ph.telegra.Telegraph</string>...
|
||
|
||
0x0016427d ascii H<?xml version="1.0" encoding="UTF-8"?>\n<!DOCTYPE plist PUBLIC
|
||
"-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">\n<plist version="1.0">\n
|
||
<dict>\n\t<key>cdhashes</key>...
|
||
```
|
||
无论是使用binwalk还是radare2,我们都能够提取出相同的两个`plist`文件。如果我们检查第一个文件(0x0015d2a4),我们会发现我们能够完全恢复[Telegram的原始授权文件](https://github.com/peter-iakovlev/Telegram-iOS/blob/77ee5c4dabdd6eb5f1e2ff76219edf7e18b45c00/Telegram-iOS/Telegram-iOS-AppStoreLLC.entitlements)。
|
||
|
||
> 注意:`strings`命令在这里无法帮助,因为它无法找到这些信息。最好直接在二进制文件上使用带有`-a`标志的grep命令,或者使用radare2(`izz`)/rabin2(`-zz`)。
|
||
|
||
如果您在越狱设备上访问应用程序二进制文件(例如通过SSH),您可以使用带有`-a, --text`标志的grep命令(将所有文件视为ASCII文本):
|
||
```bash
|
||
$ grep -a -A 5 'PropertyList' /var/containers/Bundle/Application/
|
||
15E6A58F-1CA7-44A4-A9E0-6CA85B65FA35/Telegram X.app/Telegram\ X
|
||
|
||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||
<plist version="1.0">
|
||
<dict>
|
||
<key>com.apple.security.application-groups</key>
|
||
<array>
|
||
...
|
||
```
|
||
使用`-A num, --after-context=num`标志来显示更多或更少的行。如果您的越狱iOS设备上也安装了这些工具,您也可以使用我们上面介绍的工具。
|
||
|
||
> 即使应用程序二进制文件仍然加密,这种方法也应该有效(已经对几个App Store应用进行了测试)。
|
||
|
||
<details>
|
||
|
||
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
|
||
|
||
- 您在**网络安全公司**工作吗?您想在HackTricks中看到您的**公司广告**吗?或者您想获得**PEASS的最新版本或下载PDF格式的HackTricks**吗?请查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||
|
||
- 发现我们的独家[NFT收藏品**The PEASS Family**](https://opensea.io/collection/the-peass-family)
|
||
|
||
- 获取[**官方PEASS和HackTricks周边产品**](https://peass.creator-spring.com)
|
||
|
||
- **加入**[**💬**](https://emojipedia.org/speech-balloon/) [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass),或在**Twitter**上**关注**我[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks_live)**。**
|
||
|
||
- **通过向[hacktricks repo](https://github.com/carlospolop/hacktricks)和[hacktricks-cloud repo](https://github.com/carlospolop/hacktricks-cloud)提交PR来分享您的黑客技巧**。
|
||
|
||
</details>
|