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
rz-ghidra — Tiefe Integration des Ghidra-Dekompilierers und des Sleigh-Disassemblers für rizin | Kitploit
Tools/GitHubGitHub/rizinorg/rz-ghidra
Statische AnalyseReverse EngineeringBinäranalyse
GitHubrizinorg/rz-ghidra

rz-ghidra

Tiefe Integration des Ghidra-Dekompilierers und des Sleigh-Disassemblers für rizin

Repository anzeigen
965108vor 4 TagenVon 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
rz-ghidra Logo

rz-ghidra

Dies ist eine Integration des Ghidra-Decompilers und des Sleigh-Disassemblers für Rizin. Es basiert ausschließlich auf dem Decompiler-Teil von Ghidra, der vollständig in C++ geschrieben ist, sodass Ghidra selbst überhaupt nicht benötigt wird und das Plugin eigenständig gebaut werden kann. Dieses Projekt wurde ursprünglich für radare2 auf der r2con 2019 im Rahmen des Cutter-Vortrags vorgestellt: https://youtu.be/eHtMiezr7l8?t=950

Verwendung

root@kitploit:~
Usage: pdg   # Native Ghidra decompiler plugin
| pdg           # Decompile current function with the Ghidra decompiler
| pdgd          # Dump the debug XML Dump
| pdgx          # Dump the XML of the current decompiled function
| pdgj          # Dump the current decompiled function as JSON
| pdgo          # Decompile current function side by side with offsets
| pdgs          # Display loaded Sleigh Languages
| pdg*          # Decompiled code is returned to rizin as comment

Die folgenden Konfigurationsvariablen (für den e-Befehl) können verwendet werden, um das Verhalten von rz-ghidra anzupassen:

root@kitploit:~
ghidra.cmt.cpp: C++ comment style

ghidra.cmt.indent: Comment indent ghidra.indent: Indent increment ghidra.lang: Custom Sleigh ID to override auto-detection (e.g. x86:LE:32:default) ghidra.linelen: Max line length ghidra.nl.brace: Newline before opening '{' ghidra.nl.else: Newline before else ghidra.sleighhome: SLEIGHHOME

Hier muss ghidra.sleighhome auf ein Verzeichnis zeigen, das die *.sla, *.lspec, ...-Dateien für die Architekturen enthält, die vom Decompiler unterstützt werden sollen. Dies wird jedoch automatisch eingerichtet, wenn das rz-pm-Paket verwendet wird oder die Installation wie unten gezeigt erfolgt.

Bauen

Stellen Sie zunächst sicher, dass das in diesem Repository enthaltene Submodul abgerufen und auf dem neuesten Stand ist:

root@kitploit:~
git submodule init
git submodule update

Dann kann das Rizin-Plugin wie folgt gebaut und installiert werden:

root@kitploit:~
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=~/.local ..
make
make install

Setzen Sie hier CMAKE_INSTALL_PREFIX auf einen Speicherort, von dem Rizin das Plugin laden kann. Der Installationsschritt ist für die Funktion des Plugins erforderlich, da er die Installation der erforderlichen Sleigh-Dateien umfasst. Wenn Sie Rizin aus Git verwenden, setzen Sie auch CMAKE_PREFIX_PATH auf das Rizin-Installationsverzeichnis.

Um auch das Cutter-Plugin zu bauen, muss Cutter aus dem Quellcode unter einem bestimmten Prefix installiert sein, das optional mit -DCMAKE_PREFIX_PATH=<path> angegeben werden kann. Übergeben Sie dann -DBUILD_CUTTER_PLUGIN=ON an cmake, um das Plugin zu aktivieren:

root@kitploit:~
/my/path/rz-ghidra> mkdir build && cd build
/my/path/rz-ghidra/build> cmake -DBUILD_CUTTER_PLUGIN=ON -DCMAKE_PREFIX_PATH=/path/to/cutter/prefix -DCMAKE_INSTALL_PREFIX=~/.local ..
/my/path/rz-ghidra/build> make && make install

Standardmäßig wird das Cutter-Plugin in einem automatisch gewählten Pfad im Home-Verzeichnis des aktuellen Benutzers installiert. Dieser Pfad kann mit -DCUTTER_INSTALL_PLUGDIR überschrieben werden.

Versionierung und Rizin-Kompatibilität

Rizin hat eine sich schnell entwickelnde C-API, daher ist es notwendig, explizit anzugeben, welche Versionen von rz-ghidra mit welchen Versionen von Rizin kompatibel sind:

Bei Verwendung von Rizin und rz-ghidra aus Git:

  • rz-ghidra-Branch dev folgt dem Rizin-Branch dev.
  • rz-ghidra-Branch stable folgt dem Rizin-Branch stable.

Bezüglich der Releases wird rz-ghidra in der Regel gleichzeitig mit Rizin veröffentlicht und verwendet oft die gleichen Versionsnummern (aber nicht garantiert, verlassen Sie sich nicht auf diese Zahlen!). Außerdem wird mit jedem Rizin-Release ein Tag wie rz-0.1.2 auf rz-ghidra erstellt, das genau auf ein rz-ghidra-Release verweist und anzeigt, dass dieses Release mit der angegebenen Rizin-Version kompatibel ist. Diese Tags können von Distributionsbetreuern verwendet werden, um nachzuschlagen, wie Abhängigkeiten eingerichtet werden.

Lizenz

Bitte beachten Sie, dass dieses Plugin unter der LGPLv3 verfügbar ist, die strenger ist als die Lizenz von Ghidra!

Dieses Programm ist freie Software: Sie können es unter den Bedingungen der GNU Lesser General Public License, wie von der Free Software Foundation veröffentlicht, entweder Version 3 der Lizenz oder (nach Ihrer Wahl) jeder späteren Version weitergeben und/oder modifizieren.

Dieses Programm wird in der Hoffnung verteilt, dass es nützlich sein wird, aber OHNE JEDE GEWÄHRLEISTUNG; ohne sogar die stillschweigende Garantie der MARKTGÄNGIGKEIT oder EIGNUNG FÜR EINEN BESTIMMTEN ZWECK. Weitere Einzelheiten finden Sie in der GNU Lesser General Public License.

Sie sollten eine Kopie der GNU Lesser General Public License zusammen mit diesem Programm erhalten haben. Wenn nicht, siehe https://www.gnu.org/licenses/.

Tool herunterladen