🧱Setup environnement (iOS)
Pour les tests d'intrusion iOS, il est recommandé d'utiliser un appareil physique. (jailbreakable)
Prérequis
Ordinateur sous MacOS avec droits d'administration
XCode et XCode Command Line Tools
Un appareil iOS jailbreaké
Un proxy type Burp Suite
Connexion au proxy burp suite
Dans les paramètres réseau, activer la recherche de proxy manuelle et renseigner l'IP de la machine attaquant et le port souhaité (8080 par défaut).
Dans les paramètres du proxy burp, configurer le proxy pour écouté sur le port séléctionné et sur toutes les interfaces.
Sur l'iPhone, aller sur http://burp et télécherger le certificat burp.
Installer le certificat.
Aller dans Settings → General → About → Certificate Trust Settings et ajouter le certificat burp aux certificats de confiance.
Jailbreak
Il existe différents types de jailbreak qui sont les suivants:
Untethered jailbreak: Il s'agit d'un jailbreak persistant qui reste actif après redémarrage de l'appareil
Tethered jailbreak: Il s'agit d'un jailbreak temporaire étant désactivé après redémarrage de l'appareil
Semi-tethered jailbreak: Un jailbreak semi-connecté est un jailbreak où l'appareil peut démarrer tout seul, mais il n'aura plus de noyau corrigé et ne pourra donc pas exécuter de code modifié.
Semi-untethered jailbreak: La séquence de démarrage de l'appareil est inchangée à chaque démarrage et il démarre dans son état d'origine (non jailbreaké). Cependant, plutôt que d'utiliser un ordinateur pour jailbreaker, comme dans un cas connecté ou semi-connecté, l'utilisateur peut re-jailbreaker son appareil à l'aide d'une application qui s'exécute sur son appareil.
La méthode ou l'outil à utiliser dépend de la version d'iOS et des iPhones compatibles, en fonction du processeur. Le site https://theapplewiki.com/wiki/Jailbreak est une bonne ressource pour vérifier quel outil convient. Voici quelques outils de jailbreak populaires :
Dopamine (iOS 15-16)
palera1n (iOS 15-17)
Checkra1n (iOS 12 - 14)
Unc0ver iOS 11 - 14.3)
Taurine ou Chimera (pour iOS 14.x)
Ensuite, installer Cydia : https://theapplewiki.com/wiki/Cydia_Installer
Si applicable, il est parfois possible de Unjailbreak un appareil avec Cydia Eraser par exemple
Enfin, installer les outils nécessaires à partir du package manager:
Frida
SSL Kill Switch
Cycript
Radare 2
Filza
iFile
SQLite 3.X
wget
...
Installer une application
Plusieurs méthodes sont possibles:
Installation classique via l'App Store
Installation depuis un IPA: nécessite un outil tier comme ideviceinstaller pour sideload l'application dans le device
Voici quelques commandes utiles:
Installation via Xcode: En compilant et lancant l'application
Créer un simulateur
Simulateur ≠ Emulateur
Un simulateur iOS reproduit le comportement d’iOS sans exécuter le vrai système, en traduisant les appels (il est rapide mais pas 100 % fidèle au matériel). Un émulateur iOS imiterait le matériel et le système iOS réels, comme un vrai iPhone virtuel. En pratique, Apple fournit des simulateurs, et les émulateurs iOS complets n’existent pas officiellement à cause des restrictions d’Apple.
Dans Xcode:
Aller dans File > New Simulator
Choisir le type de device et la version d'iOS à simuler
Cliquer sur Create
Ressources
Mis à jour