Nombreux sont les développeurs qui imaginent encore qu'il est ardu d'attaquer une application iPhone. Ils pensent qu'un hacker doit obligatoirement enlever le DRM FairPlay, puis analyser l'application à l'aide d'un debugger ou d'un désassembleur, et finalement appliquer des modifications en assembleur dans le binaire. Nous allons voir qu’en utilisant le framework MobileSubstrate, installé sur la plupart des appareils jailbreakés, il est aisé de modifier le comportement d'une application iPhone sans connaître grand-chose au reverse engineering ou à l'assembleur.
1. Introduction
Cet article s'adresse principalement aux personnes développant pour la plate-forme iOS, afin de les rendre attentives aux risques de sécurité résultant du détournement de fonctions, ainsi qu'aux auditeurs en sécurité à qui il permettra, nous l'espérons, d'acquérir de nouvelles techniques d'analyse. Le contenu de l'article est par endroit très technique et présuppose une certaine habitude de l'environnement de développement Xcode d'Apple ainsi que la connaissance de notions du langage de programmation Objective-C.
Nous allons montrer sous forme de tutoriel comment les techniques de détournement de fonctions permettent de contourner la vérification d'un mot de passe sur une petite application de démonstration. Nous expliquerons ensuite comment extraire des données sensibles d'une application iPhone, des hash de mots de passe par exemple. Nous montrerons finalement comment développer un rootkit qui masque le fait qu'un debugger est actif sur...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première