mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
63 lines
3.6 KiB
Markdown
63 lines
3.6 KiB
Markdown
# APK dekompilatori
|
|
|
|
{{#include ../../banners/hacktricks-training.md}}
|
|
|
|
**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**](https://eiken.dev/blog/2021/02/how-to-break-your-jar-in-2021-decompilation-guide-for-jars-and-apks/#cfr)
|
|
|
|
### [JD-Gui](https://github.com/java-decompiler/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](https://github.com/skylot/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](https://github.com/charles2gan/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](https://github.com/Konloch/bytecode-viewer/releases)
|
|
|
|
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](https://github.com/Storyyeller/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](https://github.com/leibnitz27/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](https://github.com/JetBrains/intellij-community/tree/master/plugins/java-decompiler/engine)
|
|
|
|
**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ći `unzip`.
|
|
|
|
### [Krakatau](https://github.com/Storyyeller/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](https://github.com/mstrobel/procyon)
|
|
|
|
Za jednostavnu dekompilaciju sa **procyon**:
|
|
|
|
- Dekompilujte JAR datoteku u određeni direktorijum: `procyon -jar "app.jar" -o "output_directory"`
|
|
|
|
### [frida-DEXdump](https://github.com/hluwa/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.
|
|
|
|
{{#include ../../banners/hacktricks-training.md}}
|