APK decompilers
Last updated
Last updated
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Za dodatne detalje o svakom alatu proverite originalni post sa https://eiken.dev/blog/2021/02/how-to-break-your-jar-in-2021-decompilation-guide-for-jars-and-apks/#cfr
Kao pionirski GUI Java dekompajler, JD-Gui vam omogućava da istražujete Java kod unutar APK datoteka. Lako je za korišćenje; nakon što dobijete APK, jednostavno ga otvorite sa JD-Gui da biste pregledali kod.
Jadx nudi korisnički prijateljski interfejs za dekompilaciju Java koda iz Android aplikacija. Preporučuje se zbog svoje jednostavnosti korišćenja na različitim platformama.
Da biste pokrenuli GUI, idite u bin direktorijum i izvršite: jadx-gui
Za korišćenje iz komandne linije, dekompilujte APK sa: jadx app.apk
Da biste odredili izlazni direktorijum ili prilagodili opcije dekompilacije: jadx app.apk -d <putanja do izlaznog direktorijuma> --no-res --no-src --no-imports
GDA, alat koji radi samo na Windows-u, nudi opsežne funkcije za obrnuto inženjerstvo Android aplikacija. Instalirajte i pokrenite GDA na vašem Windows sistemu, a zatim učitajte APK datoteku za analizu.
Sa Bytecode-Viewer, možete analizirati APK datoteke koristeći više dekompajlera. Nakon preuzimanja, pokrenite Bytecode-Viewer, učitajte svoj APK i odaberite dekompajlere koje želite da koristite za simultanu analizu.
Enjarify prevodi Dalvik bajtkod u Java bajtkod, omogućavajući Java analitičkim alatima da efikasnije analiziraju Android aplikacije.
Da biste koristili Enjarify, pokrenite: enjarify app.apk
Ovo generiše Java bajtkod ekvivalent datom APK-u.
CFR je sposoban da dekompajlira moderne Java funkcije. Koristite ga na sledeći način:
Za standardnu dekompilaciju: java -jar ./cfr.jar "app.jar" --outputdir "output_directory"
Za velike JAR datoteke, prilagodite JVM alokaciju memorije: java -Xmx4G -jar ./cfr.jar "app.jar" --outputdir "output_directory"
Fernflower, analitički dekompajler, zahteva izgradnju iz izvora. Nakon izgradnje:
Dekompajlirajte JAR datoteku: java -jar ./fernflower.jar "app.jar" "output_directory"
Zatim, izdvojite .java
datoteke iz generisane JAR koristeći unzip
.
Krakatau nudi detaljnu kontrolu nad dekompilacijom, posebno za rukovanje spoljnim bibliotekama.
Koristite Krakatau tako što ćete odrediti putanju do standardne biblioteke i JAR datoteku koju treba dekompilirati: ./Krakatau/decompile.py -out "output_directory" -skip -nauto -path "./jrt-extractor/rt.jar" "app.jar"
Za jednostavnu dekompilaciju sa procyon:
Dekompajlirajte JAR datoteku u određeni direktorijum: procyon -jar "app.jar" -o "output_directory"
Ovaj alat može se koristiti za dumpovanje DEX-a pokrenutog APK-a u memoriji. Ovo pomaže da se prevaziđe statička obfusikacija koja se uklanja dok se aplikacija izvršava u memoriji.
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)