Hvordan kan man dekompilere Android DEX-filer (VM bytecode) til tilsvarende Java-kildekode?
Få disse værktøjer:
Kildekoden er ganske læsbar, da dex2jar foretager nogle optimeringer.
Og her'er proceduren for, hvordan man dekompilerer:
Konverter classes.dex i test_apk-debug.apk til test_apk-debug_dex2jar.jar
d2j-dex2jar.sh -f -o output_jar.jar apk_to_decompile.apk
d2j-dex2jar.sh -f -o output_jar.jar dex_to_decompile.dex
Note: I Windows-maskinerne er alle
.sh
-scripts erstattet af.bat
-scripts
Åbn jar'en i JD-GUI
Jeg vil faktisk anbefale at tage herhen: https://github.com/JesusFreke/smali
Den indeholder BAKSMALI, som er et fremragende reverse-engineering-værktøj til DEX-filer. Det er lavet af JesusFreke, ham der har lavet de berømte ROMs til Android.