APK dekompilatori
Reading time: 3 minutes
tip
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)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
Za više detalja o svakom alatu pogledajte originalni post sa https://eiken.dev/blog/2021/02/how-to-break-your-jar-in-2021-decompilation-guide-for-jars-and-apks/#cfr
JD-Gui
Kao pionirski GUI Java dekompilator, 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
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-android-reversing-Tool
GDA, alat koji radi samo na Windows-u, nudi opsežne funkcije za reverzno inženjerstvo Android aplikacija. Instalirajte i pokrenite GDA na vašem Windows sistemu, a zatim učitajte APK datoteku za analizu.
Bytecode-Viewer
Sa Bytecode-Viewer, možete analizirati APK datoteke koristeći više dekompilatora. Nakon preuzimanja, pokrenite Bytecode-Viewer, učitajte svoj APK i odaberite dekompilatore koje želite koristiti za simultanu analizu.
Enjarify
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
CFR je sposoban da dekompiliše 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
Fernflower, analitički dekompilator, zahteva izgradnju iz izvora. Nakon izgradnje:
- Dekompilujte JAR datoteku:
java -jar ./fernflower.jar "app.jar" "output_directory"
Zatim, izdvojite.java
datoteke iz generisane JAR koristećiunzip
.
Krakatau
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 dekompilovati:
./Krakatau/decompile.py -out "output_directory" -skip -nauto -path "./jrt-extractor/rt.jar" "app.jar"
procyon
Za jednostavnu dekompilaciju sa procyon:
- Dekompilujte JAR datoteku u određeni direktorijum:
procyon -jar "app.jar" -o "output_directory"
frida-DEXdump
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.
tip
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)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.