Introduction pratique au détournement de fonctions sur iOS

Magazine
Marque
MISC
Numéro
65
Mois de parution
janvier 2013
Domaines


Résumé

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...

Cet article est réservé aux abonnés. Il vous reste 96% à découvrir.
à partir de 21,65€ HT/mois/lecteur pour un accès 5 lecteurs à toute la plateforme
J'en profite


Articles qui pourraient vous intéresser...

Zéro SQLi malgré les développeurs

Magazine
Marque
MISC
Numéro
111
Mois de parution
septembre 2020
Domaines
Résumé

Nous proposons une méthode pour effectuer des requêtes SQL qui garantit l'invulnérabilité aux injections SQL, y compris lorsqu'elle est utilisée par un développeur pressé ou incompétent, contrairement aux requêtes paramétrées. Basée sur l'utilisation d'arbres de syntaxe abstraite, elle permet facilement de construire des requêtes dynamiques et est plus facile à mettre en œuvre qu'un ORM. Nous proposons une bibliothèque Java implémentant nos idées, mais la méthode peut s'appliquer à d'autres langages de programmation et d'autres types de requêtes.

Utilisez des applications Android dans une machine virtuelle pour protéger votre téléphone

Magazine
Marque
Linux Pratique
Numéro
119
Mois de parution
mai 2020
Domaines
Résumé

La nouvelle mode pousse le commerce à proposer des applications à installer sur nos téléphones pour enrichir notre expérience de client (sic). Nous montrons dans cet article comment utiliser ces applications sans perturber le fonctionnement de notre téléphone réel. Il est en effet possible de disposer d’une plateforme jetable et peu onéreuse pour tester ou utiliser des applications. Nous présenterons l’installation de l’environnement de développement Android Studio. Nous montrerons comment lancer un téléphone virtuel à partir de cet environnement, puis directement à partir de la ligne de commandes.

Introduction au dossier : Python au service de la recherche et l’exploitation de vulnérabilités

Magazine
Marque
MISC
Numéro
109
Mois de parution
mai 2020
Domaines
Résumé

Quand on s’adonne aux plaisirs de la sécurité informatique, il est ce moment où doivent s’aligner les idées et la pratique, c’est-à-dire la production d’une preuve de concept. Et quand il faut écrire du code, le choix du langage s’impose forcément : d’un côté, il y a les contraintes fortes qui nous donnent des possibilités restreintes, et de l’autre il y a nos bas instincts qui prennent la solution qui produira le plus rapidement possible le résultat escompté.