APK decompilers

Support HackTricks

Kwa maelezo zaidi kuhusu kila chombo angalia chapisho la asili kutoka https://eiken.dev/blog/2021/02/how-to-break-your-jar-in-2021-decompilation-guide-for-jars-and-apks/#cfr

Kama decompiler ya GUI ya kwanza ya Java, JD-Gui inakuwezesha kuchunguza msimbo wa Java ndani ya faili za APK. Ni rahisi kutumia; baada ya kupata APK, fungua tu na JD-Gui ili kukagua msimbo.

Jadx inatoa kiolesura rafiki kwa mtumiaji kwa ajili ya decompiling msimbo wa Java kutoka kwa programu za Android. Inapendekezwa kwa urahisi wake wa matumizi kwenye majukwaa tofauti.

  • Ili kuzindua GUI, nenda kwenye saraka ya bin na tekeleza: jadx-gui

  • Kwa matumizi ya mstari wa amri, decompile APK kwa: jadx app.apk

  • Ili kubainisha saraka ya matokeo au kurekebisha chaguzi za decompilation: jadx app.apk -d <path to output dir> --no-res --no-src --no-imports

GDA, chombo cha Windows pekee, kinatoa vipengele vingi kwa ajili ya uhandisi wa nyuma wa programu za Android. Sakinisha na endesha GDA kwenye mfumo wako wa Windows, kisha pakua faili ya APK kwa uchambuzi.

Pamoja na Bytecode-Viewer, unaweza kuchambua faili za APK kwa kutumia decompilers kadhaa. Baada ya kupakua, endesha Bytecode-Viewer, pakua APK yako, na chagua decompilers unazotaka kutumia kwa uchambuzi wa pamoja.

Enjarify inatafsiri Dalvik bytecode kuwa Java bytecode, ikiruhusu zana za uchambuzi wa Java kuchambua programu za Android kwa ufanisi zaidi.

  • Ili kutumia Enjarify, endesha: enjarify app.apk Hii inazalisha Java bytecode sawa na APK iliyotolewa.

CFR ina uwezo wa decompiling vipengele vya kisasa vya Java. Tumia kama ifuatavyo:

  • Kwa decompilation ya kawaida: java -jar ./cfr.jar "app.jar" --outputdir "output_directory"

  • Kwa faili kubwa za JAR, rekebisha ugawaji wa kumbukumbu ya JVM: java -Xmx4G -jar ./cfr.jar "app.jar" --outputdir "output_directory"

Fernflower, decompiler wa uchambuzi, inahitaji kujengwa kutoka chanzo. Baada ya kujenga:

  • Decompile faili ya JAR: java -jar ./fernflower.jar "app.jar" "output_directory" Kisha, toa faili za .java kutoka kwa JAR iliyozalishwa kwa kutumia unzip.

Krakatau inatoa udhibiti wa kina juu ya decompilation, hasa kwa kushughulikia maktaba za nje.

  • Tumia Krakatau kwa kubainisha njia ya maktaba ya kawaida na faili ya JAR ya decompile: ./Krakatau/decompile.py -out "output_directory" -skip -nauto -path "./jrt-extractor/rt.jar" "app.jar"

Kwa decompilation rahisi na procyon:

  • Decompile faili ya JAR kwenye saraka iliyobainishwa: procyon -jar "app.jar" -o "output_directory"

Last updated