APK decompilers
Her bir araç hakkında daha fazla bilgi için https://eiken.dev/blog/2021/02/how-to-break-your-jar-in-2021-decompilation-guide-for-jars-and-apks/#cfr adresindeki orijinal gönderiyi kontrol edin.
Öncü GUI Java decompiler olan JD-Gui, APK dosyaları içindeki Java kodunu incelemenizi sağlar. Kullanımı oldukça basittir; APK'yı aldıktan sonra, kodu incelemek için JD-Gui ile açmanız yeterlidir.
Jadx, Android uygulamalarından Java kodunu decompile etmek için kullanıcı dostu bir arayüz sunar. Farklı platformlarda kullanım kolaylığı nedeniyle önerilir.
GUI'yi başlatmak için, bin dizinine gidin ve şunu çalıştırın:
jadx-gui
Komut satırı kullanımı için, bir APK'yı decompile etmek için:
jadx app.apk
Çıktı dizinini belirtmek veya decompilation seçeneklerini ayarlamak için:
jadx app.apk -d <path to output dir> --no-res --no-src --no-imports
GDA, yalnızca Windows için bir araçtır ve Android uygulamalarını tersine mühendislik için kapsamlı özellikler sunar. GDA'yı Windows sisteminize kurun ve çalıştırın, ardından analiz için APK dosyasını yükleyin.
Bytecode-Viewer ile birden fazla decompiler kullanarak APK dosyalarını analiz edebilirsiniz. İndirdikten sonra, Bytecode-Viewer'ı çalıştırın, APK'nızı yükleyin ve eşzamanlı analiz için kullanmak istediğiniz decompiler'ları seçin.
Enjarify, Dalvik bytecode'u Java bytecode'a çevirir, bu da Java analiz araçlarının Android uygulamalarını daha etkili bir şekilde analiz etmesini sağlar.
Enjarify'yi kullanmak için, şunu çalıştırın:
enjarify app.apk
Bu, sağlanan APK'nın Java bytecode eşdeğerini oluşturur.
CFR, modern Java özelliklerini decompile edebilir. Aşağıdaki gibi kullanın:
Standart decompilation için:
java -jar ./cfr.jar "app.jar" --outputdir "output_directory"
Büyük JAR dosyaları için, JVM bellek tahsisini ayarlayın:
java -Xmx4G -jar ./cfr.jar "app.jar" --outputdir "output_directory"
Fernflower, analitik bir decompiler'dır ve kaynak koddan inşa edilmesi gerekir. İnşa ettikten sonra:
Bir JAR dosyasını decompile edin:
java -jar ./fernflower.jar "app.jar" "output_directory"
Ardından, oluşturulan JAR'dan.java
dosyalarını çıkarmak içinunzip
kullanın.
Krakatau, decompilation üzerinde detaylı kontrol sunar, özellikle dış kütüphaneleri işlerken.
Krakatau'yu kullanmak için standart kütüphane yolunu ve decompile edilecek JAR dosyasını belirtin:
./Krakatau/decompile.py -out "output_directory" -skip -nauto -path "./jrt-extractor/rt.jar" "app.jar"
procyon ile basit bir decompilation için:
Bir JAR dosyasını belirtilen dizine decompile edin:
procyon -jar "app.jar" -o "output_directory"
Last updated