AI Personal Learning
und praktische Anleitung
讯飞绘镜

GhidraMCP: Ein Reverse-Engineering-Tool zur Verbindung von KI mit Ghidra

Allgemeine Einführung

GhidraMCP ist ein Open-Source-Tool, dessen Hauptziel es ist, Künstliche Intelligenz (KI) mit Ghidra, einer leistungsstarken Reverse-Engineering-Software, zu kombinieren. Es automatisiert die Aufgabe der Analyse von Binärdateien, indem es großen Sprachmodellen (LLMs) ermöglicht, über das Model Context Protocol (MCP) Protokoll direkt auf Ghidra zu arbeiten. Dieses Tool wurde von LaurieWired auf GitHub entwickelt und im März 2025 veröffentlicht. Es eignet sich für Sicherheitsforscher, Programmierer oder Nutzer, die an Reverse Engineering interessiert sind. GhidraMCP soll ansonsten komplexe manuelle Analysen effizienter machen, insbesondere für Szenarien wie Malware-Analyse und Schwachstellenentdeckung.

GhidraMCP:连接AI与Ghidra的逆向工程工具-1


 

Funktionsliste

  • Automatisiertes Reverse Engineering: Steuerung von Ghidra durch KI zur automatischen Analyse von Binärdateien.
  • Methoden- und Datenumbenennung: Identifizieren Sie Methoden und Daten in Ihrem Code und erzeugen Sie automatisch besser lesbare Namen.
  • Parsing von Binärdateien: Auflistung der Funktionen, Klassen, Import- und Exportinformationen der Datei.
  • Unterstützung bei der Malware-Analyse: Hilft bei der Identifizierung potenzieller Sicherheitsschwachstellen und bösartiger Verhaltensweisen.
  • Unterstützt mehrere MCP Auftraggeber: Kompatibel Claude Desktop, 5ire und andere Clients.
  • Open Source und anpassbar: Die Benutzer können den Code ändern oder die Funktionalität nach Bedarf erweitern.

 

Hilfe verwenden

Einbauverfahren

GhidraMCP wird für die Arbeit mit Ghidra- und MCP-Clients benötigt. Im Folgenden werden die einzelnen Installationsschritte beschrieben:

  1. Vorbereiten der Umgebung
    • Vergewissern Sie sich, dass Sie Ghidra installiert haben, ein von der National Security Agency (NSA) entwickeltes Open-Source-Reverse-Engineering-Tool, das Sie von der Ghidra-Website herunterladen können.
    • Installieren Sie die Python-Umgebung. Python 3.8 oder höher wird empfohlen, da einige der Skripte von Python abhängen.
    • Laden Sie GhidraMCP. aus dem GitHub-Repository herunter. Klicken Sie auf "Releases", um die neueste Version der ZIP-Datei zu erhalten.
  2. Installation des Ghidra-Plug-ins
    • Entpacken Sie die heruntergeladene GhidraMCP-ZIP-Datei und suchen Sie die Plugin-Datei (normalerweise die .zip (Format).
    • Öffnen Sie Ghidra und rufen Sie das Menü auf File -> Install Extensions.
    • Klicken Sie auf die Schaltfläche "+", um die extrahierte Plugin-Datei auszuwählen, bestätigen Sie und starten Sie Ghidra neu.
    • Sobald das Plugin installiert ist, wird die GhidraMCP-Funktionalität automatisch in Ghidra integriert.
  3. Konfigurieren des MCP-Client
    GhidraMCP erfordert einen MCP-Client, um eine Verbindung zur KI herzustellen. Im Folgenden wird ein Beispiel für Claude Desktop und 5ire gegeben:

    • Claude Desktop Konfiguration
      • Öffnen Sie Claude Desktop und gehen Sie zu Settings -> Developer -> Edit Config.
      • Konfigurationsdatei bearbeiten claude_desktop_config.jsonfügen Sie Folgendes hinzu:
        {
        "mcpServers": {
        "ghidra": {
        "command": "python",
        "args": ["/你的绝对路径/bridge_mcp_ghidra.py"]
        }
        }
        }
        
      • sicher bridge_mcp_ghidra.py Der Dateipfad ist korrekt, diese Datei befindet sich im GhidraMCP-Downloadpaket.
    • 5Draht-Konfiguration
      • Öffnen Sie 5ire und gehen Sie zu Tools -> New.
      • Tragen Sie in den Einstellungen den Pfad und die Parameter für GhidraMCP ein und speichern Sie die Konfiguration.
    • Sobald die Konfiguration abgeschlossen ist, starten Sie den Client und die KI kann mit Ghidra über das MCP-Protokoll kommunizieren.
  4. Überprüfen der Installation
    • Öffnen Sie Ghidra und laden Sie eine Binärdatei (z. B. .exe vielleicht .bin).
    • Geben Sie einen Befehl in den MCP-Client ein, z. B. "Analysiere alle Funktionen dieser Datei". Wenn das Ergebnis normal ist, war die Installation erfolgreich.

Hauptfunktionen

  • Automatisierte Analyse von Binärdateien
    • Nachdem Sie die Zieldatei in Ghidra geöffnet haben, wechseln Sie zum MCP-Client.
    • Geben Sie einen Befehl in natürlicher Sprache ein, z. B. "alle Funktionen auflisten und umbenennen", und die KI ruft automatisch die Funktionen von Ghidra auf, analysiert die Datei und gibt die Ergebnisse zurück.
    • Die Ergebnisse werden in der Client-Oberfläche angezeigt und umfassen in der Regel eine Liste von Funktionen und automatisch generierten neuen Namen.
  • Umbenennung von Methoden und Daten
    • Geben Sie auf der Client-Seite "alle unbenannten Funktionen umbenennen" ein. Die KI wird anhand des Kontexts erraten, wofür die Funktion verwendet wird, und Ihnen einen intuitiveren Namen geben.
    • Wenn manuelle Anpassungen erforderlich sind, wird das umbenannte Ergebnis mit der Codeansicht von Ghidra synchronisiert.
  • Malware-Analyse
    • Nachdem Sie das Malware-Beispiel geladen haben, geben Sie "Auf potenzielle Schwachstellen prüfen" oder "Bösartiges Verhalten finden" ein.
    • Die KI durchsucht die Importtabellen, Zeichenfolgen und Aufrufbeziehungen der Datei und meldet mögliche Sicherheitsprobleme wie verdächtige Netzwerkanforderungen oder Dateioperationen.

Arbeitsablauf

  1. Starten Sie die Clients Ghidra und MCP.
  2. Importieren Sie die Binärdatei in Ghidra und klicken Sie auf "Analysieren", um das erste Parsing zu starten.
  3. Wechseln Sie zum MCP-Client und geben Sie einen Analysebefehl ein, z. B. "Extrahiere alle Strings" oder "Analysiere Funktionsaufrufe".
  4. Sehen Sie sich die zurückgegebenen Ergebnisse an, passen Sie die Anweisungen nach Bedarf an oder überprüfen Sie die Details manuell.
  5. Beim Speichern der Analyseergebnisse unterstützt Ghidra den Export in eine Projektdatei zur späteren Verwendung.

caveat

  • Vergewissern Sie sich, dass das Netz offen ist, da einige KI-Modelle online aufgerufen werden müssen.
  • Wenn Sie auf einen Fehler stoßen, überprüfen Sie die bridge_mcp_ghidra.py oder schauen Sie auf der Issues-Seite auf GitHub nach Hilfe.
  • Bei großen Dateien kann die Analyse mehr Zeit in Anspruch nehmen, und es wird empfohlen, zunächst kleine Proben zu testen.

 

Anwendungsszenario

  1. Malware-Forschung
    Sicherheitsforscher können mit GhidraMCP Viren oder Trojaner schnell analysieren, um die Ausführungslogik und die versteckten Funktionen von bösartigem Code zu finden.
  2. Software-Schwachstellenanalyse (Vulnerability Mining)
    Entwickler können damit Binärdateien auf potenzielle Sicherheitslücken wie Pufferüberläufe oder unbefugten Zugriff untersuchen.
  3. Reverse Engineering lernen
    Anfänger können mit Hilfe von KI schnell die Struktur und Funktion von Binärdateien verstehen, wodurch die Lernschwelle gesenkt wird.

 

QA

  1. Welche Betriebssysteme werden von GhidraMCP unterstützt?
    Es ist mit allen von Ghidra unterstützten Systemen kompatibel, einschließlich Windows, Mac und Linux.
  2. Programmiererfahrung erforderlich?
    Nicht erforderlich. Die Installation und grundlegende Nutzung erfolgt Schritt für Schritt. Wenn Sie jedoch die Funktionalität anpassen möchten, sind Java- oder Python-Kenntnisse von Vorteil.
  3. Kann es offline verwendet werden?
    Ja, aber einige der KI-Modelle müssen vernetzt sein. Wenn Sie lokale Modelle verwenden, können Sie sie komplett offline betreiben.
Darf nicht ohne Genehmigung vervielfältigt werden:Leiter des AI-Austauschkreises " GhidraMCP: Ein Reverse-Engineering-Tool zur Verbindung von KI mit Ghidra
de_DEDeutsch