# Deeplinks/Universal links vulns (iOS)

L'exploitation des deeplinks sous iOS est globalement semblable à l'exploitation des [deeplinks sous Android](/pentest-mobile/android/deeplinks-vulns.md).

## Reconnaissance

### Statique

Les Universal links utilisés par les applications iOS peuvent être retrouvées dans le fichier **Info.plist** en recherchant les éléments suivants:

* CFBundleUrlTypes
* LSApplicationQueriesSchemes

Ainsi que dans les entitlements en recherchant les domaines associés:

`$ ipsw macho info -e MY_BINARY`

key: com.apple.developper.associated-domains

Rechercher ensuite des cas d'usage:

`$ string MY_BINARY | grep "://"`

`$ strings MY_BINARY | grep -E '^[a-zA-Z][a-zA-Z0-9+.-]{0,29}://[a-zA-Z0-9./?&=_%-]+' | grep -vE '^https?://'`

Rechercher la méthode **openURL** Dans le binaire Mach-O avec Ghidra (Barre "Filter" dans la fenêtre "Symbol Tree")

Rechercher des strings hardcodées potentiellement associés aux fonctions qui ouvrent des liens universels pour aider à la compréhension (**Search** > **For strings...**)

### Dynamique

Tracer la méthode **openURL** avec Frida:

`$ frida-trace -U -m "*[* *openURL*]" -p [ProcessID]`

## Exploitation

Lancer un lien universel via SSH:

`$ uiopen scheme://target_app`


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://blog.s1rn3tz.ovh/pentest-mobile/ios/deeplinks-universal-links-vulns-ios.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
