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

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ći unzip.

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