hacktricks/mobile-pentesting/android-app-pentesting/apk-decompilers.md
2024-02-11 02:07:06 +00:00

5.5 KiB

APK decompilers

Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun:

Vir verdere besonderhede oor elke instrument, kyk na die oorspronklike pos vanaf https://eiken.dev/blog/2021/02/how-to-break-your-jar-in-2021-decompilation-guide-for-jars-and-apks/#cfr

JD-Gui

As die pionier GUI Java-dekompilator, laat JD-Gui jou toe om Java-kode binne APK-lêers te ondersoek. Dit is maklik om te gebruik; nadat jy die APK verkry het, maak dit eenvoudig oop met JD-Gui om die kode te ondersoek.

Jadx

Jadx bied 'n gebruikersvriendelike koppelvlak vir die dekompilering van Java-kode van Android-toepassings. Dit word aanbeveel vir sy gebruiksgemak op verskillende platforms.

  • Om die GUI te begin, navigeer na die binêre gids en voer uit: jadx-gui
  • Vir opdragreëlgebruik, dekomponeer 'n APK met: jadx app.apk
  • Om 'n uitvoergids te spesifiseer of dekompilasie-opsies aan te pas: jadx app.apk -d <pad na uitvoergids> --no-res --no-src --no-imports

GDA-android-reversing-Tool

GDA, 'n Windows-slegs instrument, bied uitgebreide funksies vir die omgekeerde ontleding van Android-toepassings. Installeer en voer GDA uit op jou Windows-stelsel, en laai dan die APK-lêer vir analise.

Bytecode-Viewer

Met Bytecode-Viewer kan jy APK-lêers analiseer deur gebruik te maak van verskeie dekompilators. Na aflaai, voer Bytecode-Viewer uit, laai jou APK en kies die dekompilators wat jy wil gebruik vir gelyktydige analise.

Enjarify

Enjarify vertaal Dalvik-bytekode na Java-bytekode, wat Java-ontledingsinstrumente in staat stel om Android-toepassings meer doeltreffend te analiseer.

  • Om Enjarify te gebruik, voer uit: enjarify app.apk Dit genereer die Java-bytekode-ekwivalent van die verskafte APK.

CFR

CFR is in staat om moderne Java-funksies te dekomponeer. Gebruik dit soos volg:

  • Vir standaard dekompilasie: java -jar ./cfr.jar "app.jar" --outputdir "output_directory"
  • Vir groot JAR-lêers, pas die JVM-geheue-toewysing aan: java -Xmx4G -jar ./cfr.jar "app.jar" --outputdir "output_directory"

Fernflower

Fernflower, 'n analitiese dekompilator, vereis bou vanuit bron. Na die bou:

  • Dekompileer 'n JAR-lêer: java -jar ./fernflower.jar "app.jar" "output_directory" Haal dan die .java-lêers uit die gegenereerde JAR deur unzip te gebruik.

Krakatau

Krakatau bied gedetailleerde beheer oor dekompilasie, veral vir die hanteer van eksterne biblioteke.

  • Gebruik Krakatau deur die standaard biblioteekpad en die JAR-lêer wat gedekomponeer moet word, te spesifiseer: ./Krakatau/decompile.py -out "output_directory" -skip -nauto -path "./jrt-extractor/rt.jar" "app.jar"

procyon

Vir eenvoudige dekompilasie met procyon:

  • Dekompileer 'n JAR-lêer na 'n gespesifiseerde gids: procyon -jar "app.jar" -o "output_directory"
Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun: