Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
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
dexcalibur — [Offiziell] Android Reverse Engineering Tool, das auf dynamische Instrumentierungsautomatisierung mit Frida spezialisiert ist. Es disassembliert DEX, analysiert es statisch, generiert Hooks, entdeckt reflektierte Methoden, speichert abgefangene Daten und macht neue Dinge daraus. Ziel ist es, eine All-in-One-Plattform für Android Reverse Engineering zu sein. | Kitploit
Tools/GitHubGitHub/reversenseorg/dexcalibur
Android-SicherheitStatische AnalyseDynamische Analyse (Sandboxing)Reverse EngineeringDebuggerFuzzingMobile SicherheitBinäranalyse

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →

Über

GitHub
reversenseorg/dexcalibur

dexcalibur

Repository anzeigen
1.2k13024vor 23 TagenVon Kitploit geprüft

[Offiziell] Android Reverse Engineering Tool, das auf dynamische Instrumentierungsautomatisierung mit Frida spezialisiert ist. Es disassembliert DEX, analysiert es statisch, generiert Hooks, entdeckt reflektierte Methoden, speichert abgefangene Daten und macht neue Dinge daraus. Ziel ist es, eine All-in-One-Plattform für Android Reverse Engineering zu sein.

Teilen

WiP : Umzug zu Dexcalibur 2.0 | Codename: Reversense

npm dependencies npm npm Docker Automated build Build Status Twitter Follow PRs Welcome Maintainability

Dexcalibur banner

Dexcalibur

Dexcalibur ist eine Android Reverse-Engineering-Plattform, die sich auf die Automatisierung von Instrumentierung konzentriert. Ihre Besonderheit ist der Einsatz dynamischer Analyse zur Verbesserung statischer Analyseheuristiken. Sie zielt darauf ab, langweilige Aufgaben im Zusammenhang mit dynamischer Instrumentierung zu automatisieren, wie z. B.:

  • Dekompilieren/disassemblieren von abgefangenem Bytecode zur Laufzeit
  • Hook-Code schreiben und viele Hook-Nachrichten verwalten
  • Nach interessanten Mustern/Dingen zum Hooken suchen
  • Durch Hook gesammelte Daten verarbeiten (Dex-Datei, aufgerufene Methode, Klassenlader, ...)
  • und so weiter ...

Aber nicht nur das, denn Dexcalibur verfügt über eine eigene statische Analyse-Engine und kann teilweise Smali-Code ausführen.

Möchtest du etwas teilen oder brauchst du Hilfe? Tritt unseren offiziellen Chats bei:

Telegram - der schnellste Weg, um eine Antwort zu erhalten

https://discord.gg/Pfw7Kc3dS

Offizielle Dokumentation ist hier (Webseite - in Arbeit) verfügbar.

Aktuelle Neuigkeiten findest du hier: http://docs.dexcalibur.org/News.html

Demo-Videos von Dexcalibur ansehen: Demo: Weniger als 1 Minute, um 61 Methoden zu hooken? Kein Problem. (youtube)

Wie kann man Dexcalibur unterstützen ?

Trage bei !

Zögere nicht ! Es gibt mehrere Möglichkeiten, beizutragen :

  • Einen Pull-Request zu einem Fix oder einer neuen Funktion erstellen
  • Ein Issue erstellen, um mir beim Patchen/Verbessern der Tools zu helfen
  • Mir bei der Entwicklung der UI helfen
  • Mir eine E-Mail mit deinem Feedback senden
  • usw ...

A. Installation

A.1 Neue Installation

Gehe zur Installationsdokumentation

Alternative: Docker verwenden

  • auf deinem Host, installiere adb (und ggf. einen Android-Emulator)
  • docker-compose build android-dexcalibur
  • docker run --rm -it --net=host -v /tmp/dexcalibur:/shared -p 8000:8000 dexcalibur:2023.01 /bin/bash

A.2 Dexcalibur starten

Für Linux und macOS

NPM-Installation: Wenn Dexcalibur global mit NPM installiert wurde (Option -g), kann Dexcalibur vom Terminal aus mit $ dexcalibur gestartet werden, ansonsten kann es mit $ node $(node root -g dexcalibur)/dexcalibur/dexcalibur.js gestartet werden.

Installation aus dem Quellcode: Führe im Ordner dexcalibur den Befehl $ dexcalibur oder $ node dexcalibur.js aus.

Für Windows

NPM-Installation: Auch wenn Dexcalibur global mit NPM installiert wurde (Option -g), muss Dexcalibur vom Terminal aus mit folgendem Befehl gestartet werden: node <NPM_ROOT>/dexcalibur/dexcalibur.js.

Installation aus dem Quellcode: Führe im Ordner dexcalibur im Terminal den Befehl node dexcalibur.js aus.

A.3 Update

Von Version <= 0.6.x

Verwendest du eine frühere Version von Dexcalibur ?

Befolge die gleichen Schritte wie bei einer Neuinstallation, und wenn du den Arbeitsbereichspfad eingeben musst, gib den Pfad deines aktuellen Arbeitsbereichs ein.

Von Version >= 0.7

Einfach durch Ausführen von:

$  npm install -g dexcalibur

Vorhandene Konfiguration und Arbeitsbereich werden automatisch erkannt.

C. Screenshots

Die folgenden Screenshots veranschaulichen die automatische Aktualisierung von xrefs zur Laufzeit.

Xref auto update

Features

D. Funktionen und Einschränkungen

Derzeit besteht die größte Einschränkung darin, dass Dexcalibur keinen Quellcode für Hooks generieren kann, die auf native Funktionen (in JNI-Bibliotheken) abzielen. Du kannst jedoch manuell einen Frida-Interceptor deklarieren, indem du einen Hook bearbeitest.

Da Dexcalibur derzeit noch keine Funktionen zur Analyse nativer Teile wie JNI-Bibliotheken oder JNA bietet, wurden nur Funktionen und Einschränkungen im Zusammenhang mit dem Java-Teil detailliert beschrieben.

Die Analysegenauigkeit hängt von der Vollständigkeit des Android-API-Images ab, das in den frühen Schritten der Analyse verwendet wird. Das bedeutet, dass bei Verwendung einer DEX-Datei, die aus der Android.jar-Datei des Android SDK generiert wurde, einige Verweise auf interne Methoden, Felder oder Klassen der Android-Java-API fehlen können. Bessere Ergebnisse werden erzielt, wenn die Analyse von einer "boot.oat"-Datei ausgeht, die direkt von einem echten Gerät mit der erwarteten Android-Version extrahiert wurde.

D.1 Funktionen

D.1.A Statischer Analysator

TODO: Text schreiben

D.1.B Hook-Manager

TODO: Text schreiben

D.1.C Smali-VM von Dexcalibur

Verfolgte Verhaltensweisen

Der statische Analysator, der in die Aktion "Smali ausführen (VM)" eingebunden ist, kann die folgenden Verhaltensweisen erkennen, akzeptieren und verfolgen:

  • Zielregister außerhalb des gültigen Bereichs (Register außerhalb von v0 - v255)
  • Quellregister außerhalb des gültigen Bereichs (Register außerhalb von v0 - v65535)
  • Ungültige Anweisungen erkennen, die implizit eine interne Ausnahme auslösen
  • Einige Teile von gültigem Bytecode erkennen, die nicht der Android-Spezifikation entsprechen
  • Länge eines undefinierten Arrays berechnen
  • Undefiniertes Array füllen
  • und mehr ...

Derzeit werden Handler/Listener für solche ungültigen Anweisungen nicht unterstützt, aber Ereignisse werden verfolgt und dargestellt.

Dexcalibur IR

Die VM erzeugt eine benutzerdefinierte und vereinfachte Zwischendarstellung (IR), die nur zur Unterstützung des Analysten bei seiner Analyse angezeigt wird.

Abhängig vom Wert der Aufrufstapeltiefe und der Konfiguration kann die IR Anweisungen enthalten oder nicht, die in der aufgerufenen Funktion ausgeführt werden. Wenn die Ausführung in einen try-Block eintritt und zur Rückkehr fortfährt, aber nie den catch-Block ausführt, wird der catch-Block nicht dargestellt. Tatsächlich besteht der Zweck von Dexcalibur IR darin, nur das darzustellen, "was ausgeführt wird" oder "was in Abhängigkeit vom Wert eines Symbols ausgeführt werden könnte", im VM-Kontext.

Dexcalibur IR hilft, eine bereinigte Version des Bytecodes zu lesen, indem unnötige goto und opaque-Prädikate entfernt werden. Die Dexcalibur IR kann von der VM mit 2 Vereinfachungsstufen generiert werden:

Tool herunterladen