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.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
IDAssist — KI-gestütztes Reverse-Engineering-Plugin für IDA Pro | Kitploit
Tools/GitHubGitHub/symgraph/idassist
Statische AnalyseSchwachstellenanalyseCode-AnalyseReverse EngineeringDebuggerInformationsbeschaffungBinäranalyseMaschinelles LernenLernen & BildungKI-gestütztes Reverse Engineering
GitHubsymgraph/idassist
70573181vor 1 MonatVon Kitploit geprüft

IDAssist

KI-gestütztes Reverse-Engineering-Plugin für IDA Pro

Repository anzeigen

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
# IDAssist

*KI-gestütztes Reverse-Engineering-Plugin für IDA Pro*

**Autor:** Jason Tang

## Beschreibung

IDAssist ist ein IDA-Pro-Plugin, das LLM-gestützte Analyse direkt in die IDA-Oberfläche integriert und KI-unterstütztes Reverse-Engineering von Binärdateien durch konfigurierbare LLM-Anbieter, semantische Wissensgraphen, RAG-Dokumentensuche und eine breite Palette von LLM-Anbietern bietet.

IDAssist ist mit Python und PySide6 entwickelt, läuft als andockbares Panel innerhalb von IDA Pro 9.0+ und kommuniziert mit LLM-Anbietern (OpenAI, Anthropic, Ollama, LiteLLM und mehr), um Funktionen zu analysieren, Umbenennungen vorzuschlagen, Fragen zum Code zu beantworten und einen durchsuchbaren Wissensgraphen einer gesamten Binärdatei zu erstellen.

<!-- SCREENSHOT: IDAssist main interface showing the Explain tab with a function explanation and security analysis panel -->
![Screenshot](https://assets.kitploit.com/production/public/readmes/13845/a8d641f250f37a6e8112849f84bbea6d77d333b63ca8f777fbdf93f9f0d137ce.gif)

## Hauptfunktionen

**Funktionserklärung** — Erzeugt detaillierte Erklärungen in natürlicher Sprache für dekompilierte Funktionen mit automatischer Sicherheitsanalyse, einschließlich Risikostufe, Aktivitätsprofil, Sicherheitskennzeichen und API-Erkennung.

**Interaktiver Abfrage-Chat** — Stellen Sie Fragen zur Binärdatei mit persistentem Chat-Verlauf. Verwenden Sie Kontextmakros (`#func`, `#addr`, `#line`, `#range`), um Funktionscode, Adressen oder Disassemblierungsbereiche in Abfragen einzufügen.

**Automatisierte Aktionen** — KI-gestützte Umbenennungsvorschläge für Funktionen, Variablen und Typen. Überprüfen Sie vorgeschlagene Änderungen in einer Tabelle mit Konfidenzwerten und wenden Sie ausgewählte Aktionen auf die IDB an.

**Semantischer Wissensgraph** — Erstellen und erkunden Sie einen Wissensgraphen der Funktionen, Aufrufbeziehungen, Datenflüsse und Sicherheitsmerkmale der Binärdatei. Enthält visuelle Graphdarstellung, semantische Suche und Community-Erkennung.

**RAG-Dokumentensuche** — Laden Sie Referenzdokumente (`.txt`, `.md`, `.rst`, `.pdf`) hoch und verwenden Sie sie als Kontext bei LLM-Abfragen. Unterstützt hybride Text+Vektor-Suche über Whoosh-Indexierung.

**SymGraph-Integration** — Übertragen und abrufen Sie Funktionsnamen, Variablennamen, Typen und Graphdaten von der kollaborativen Plattform SymGraph. Enthält einen mehrstufigen Assistenten mit Konfliktlösung für Abrufe.

**Einstellungsverwaltung** — Konfigurieren Sie mehrere LLM- und MCP-Anbieter, verwalten Sie SymGraph-API-Anmeldedaten, passen Sie den System-Prompt an und legen Sie Datenbankpfade fest.

## Erweiterte Funktionen

### ReAct Agent

Der Abfrage-Reiter unterstützt einen autonomen ReAct-Agentenmodus (Reasoning + Acting). Wenn aktiviert, plant das LLM eine Untersuchungsstrategie, führt Werkzeuge zur Informationssammlung aus, reflektiert über Ergebnisse und synthetisiert eine umfassende Antwort – alles automatisch über mehrere Denkrunden hinweg.

### Extended Thinking

Konfigurieren Sie die Denkaufwandstufen, um zu steuern, wie viel das LLM vor der Antwort „denkt“:

| Stufe | Denkbudget | Am besten geeignet für |
|-------|------------|------------------------|
| Keine | Deaktiviert | Schnelle, einfache Abfragen |
| Niedrig | ~2K Tokens | Einfache Analyse |
| Mittel | ~10K Tokens | Mittlere Komplexität |
| Hoch | ~25K Tokens | Tiefgehende Analyse, komplexer Code |

### MCP Integration

IDAssist kann eine Verbindung zu externen MCP-Servern für werkzeugunterstützte LLM-Interaktionen herstellen, bei denen das Modell programmatisch Funktionen inspizieren, Disassemblierung lesen, Querverweise abfragen und die IDB während des Denkens modifizieren kann. Es werden sowohl URL-basierte MCP-Server (`SSE` oder `Streamable HTTP`) als auch stdio-basierte MCP-Server unterstützt, die über einen lokalen CLI-Befehl gestartet werden. IDAssist bietet auch integrierte interne Werkzeuge für Funktionsaufrufe, ohne dass ein externer MCP-Server erforderlich ist.

### Function Calling

LLM-Anbieter mit Unterstützung für Werkzeugaufrufe können während des Gesprächs IDA-Analysefunktionen aufrufen, was iterative Untersuchungen ohne manuelles Eingreifen ermöglicht.

### RLHF Feedback

Geben Sie Daumen-hoch/Daumen-runter-Feedback zu Erklärungen und Abfrageantworten. Das Feedback wird lokal gespeichert und kann zur Verbesserung des Prompt-Engineerings und der Modellauswahl verwendet werden.

## Architektur

IDAssist folgt einem MVC-Muster (Model-View-Controller):

- **Ansichten** (`src/views/`) — PySide6-Reiter-Widgets, die bei Benutzerinteraktion Signale aussenden.
- **Controller** (`src/controllers/`) — Verbinden Ansichtssignale mit Dienstaufrufen, verwalten den Zustand.
- **Dienste** (`src/services/`) — Geschäftslogik, LLM-Anbieter, Datenbankzugriff, Graphanalyse.
- **Interne Werkzeuge** (`src/services/internal_tools.py`) — IDA-spezifische Werkzeugdefinitionen für LLM-Funktionsaufrufe.
- **Graph-Werkzeuge** (`src/services/graphrag/graphrag_tools.py`) — Werkzeuge zum Lesen/Schreiben semantischer Graphen für die LLM-Interaktion.

Wichtige Entwurfsprinzipien:
- Alle IDA-API-Aufrufe werden über `execute_on_main_thread()` im Hauptthread ausgeführt.
- LLM-Antworten werden inkrementell an die Benutzeroberfläche gestreamt.
- Lokale SQLite-Datenbanken für die Persistenz (keine externe Datenbank erforderlich).
- Singleton-Dienstregistrierung mit threadsicherer Initialisierung.

## Schnellstart

1. **Plugin installieren** (empfohlen — IDA Plugin Manager):

   ```
   hcli plugin install idassist
   ```

   Dadurch werden das Plugin und seine Python-Abhängigkeiten automatisch in der IDA-Umgebung installiert.

2. **Oder manuell installieren** (aus dem Release-Tarball):

   Laden Sie das neueste Release-Zip von [GitHub Releases](https://github.com/jtang613/IDAssist/releases) herunter und extrahieren Sie es in Ihr IDA-Plugins-Verzeichnis:

   **Linux / macOS:**
   ```bash
   unzip IDAssist-*.zip -d ~/.idapro/plugins/
   ```

   **Windows:**
   Extract the zip into `%APPDATA%\Hex-Rays\IDA Pro\plugins\`.

   Installieren Sie dann die Abhängigkeiten mit **IDAs mitgeliefertem Python** (nicht mit Ihrem systemeigenen Python):

   **Linux / macOS:**
   ```bash
   <IDA_INSTALL_DIR>/python3/bin/pip3 install -r ~/.idapro/plugins/IDAssist/requirements.txt
   ```

   **Windows:**
   ```cmd
   "<IDA_INSTALL_DIR>\python3\python.exe" -m pip install -r "%APPDATA%\Hex-Rays\IDA Pro\plugins\IDAssist\requirements.txt"
   ```

   > Ersetzen Sie `<IDA_INSTALL_DIR>` durch Ihren IDA-Pro-Installationspfad (z. B. `/opt/idapro-9.0` oder `C:\Program Files\IDA Pro 9.0`).
   >
   > **Tipp:** Sie können auch die Umgebungsvariable `IDAUSR` auf ein benutzerdefiniertes Verzeichnis mit einem `plugins/`-Unterverzeichnis setzen.

3. **IDAssist öffnen:** Starten Sie IDA Pro, öffnen Sie eine Binärdatei und drücken Sie `Ctrl+Shift+A` (oder Bearbeiten > Plugins > IDAssist).

4. **Einen Anbieter konfigurieren:** Gehen Sie zum Einstellungs-Reiter, klicken Sie unter LLM-Anbieter auf **Hinzufügen** und konfigurieren Sie Ihren bevorzugten Anbieter.

5. **Eine Funktion analysieren:** Navigieren Sie zu einer beliebigen Funktion, klicken Sie auf den **Erklären**-Reiter und drücken Sie **Funktion erklären**.

Detaillierte Einrichtungsanweisungen finden Sie unter [Erste Schritte](https://github.com/symgraph/idassist/blob/master/docs/getting-started.md).

## LLM-Anbieter einrichten

IDAssist unterstützt die folgenden Anbieterarten:

| Typ | Authentifizierungsmethode | Hinweise |
|------|-------------|-------|
| `anthropic_platform` | API-Schlüssel | Anthropic-API direkt |
| `anthropic_oauth` | OAuth (Browser) | Browserbasierte Authentifizierung |
| `anthropic_claude_cli` | Lokale CLI | Verwendet die `claude`-CLI-Binärdatei |
| `bedrock` | AWS-Anmeldedaten | Direkte AWS-Bedrock-Converse-API |
| `openai_platform` | API-Schlüssel | OpenAI-API direkt |
| `openai_oauth` | OAuth (Browser) | Browserbasierte Authentifizierung |
| `ollama` | Keine (lokal) | Selbst gehostete Modelle |
| `litellm` | Proxy-URL | Multi-Provider-Proxy |

### Empfohlene Modelle

| Anbieter | Modell | Stärken |
|----------|-------|-----------|
| Anthropic | `claude-sonnet-4-6` | Starke Codeanalyse, erweitertes Denken |
| OpenAI | `gpt-5.3-codex` | Schnell, gute allgemeine Analyse |
| Ollama | `qwen2.5-coder:32b` | Lokal, kein API-Schlüssel erforderlich |

## Den semantischen Graphen verwenden

Der Reiter Semantischer Graph bietet einen Wissensgraphen der Binärdatei:

1. **Binärdatei neu indizieren** — Extrahiert Funktionsstruktur, Aufrufgraph und Querverweise
2. **Semantische Analyse** — Generiert LLM-Zusammenfassungen für jede Funktion
3. **Sicherheitsanalyse** — Erkennt Schwachstellenmuster und sicherheitsrelevante APIs
4. **Netzwerkfluss** — Verfolgt Netzwerkoperationen über den Aufrufgraph
5. **Community-Erkennung** — Gruppiert verwandte Funktionen in Module

Erkunden Sie den Graphen über die **Listenansicht** (Caller, Callees, Kanten, Flags), den **Visuellen Graphen** (interaktives Knotendiagramm mit N-Hop-Erweiterung) oder die **Suche** (7 Abfragetypen einschließlich semantischer Suche, ähnlicher Funktionen und Aufrufkontext).

## Kontextmenü-Aktionen

Klicken Sie in einer beliebigen Disassemblierungs- oder Pseudocode-Ansicht mit der rechten Maustaste, um auf Folgendes zuzugreifen:

| Aktion | Tastenkürzel | Wirkung |
|--------|--------|--------|
| Funktion erklären | `Ctrl+Shift+E` | Öffnet den Erklären-Reiter und generiert eine Erklärung |
| Nach Auswahl fragen | `Ctrl+Shift+Q` | Öffnet den Abfrage-Reiter mit `#func`-Kontext |
| Umbenennungsvorschläge | — | Öffnet den Aktionen-Reiter und generiert Vorschläge |

## Anforderungen

- **IDA Pro 9.0+** mit Python 3 und PySide6
- **Hex-Rays Decompiler** (empfohlen für Pseudocode-Funktionen)
- Python-Pakete, die in `requirements.txt` aufgeführt sind

## Dokumentation

- [Dokumentationsindex](https://github.com/symgraph/idassist/blob/master/docs/index.md)
- [Erste Schritte](https://github.com/symgraph/idassist/blob/master/docs/getting-started.md)
- Reiter-Referenzen: [Erklären](https://github.com/symgraph/idassist/blob/master/docs/tabs/explain-tab.md) | [Abfrage](https://github.com/symgraph/idassist/blob/master/docs/tabs/query-tab.md) | [Aktionen](https://github.com/symgraph/idassist/blob/master/docs/tabs/actions-tab.md) | [Semantischer Graph](https://github.com/symgraph/idassist/blob/master/docs/tabs/semantic-graph-tab.md) | [RAG](https://github.com/symgraph/idassist/blob/master/docs/tabs/rag-tab.md) | [Einstellungen](https://github.com/symgraph/idassist/blob/master/docs/tabs/settings-tab.md)
- Arbeitsabläufe: [Erklären](https://github.com/symgraph/idassist/blob/master/docs/workflows/explain-workflow.md) | [Abfrage](https://github.com/symgraph/idassist/blob/master/docs/workflows/query-workflow.md) | [Semantischer Graph](https://github.com/symgraph/idassist/blob/master/docs/workflows/semantic-graph-workflow.md)

## Homepage

[https://symgraph.ai](https://symgraph.ai)

## Lizenz

Details finden Sie in der LIZENZ-Datei.
Tool herunterladen