Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
enjarify — Übersetzt Dalvik-Bytecode (DEX/APK) in äquivalenten Java-Bytecode und ermöglicht es Java-Analysewerkzeugen, Android-Anwendungen mit hoher Korrektheit auch für Randfälle zu verarbeiten. | Kitploit
Tools/GitHubGitHub/google/enjarify
Android-SicherheitStatische AnalyseCode-AnalyseReverse EngineeringMobile SicherheitBinäranalyseArchived
GitHubgoogle/enjarify

enjarify

Übersetzt Dalvik-Bytecode (DEX/APK) in äquivalenten Java-Bytecode und ermöglicht es Java-Analysewerkzeugen, Android-Anwendungen mit hoher Korrektheit auch für Randfälle zu verarbeiten.

Repository anzeigen
2.7k539vor 6 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Hinweis: Dieses Repository ist möglicherweise veraltet. Die zukünftige Entwicklung findet unter https://github.com/Storyyeller/enjarify statt.

Einleitung

Enjarify ist ein Werkzeug zum Übersetzen von Dalvik-Bytecode in äquivalenten Java-Bytecode. Dadurch können Java-Analysewerkzeuge Android-Anwendungen analysieren.

Verwendung und Installation

Enjarify ist eine reine Python-3-Anwendung, daher können Sie es einfach klonen und ausführen. Um es direkt auszuführen, vorausgesetzt Sie befinden sich im Hauptverzeichnis des Repositorys, können Sie einfach Folgendes eingeben:

root@kitploit:~
python3 -O -m enjarify.main yourapp.apk

Für den normalen Gebrauch möchten Sie wahrscheinlich die Wrapper-Skripte verwenden und es in Ihrem Pfad einrichten.

Linux

Der Einfachheit halber wird ein Wrapper-Shell-Skript namens enjarify.sh bereitgestellt. Es versucht, Pypy zu verwenden, falls verfügbar, da es schneller ist als CPython. Wenn Sie Enjarify von überall aus aufrufen können möchten, können Sie einen symbolischen Link von einem Ort in Ihrem PATH erstellen, z. B. ~/bin. Gehen Sie dazu wie folgt vor, vorausgesetzt Sie befinden sich im obersten Verzeichnis des Repositorys:

root@kitploit:~
ln -s "$PWD/enjarify.sh" ~/bin/enjarify

Windows

Es wird ein Wrapper-Batch-Skript namens enjarify.bat bereitgestellt. Um es von überall aus aufrufen zu können, fügen Sie einfach das Stammverzeichnis des Repositorys zu Ihrem PATH hinzu. Das Batch-Skript ruft immer den Python3-Interpreter auf. Wenn Sie pypy verwenden möchten, bearbeiten Sie einfach das Skript.

Verwendung

Angenommen, Sie haben das Skript korrekt in Ihrem Pfad eingerichtet, können Sie es von überall aus durch Eingabe von enjarify aufrufen, z. B.

root@kitploit:~
enjarify yourapp.apk

Die grundlegendste Verwendungsform besteht darin, eine APK-Datei oder DEX-Datei als Eingabe anzugeben. Wenn Sie eine Multidex-APK angeben, übersetzt Enjarify automatisch alle DEX-Dateien und gibt die Ergebnisse in einer einzigen kombinierten JAR-Datei aus. Wenn Sie eine DEX-Datei angeben, wird nur diese DEX-Datei übersetzt. Angenommen, Sie haben die DEX-Dateien manuell extrahiert, könnten Sie z. B. Folgendes tun:

root@kitploit:~
enjarify classes2.dex

Die Standard-Ausgabedatei ist [inputname]-enjarify.jar im aktuellen Verzeichnis. Um den Dateinamen für die Ausgabe explizit anzugeben, verwenden Sie die Option -o oder --output.

root@kitploit:~
enjarify yourapp.apk -o yourapp.jar

Standardmäßig weigert sich Enjarify, die Ausgabedatei zu überschreiben, falls sie bereits existiert. Um die Ausgabe zu überschreiben, verwenden Sie die Option -f oder --force.

Warum nicht dex2jar?

Dex2jar ist ein älteres Werkzeug, das ebenfalls versucht, Dalvik in Java-Bytecode zu übersetzen. Es funktioniert meist recht gut, aber viele obskure Funktionen oder Grenzfälle führen zu Fehlern oder sogar zu stillschweigend falschen Ergebnissen. Im Gegensatz dazu ist Enjarify darauf ausgelegt, in so vielen Fällen wie möglich zu funktionieren, selbst bei Code, bei dem Dex2jar versagen würde. Unter anderem behandelt Enjarify Unicode-Klassennamen, als mehrere Typen verwendete Konstanten, implizite Casts, Ausnahmehandler, die in den normalen Kontrollfluss springen, Klassen, die zu viele Konstanten referenzieren, sehr lange Methoden, Ausnahmehandler nach einem Catchall-Handler und statische Initialwerte des falschen Typs korrekt.

Einschränkungen

Enjarify übersetzt derzeit keine optionalen Metadaten wie Sourcefile-Attribute, Zeilennummern und Annotationen.

Enjarify bemüht sich, so viele Klassen wie möglich erfolgreich zu übersetzen, aber es gibt einige potenzielle Fälle, in denen dies aufgrund von Einschränkungen in Android, Java oder beiden einfach nicht möglich ist. Glücklicherweise tritt dies nur in konstruierten Umständen auf, daher sollte es in der Praxis kein Problem sein.

Leistungstipps

PyPy ist viel schneller als CPython. Informationen zur Installation von PyPy finden Sie unter http://pypy.org/. Stellen Sie sicher, dass Sie PyPy3 und nicht das normale PyPy erhalten. Das Linux-Wrapper-Skript verwendet automatisch den Befehl pypy3, falls verfügbar. Unter Windows müssen Sie das Wrapper-Skript selbst bearbeiten.

Standardmäßig führt Enjarify Optimierungen am Bytecode durch, die ihn für Menschen lesbarer machen (Copy Propagation, Entfernung ungenutzter Werte usw.). Wenn Sie dies nicht benötigen, können Sie die Geschwindigkeit erhöhen, indem Sie die Optimierungen mit der Option --fast deaktivieren. Beachten Sie, dass Enjarify in dem sehr seltenen Fall, dass eine Klasse ohne Optimierung zu groß für eine Class-Datei ist, automatisch einen erneuten Versuch mit allen Optimierungen durchführt. Daher hat diese Option keinen Einfluss auf die Anzahl der erfolgreich übersetzten Klassen.

Haftungsausschluss

Dies ist kein offizielles Google-Produkt (weder experimentell noch anderweitig), es ist lediglich Code, der zufällig Google gehört.

Tool herunterladen