Hacker / Modifier une application Android

Tout code JAVA est décompilable et peut donc être modifié avec du reverse engineering.

Si les plus aguerris d’entre vous pourront modifer le fonctionnement de l’application, nous nous contenterons de modifier des traductions, puis de supprimer des tests sur les clés de licence.

Tout d’abord, vous avez besoin de APK Multi Tool.
Vous aurez peut-être aussi besoin de la dernière version de APKTool.

Etape 1 – Installer les outils :

– Décompresser l’archive APK-Multi-Tool.
– Lancez setup.bat
– Choisissez 1 (mise à jour des outils) puis 3 (création des répertoires)

Plusieurs répertoires vont être créés dont celui qui nous intéresse (place-apk-here-for-modding).

2 – Récupérer son APK

– Sur Android, les apk sont les applications. Elles sont situées dans votre répertoire /system/app.
Elles peuvent être récupérées facilement.
Pour cela, il faut connecter votre téléphone, puis lancer la commande « adb remount »
Ensuite pour récupérer le fichier, faites « adb pull /system/app/nom_fichier.apk »
Copier ce fichier dans le répertoire place-apk-here-for-modding.

3 – Modifier l’application

– Lancez ensuite setup.bat
– Entrez 9 pour décompiler l’apk.
Les sources du projet se trouvent alors dans le répertoire projects. Les développeurs Android devraient  s’y retrouver. Pour modifier les traductions, il faut donc aller dans le répertoire res/values.

A noter que les fichiers ne sont pas des .class mais des .smali (une sorte de langage machine qui ressemble à l’assembleur).
Pour ceux qui veulent en savoir plus, voila une documentation.
Pour modifier un test sur une clé de licence, il faut donc rechercher le message d’erreur en question. A coté se trouvera surement le code suivant:
If-eq
If-ne
If-nez
If-eqz

Remplacez le test par son contraire (eq = égal, neq = non égal)

4 – Enregistrer le tout et exporter l’apk

– Cliquez sur 15 – Compiler / Signer / Installer
Votre fichier modifié se retrouvera dans le répertoire place-apk-here-for-modding/signedApplication.apk
A vous de l’uploader sur votre mobile. A noter que vous ne pouvez pas avoir 2 applications avec le même nom de package, il vous faudra donc supprimer l’application originale, ou modifier
le nom du paquet dans les sources d’origines.

Cet outil pourra vous aider à automatiser certaines tâches: https://github.com/ax/apk.sh
(surcouche à apktool pour désassembler/réassembler des apk.)
Cette petite vidéo devrait permettre de vous aider un peu sur ce sujet:

54 réflexions au sujet de “Hacker / Modifier une application Android”

  1. Bonjour yohann j aimerais que tu m aides a cloner l application de courchevel. Et rajouter une icone pour ajouter un booking on line de moniteur de ski.
    Pourrais tu regarder l appli et me dire si tu pourras le faire et a quel prix. ?
    Je me demande si cela ne serait pas mieux de reprendre a zero l appli en recuperant juste les adresses url de chaque icone pour les pointer sur les nouvelles.

    Répondre
    • Bonjour,
      j’ai regardé vite fait l’appli. Elle a l’air sympa et bien réalisée.
      Pour ce qui est du changement d’une image, c’est assez simple à réaliser, mais pour ce qui est d’ajouter des fonctions à des nouveaux boutons, là ca devient plus compliqué.
      Lorsque tu fais du reverse, tu n’obtiens pas le code source de base, mais un code plus difficile à modifier. De plus, imaginons que tu arrives à refaire fonctionner le tout, toutes les sources seraient issues
      du package com.skiplan.courchevel. Il faudrait donc toutes les modifier par un nom de package à toi pour pouvoir déposer à nouveau l’application sur le play store.
      Et pour finir, il y a des grandes chances que l’appli existante te fasse un procès pour contrefacon (avec suppression du play store), et la ca serait vraiment dure de dire que tu as tout réalisé depuis 0.

      Donc en gros, les modifs d’applis sont principalement utiles pour ton usage perso (pour virer les pubs,une vérif de licence, ou une functionnalité qui te dérange), mais pas pour ton besoin.
      Désolé

      Répondre
    • Je ne connais pas la config de ton PC. Je ne sais pas ce qui crash. Le plus simple est de regarder ce qui pose pb dans l’observateur d’evenements, et de poser ta question sur stackoverflow.com avec le plus d’infos possible.
      Bon courage

      Répondre
  2. quand je met la comande « adb remount » le setup.bat crash et se stope
    comment faire s’il vous plait aidez moi j’aimerait y arriver
    merci d’avance.

    Répondre
    • Désolé les gars, mais je n’ai pas le temps de m’amuser à décompiler chacun de vos jeux. Ce tuto a pour but de vous donner quelques pistes à étudier pour y parvenir.
      Il vous faut donc du courage, du temps et de la recherche sur le net.
      Bon courage à tous.

      Répondre
  3. Bonjour,
    Depuis un bout de temps je cherche sur le web un appli qui me permettrer d’aller sur la programmation d’un de mes jeux mais impossible d’en trouver aider moi svp(

    Répondre
  4. Bjr j’aimerais developper une appplication android pour tv du genre egarder une chaine direct en ligne svp priere d accuser reception de mon msg merci…

    Répondre
    • Bonjour,
      Ton téléphone est-il rooté ?
      Si oui tu peux aller voir des tutos pour l’application « Game Killer » qui à pour but de modifier des héxadécimales et donc de modifier gemmes, or, etc…

      Pour le crack des achats-in-app tu as « Lucky Patcher » qui est plus simple d’utilisation et qui ne nécessite pas forcément de root.
      Voilà j’espère t’avoir aidé 🙂

      Répondre
      • Salut, je voudrai savoir comment modifier le code source de clash royale mais je ne sais meme pas si c’est possible. J’aimerai le savoir et si oui, est ce que gamekiller nous le permet. Merci d’avance

        Répondre
  5. Bonjour.
    Premièrement merci pour le tuto.
    Si je veux modifier le code source d’un .apk , c’est juste pour mettre l’applications en français. Cela est largement possible j’imagine. Vous confirmez ?
    D’ailleurs si quelqu’un à la morcerau de code à modifier, je suis preneur.
    #novice#
    Un grand merci .

    Répondre
    • C’est surement possible, oui, mais pour avoir vécu ce genre de modifications, je ne vous expliquerais pas comment faire. Lorsqu’on passe du temps à créer un programme et qu’une tierce personne le récupère pour y enlever notre nom et se faire passer pour l’auteur, c’est simplement du vol.
      Dans mon cas, mon outil était gratuit et open source, et mon nom n’était écrit qu’en petit. Puis le voleur m’a contacté pour lui venir en aide. Quand j’ai vu qu’il avait modifié mon appli de cette façon, j’ai clairement refusé. Il y a des limites…
      Il vaut mieux contacter l’auteur pour lui expliquer votre démarche si vous souhaitez avoir l’appli en marque blanche.

      Répondre
  6. Bonjour , je ne veut pas hacké une appli mes j’aimerais savoir si il possible à partir d’une application de trouver quelle logiciel la crée et si oui comment à part demander à celui qui l’a créé, merci .

    Répondre
    • S’il s’agit d’Android, c’est très probablement Android studio. Mais après peu importe le logiciel car des qu on parle de code, on n’est plus vraiment dépendant d un logiciel mais plutôt d’un langage.

      Répondre
  7. en fait je recherche le logiciel le mieux adapté pour mon idée d’application et je voulais me référer à dès application existantes qui sont le plus proches de ce que je veut créer, donc connaître le logiciel utilisé m’aurait orienté dans mon choix, sinon l’application de référence est multiplateforme (windows phone / ios / et peut-être androide pas vérifié . ha au fait merci de vos réponse.

    Répondre
  8. Bonjour Yohann j’aimerais avoir plus d’attaque en ligue legende sur Clash of Clans (serveur privé : null’s clash) j’ai essayer de le faire a l’aide de Game Guardian mais sa na pas marché. Tu pourrais m’aider?

    Répondre
    • Bonjour, c est gentiment demandé, mais non désolé, je n’ai pas le temps. Cependant, je t encourage vivement à creuser le sujet, tu apprendras certainement plein de choses en faisant cela.

      Répondre
  9. Bonjour,

    J’aimerai modifier une app pour mon usage perso. En gros je souhaite modifier l’app « Freebox » ancienne « Freebox compagnon ». Je souhaiterai supprimer la partie gestion Player, et Domotique. Et Garder que la partie Gestion du server.
    Car je gère pas mal de Freebox de mon entourage un certain nombre et donc j’ai juste besoin de cette partie-là pour les gérer à distance quand on me demande de vérifier des choses et je pense que si j’enlève cette partie qui m’est inutile elle va surement gagner en fluidité, (je ne sais pas), mais j’aimerai tenter car actuellement c’est un peu fastidieux quand on a bcp de Freebox à gérer dans l’app. Je débute dans le reverse ingénierie. Et donc j’aimerai des conseils si possibles.

    Cordialement

    Répondre
  10. Bonjour Yohann, tout d’abord merci pour ce tuto qui m’a aidé à comprendre beaucoup de choses. Toutefois, je suis débutant dans la programmation et j’ai encore beaucoup de difficultés.

    Mon objectif est de prendre les fonctionnalités d’un APK d’un jeux online (planet craft) qui ne marche plus, car le jeu demande de faire la mise à jour pour pouvoir accéder aux nouvelles fonctionnalités que je ne veux pas; et d’injecter, ces anciennes fonctionnalités dans la nouvelle application. Où tout simplement refaire fonctionner l’apk en contournant la page de mise à jour.

    Peux-tu m’orienter des manières d’y parvenir si ça ne te dérange pas ?

    Si tu es trop occupé, ce n’est pas grave, merci d’avoir lu mon commentaire 🙂

    Répondre
  11. Bonjour Yohann, je debute dans tout ce qui est programation mais je m’interesse surtout a tout ce qui touche aux jeux précisement. Je ne sais pas si c’est possible mais j’aimerai savoir si on peut modifier certains parametres du code sources du jeu clash royale. Si tu sais comment faire, j’aimerai juste avoir des instructions ou meme des pistes et des conseils pour pouvoir y arriver. J’espere que tu lira mon commentaire. Bonne journée 🙂

    Répondre
    • Il est sûrement possible de modifier votre version du jeu mais pas tout ce qui touche au serveur en ligne. Je ne connais pas le jeu, je ne pas vous dire.

      Répondre
  12. Bonjour Yohann,
    J’ai une question à propos de l’application where’s my droid dans sa version originale (en sideload sur le site de l’éditeur) qui permet de faire sonner ou localiser son téléphone par envoi de SMS.
    Google ayant banni toutes les applications qui lisent en envoient des SMS automatiquement et dont la fonction principale n’est pas la gestion des SMS, l’éditeur s’est plié à cette règle pour continuer d’être sur le play store en retirant cette fonctionnalité dans sa version officielle.
    Mais cela retire tout ce qui faisait l’attrait de cette application, puisqu’il faut maintenant avoir forcément un forfait data sur le téléphone à retrouver, avoir une couverture data correcte, trouver un téléphone ayant du data et se connecter son espace personnel whereismydroid pour localiser ou faire sonner son tel. Avant, un simple SMS et plaf, il sonne même si il est en silencieux.

    Bref, le soucis, c’est que maintenant Google a les dents longues et le PlayStore désactive et désinstalle l’application sideload sans rien demander à l’utilisateur.
    Windows lui-même, quand on tente de décompiler l’APK, décrète que c’est un virus et supprime le fichier. Fort heureusement, on peu le mettre en exception, chose malheureusement impossible sur Android (c’est pourtant une fonction de base sur tout anti-virus).

    J’en viens à ma question (désolé c’est long) : est-ce que le Playstore repère la signature du programme pour le détecter et l’éliminer ou est-ce qu’il détecte les permissions pour décider que c’est une appli dangereuse ?
    Mon intention est de pouvoir éditer l’APK, modifier son nom et plusieurs texte et d’en refaire une dans l’espoir de passer sous les radars du nouveau big-brother.

    Merci si tu as une idée sur la réussite possible ou improbable de ce projet.

    Répondre
    • Bonjour
      Je pense qu’à la base c’est une détection automatique des permissions.
      Sur le chromestore c’est comme ça et ils demandent pourquoi vous en avez forcément besoin.
      Après j’imagine que sur certains logiciels il ya des dérogations ou des vérifications supplémentaires, je ne sais pas trop.
      En tout cas bon courage car reimplementer une telle fonction ne me paraît pas simple.

      Répondre
  13. Me again :

    Petite coquille dans le tuto au chapitre 3 :

    3 – Modifier l’application
    – Lancez ensuite setup.bat

    c’est script.bat qui faut lancer et plus setup.bat 🙂 !

    Répondre
  14. Bonjour, est – il possible de refaire une vidéo sur comment installer apk-multi tool s.v.p.. J’essaie de l’installer et je n’y arrive pas du tout. Je n’arrive pas a créer les répertoires dont place apk here for modding.

    Merci et bonne journée

    Répondre
    • Bonjour,
      désolé, je ne vais pas avoir le temps de faire une vidéo sur le sujet. Je peux vous aider un peu via discord à l’occasion si vous voulez.
      Apres sur leur github, il y a deja pas mal d’explications.

      Répondre

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.