7 votes

Comment puis-je modifier les valeurs en mémoire ?

Est-il possible de modifier les valeurs de la mémoire utilisée par une application ? Je suppose que cela nécessite Root.

4voto

pr0nin Points 353

Cela peut être possible sans Root si l'application que vous voulez manipuler permet le débogage via Android Debug Bridge (ADB). Le fait qu'une application puisse être connectée à un débogueur est spécifié dans sa page d'accueil. AndroidManifest.xml dans le android:debuggable entrée.

Si l'application est activée pour le débogage, vous pouvez activer le mode de débogage USB sur votre appareil et vous y connecter via adb. Vous pouvez ensuite connecter un débogueur Java standard à l'application et inspecter/modifier les variables.

S'il ne permet pas le débogage, vous pouvez essayer de le décompiler en utilisant apktool modifiez la valeur à déboguer dans AndroidManifest.xml puis recompilation et signature de l'application (en utilisant une paire de clés personnalisée).

Une deuxième solution consisterait à inclure Frida Gadget dans l'application et le charger au moment de l'exécution. Vous pouvez ensuite utiliser Frida pour vous connecter à l'application sur un appareil non enraciné, accrocher des méthodes Java ou natives et modifier la mémoire de l'application.

2voto

mattlant Points 9136

Dans Android, la mémoire système est juste un autre fichier, donc avec les droits appropriés c'est aussi simple que vi -b /dev/mem (le nœud de périphérique peut varier pour votre système). Le résultat de la modification de la mémoire d'un système en cours d'exécution peut être un nop, un contact d'une clôture électrique, un crash du système ou un simple nuke résultant en un dispositif inutilisable.

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X