Bytecode-Viewer
Bytecode Viewer – ein leichter, benutzerfreundlicher Java/Android-Bytecode-Viewer, Dekompiler und mehr.
Neue Funktionen
- Zur Deklaration springen
- Verschiebbare Registerkarten
- CVE-2022-21675 gepatcht (Stellen Sie sicher, dass Sie ein Upgrade auf v2.11.X durchführen)
- Standardmäßig dunkler Modus mit mehreren Themen
- Übersetzt in über 30 Sprachen, darunter: Arabisch, Deutsch, Japanisch, Mandarin, Russisch, Spanisch
- Plugin Writer – Erstellen und bearbeiten Sie externe Plugins in BCV
- Das Bearbeiten/Kompilieren von Java und Bytecode wurde korrigiert
- Plugin-Konsole mit Registerkarten
- Klicken Sie mit der rechten Maustaste auf die Menüs in den Ressourcen- und Suchfeldern
- Javap-Disassembler
- XAPK-Unterstützung
- Aktuelle Abhängigkeiten (inkl. Decompiler wie CFR, JD-GUI etc.)
- Unterstützung für Java-Dateien hinzugefügt, die mit JDK > 13 kompiliert wurden
- Auf Maven migriert
Links
- BCV Discord
- Webseite
- Quellcode
- Bin/Archiv
- Java-Dokumente
- Lizenz (Copyleft)
- Credits
- Mitwirken
- Fehler melden
- Diskussionsforum
Hauptmerkmale
- Zum Dekompilieren und Durchsuchen von Java Jars und Android APKs einfach per Drag & Drop verschieben
- Dateiformatunterstützung für: Klasse, Jar, XAPK, APK, DEX, WAR, JSP, Bildressourcen, Textressourcen und mehr
- 6 integrierte Java-Dekompiler: Krakatau, CFR, Procyon, FernFlower, JADX, JD-GUI
- 3 integrierte Bytecode-Disassembler, darunter 2 Assembler: Krakatau und Smali/BakSmali
- APK/DEX-Unterstützung von Dex2Jar und Enjarify
- Integrierter Java-Compiler
- Erweiterte statische Suchfunktion
- Anpassbare Benutzeroberfläche
- Plugins + Script-Engine-Design
- API zum Scannen bösartiger Codes
- Übersetzt in über 30 Sprachen, darunter: Arabisch, Deutsch, Japanisch, Mandarin, Russisch, Spanisch.
- Exportieren Sie die Funktionalität als ausführbares Jar, Zip, APK, dekompilieren Sie alles als Zip usw.
- Und mehr! Probieren Sie es selbst aus!
Befehlszeileneingabe
-help Displays the help menu
-clean Deletes the BCV directory
-english Forces English language translations
-list Displays the available decompilers
-decompiler <decompiler> Selects the decompiler, procyon by default
-i <input file> Selects the input file (Jar, Class, APK, ZIP, DEX all work automatically)
-o <output file> Selects the output file (Java or Java-Bytecode)
-t <target classname> Must either be the fully qualified classname or "all" to decompile all as zip
-nowait Doesn't wait for the user to read the CLI messages
Was ist Bytecode Viewer?
Bytecode Viewer (BCV) ist eine Advanced Lightweight Java/Android Reverse Engineering Suite. Basierend auf mehreren Open-Source-Tools soll BCV den Umkehrprozess unterstützen.
BCV verfügt über 6 Dekompilierer, 3 Disassembler, 2 Assembler, 2 APK-Konverter, erweiterte Suche, Debugging und mehr.
Es ist vollständig in Java geschrieben und Open Source. Es wird derzeit von Konloch gepflegt und weiterentwickelt.
Gibt es eine Demo?
Bitte beachten Sie, dass es sich bei dieser Demo um eine sehr alte Version handelt
Wie installiere ich BCV?
Laden Sie die neueste Version von https://github.com/konloch/bytecode-viewer/releases herunter und führen Sie Bytecode-Viewer-2.10.x.jar aus. Möglicherweise müssen Sie es über die Befehlszeile java -jar Bytecode-Viewer-2.10.x.jar
ausführen (ersetzen Sie das X durch die aktuelle Nebenversion).
Wie kann ich BCV nutzen?
- Beginnen Sie mit einer Jar-, Zip-, ClassFile- oder Android-Datei (APK, DEX, XAPK usw.) und ziehen Sie sie in BCV. Der Dekodierungsvorgang wird automatisch gestartet.
- Von hier aus können Sie die Decompiler auswählen, die Sie verwenden möchten, indem Sie „Ansichtsbereich“ > „Ansicht 1“, „Ansicht 2“, „Ansicht 3“ usw. auswählen.
- In den Ansichtsfenstern werden bis zu drei Dekompiler nebeneinander angezeigt. Sie können hier auch die Bearbeitbarkeit umschalten.
- Wählen Sie die Ressource aus, die Sie öffnen möchten, indem Sie mithilfe der Ressourcenliste navigieren. BCV wird sein Bestes tun, um sie anzuzeigen (Dekompilierung, Disassemblierung usw.).
- Sie können Plugins verwenden, die Ihnen bei der Suche helfen, zusammen mit der Verwendung des Suchbereichs in der linken unteren Ecke.
Wie funktionieren die Plugins?
Es gibt auch ein Plugin-System, das Ihnen die Interaktion mit den geladenen Klassendateien ermöglicht. Sie könnten zum Beispiel einen String-Deobfuscator, einen Schadcode-Sucher oder alles andere schreiben, was Ihnen einfällt.
Sie können entweder eines der vorgefertigten Plugins verwenden oder Ihr eigenes schreiben. Das Plugin-System unterstützt Java- und Javascript-Scripting.
Sobald ein Plugin aktiviert ist, führt es das Plugin mit einer ClassNode ArrayList jeder einzelnen in BCV geladenen Klasse aus, sodass der Benutzer es vollständig mit ASM verwalten kann.
Anleitung zum Kompilieren
Klonen Sie einfach dieses Repo und führen Sie mvn package
aus. So einfach ist das!
Arbeite an der Quelle
Öffnen Sie das Maven-Projekt (öffnen Sie z. B. in IntelliJ die pom.xml
als Projektdatei).
Die Benutzeroberfläche hinkt hinterher
Ändern Sie das Thema für Ihre Systeme. Gehen Sie zu View->Visual Settings->Window Theme
und wählen Sie System Theme
aus.
Probleme mit dem Java-Heap-Speicherplatz (java.lang.OutOfMemoryError)
Starten Sie BCV mit mehr RAM, z. B. java -Xmx3G -jar BCV.jar
Probleme mit Dateiberechtigungen (java.io.FileNotFoundException)
Klicken Sie mit der rechten Maustaste auf die JAR-Datei, gehen Sie zu Eigenschaften und wählen Sie unten auf der Registerkarte „Allgemein“ unter „Sicherheit“ die Option „Blockierung aufheben“ aus.
Probleme mit APK-Dateiberechtigungen (java.io.FileNotFoundException)
Führen Sie BCV als Administrator aus.
Sind Sie ein Java Reverse Engineer? Willst du lernen?
Treten Sie noch heute dem Bytecode Club bei! - https://the.bytecode.club