RSAC : Rétro-ingénierie d’une application Android en cinq minutes

L’une des tactiques les plus courantes pour diffuser des logiciels malveillants – ou même simplement de mauvaises applications – sur Android consiste à reconditionner des applications. Lors de sa présentation à la RSA Conference, Pau Oliva Fora, de viaForensics, a démontré qu’il ne faut que quelques minutes pour faire de la rétro-ingénierie d’applications Android.

Avoir son application
La première étape de la rétro-ingénierie d’une application, a déclaré Fora, était de se procurer une application. Bien qu’elles aient l’air élégantes sur votre téléphone, les applications Android (ou APK) ne sont en fait que des fichiers ZIP avec une nouvelle extension. À l’intérieur se trouve tout ce dont l’application a besoin pour fonctionner – du code aux médias dont elle pourrait avoir besoin.

Il existe plusieurs façons d’obtenir un APK. Si vous avez une application que vous souhaitez rétro-ingénier sur votre Android, vous pouvez utiliser un gestionnaire de fichiers comme ASTRO pour enregistrer une sauvegarde sur une carte SD. Il est également possible de connecter votre Android à un ordinateur, puis d’utiliser Android Debugging Bridge pour transférer l’application sur votre PC. Vous pouvez également utiliser des outils en ligne pour aspirer les APK hors de Google Play.

Pulling It Apart
Une fois que vous avez un APK à travailler, vous devrez le convertir en quelque chose de plus utilisable. Pour cela, Fora a présenté deux options. Vous pouvez désassembler votre cible avec un outil comme Apktool, qui convertira le fichier de code d’application compilé de l’APK (Dalvik Executable, ou DEX) en un langage d’assemblage comme Smali. Ou vous pourriez décompiler, ce qui convertit le DEX en une archive Java (JAR), puis en Java.

Fora a noté que parce que certaines données peuvent être perdues dans le processus de décompilation, il est préférable d’utiliser un décompilateur qui a été fait avec Android en tête. Cela saute l’étape JAR, convertissant DEX directement en Java.

Pour les personnes non intéressées à traquer tous ces outils par elles-mêmes, Fora a suggéré Santoku. Il s’agit d’une distribution spéciale de Linux de viaForensics qui est livrée préchargée avec tous les outils dont vous avez besoin pour démonter, modifier et reconditionner une application Android. C’est un puissant outil de criminalistique numérique sur lequel nous avons écrit dans le passé.

Rapid Reverse
Si vous vous êtes endormi pendant les derniers paragraphes, c’est ici que vous vous réveillez. En utilisant Santoku, Fora a attrapé une application Android très basique qu’il avait créée et l’a démontée. Il a ensuite parcouru le code à la recherche d’une ligne particulière, a modifié le code, l’a reconditionné, l’a signé, a réinstallé l’application modifiée sur son Android et l’a lancée. L’ensemble du processus a pris moins de cinq minutes.

Mais l’exemple de Fora était très simple. L’application était très basique, et ne comprenait aucun code obscurci. Cependant, sa démonstration avait des implications puissantes. « Vous pouvez faire cela pour changer le comportement de n’importe quelle application Android », a déclaré Fora, citant les vies infinies dans un jeu ou les fonctionnalités payantes dans une application gratuite comme quelques exemples.

Un exemple plus effrayant ? Il suffit de repenser à l’une des applications clones malveillantes que nous avons vues. Pensez-y avant de télécharger ce clone sommaire de FlappyBird.

PCMag Tech Deals

Looking For Deals On The Latest Tech?

Cette newsletter peut contenir de la publicité, des offres ou des liens affiliés. L’abonnement à une newsletter indique que vous acceptez nos conditions d’utilisation et notre politique de confidentialité. Vous pouvez vous désabonner à tout moment.

A propos de Max Eddy

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.