hacktricks/mobile-pentesting/android-app-pentesting/apk-decompilers.md
2024-02-10 13:11:20 +00:00

5.6 KiB

APK dekompajleri

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Za dalje 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

JD-Gui

Kao pionirski GUI Java dekompajler, JD-Gui vam omogućava da istražujete Java kod unutar APK fajlova. Jednostavno ga je koristiti; nakon što dobijete APK, jednostavno ga otvorite sa JD-Gui-em da biste pregledali kod.

Jadx

Jadx nudi korisnički prijateljski interfejs za dekompajliranje Java koda iz Android aplikacija. Preporučuje se zbog jednostavnosti korišćenja na različitim platformama.

  • Da biste pokrenuli GUI, idite na bin direktorijum i izvršite: jadx-gui
  • Za korišćenje preko komandne linije, dekompajlirajte APK sa: jadx app.apk
  • Da biste odredili izlazni direktorijum ili prilagodili opcije dekompajliranja: jadx app.apk -d <putanja do izlaznog direktorijuma> --no-res --no-src --no-imports

GDA-android-reversing-Tool

GDA, alat samo za Windows, nudi obimne mogućnosti za reverzno inženjerstvo Android aplikacija. Instalirajte i pokrenite GDA na vašem Windows sistemu, a zatim učitajte APK fajl za analizu.

Bytecode-Viewer

Sa Bytecode-Viewer-om možete analizirati APK fajlove koristeći više dekompajlera. Nakon preuzimanja, pokrenite Bytecode-Viewer, učitajte vaš APK i odaberite dekompajlere koje želite koristiti za istovremenu 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 ekvivalentan datom APK-u.

CFR

CFR je sposoban za dekompajliranje modernih Java funkcionalnosti. Koristite ga na sledeći način:

  • Za standardno dekompajliranje: java -jar ./cfr.jar "app.jar" --outputdir "output_directory"
  • Za velike JAR fajlove, prilagodite dodelu memorije JVM-a: java -Xmx4G -jar ./cfr.jar "app.jar" --outputdir "output_directory"

Fernflower

Fernflower, analitički dekompajler, zahteva izgradnju iz izvornog koda. Nakon izgradnje:

  • Dekompajlirajte JAR fajl: java -jar ./fernflower.jar "app.jar" "output_directory" Zatim, izvucite .java fajlove iz generisanog JAR fajla koristeći unzip.

Krakatau

Krakatau nudi detaljnu kontrolu nad dekompajliranjem, posebno za rukovanje spoljnim bibliotekama.

  • Koristite Krakatau tako što ćete navesti putanju standardne biblioteke i JAR fajl za dekompajliranje: ./Krakatau/decompile.py -out "output_directory" -skip -nauto -path "./jrt-extractor/rt.jar" "app.jar"

procyon

Za jednostavno dekompajliranje sa procyon-om:

  • Dekompajlirajte JAR fajl u određeni direktorijum: procyon -jar "app.jar" -o "output_directory"
Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u: