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
idacode — Eine Integration für IDA und VS Code, die beide verbindet, um IDAPython-Skripte einfach auszuführen und zu debuggen. | Kitploit
Tools/GitHubGitHub/ioncodes/idacode
Reverse EngineeringScripting & AutomatisierungDebuggerBinäranalyse
GitHubioncodes/idacode

idacode

Eine Integration für IDA und VS Code, die beide verbindet, um IDAPython-Skripte einfach auszuführen und zu debuggen.

Repository anzeigen
98785vor 11 MonatenVon 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

IDACode

IDACode erleichtert das Ausführen und Debuggen von Python-Skripten in Ihrer IDA-Umgebung, ohne Visual Studio Code verlassen zu müssen. Die VS Code-Erweiterung finden Sie im Marketplace.
IDACode befindet sich noch in einem sehr frühen Stadium und Fehler sind zu erwarten. Bitte öffnen Sie ein neues Issue, wenn Sie auf Probleme stoßen.

Funktionen

  • Geschwindigkeit: Schnell Skripte erstellen und ausführen.
  • Debugging: Jederzeit einen Python-Debugger anhängen.
  • Kompatibilität: IDACode erfordert keine spezifische Anpassung Ihrer Skripte. Alle Skripte können ohne Änderungen innerhalb von IDA ausgeführt werden.
  • Modularität: IDACode verwendet keine umfangreichen sicheren Wrapper für die Thread-Synchronisation, sodass Sie jederzeit jedes Modul von jedem Pfad importieren können. Stattdessen synchronisiert IDACode den Skriptausführungsthread mit dem Hauptthread von IDA, um Performance- und unerwartete Probleme zu vermeiden.
  • Synchronisation: Da IDACode debugpy zur Kommunikation verwendet, wird das Ausgabefenster automatisch mit dem VS Code-Ausgabebereich synchronisiert.

IDACode wurde unter Windows und macOS mit IDA 8.4/9.0 und Python 3.12 getestet (ältere Python-Versionen haben Probleme mit dem Debugging).

Einrichtung

Um die Abhängigkeiten für das IDA-Plugin einzurichten, führen Sie folgenden Befehl aus:

root@kitploit:~
# make sure to use the correct Python version
# IDACode supports the latest debugpy as of version 3.0.0, make sure to upgrade!
python -m pip install --user debugpy tornado

Klonen Sie entweder dieses Repository oder laden Sie ein Release-Paket von hier herunter. ida.zip entspricht dem Inhalt des ida-Ordners in diesem Repository. Kopieren Sie alle Dateien in das Plugin-Verzeichnis von IDA.

Der nächste Schritt ist die Konfiguration der Einstellungen für Ihre Umgebung (optional). Bearbeiten Sie idacode_utils/settings.py entsprechend:

  • HOST: Dies ist die Host-Adresse. Dies ist immer 127.0.0.1, es sei denn, Sie möchten, dass es von einem entfernten Standort aus zugänglich ist. Beachten Sie, dass dieses Plugin keine Authentifizierung verwendet.
  • PORT: Dies ist der Port, auf dem IDA hören soll. Dieser wird für die WebSocket-Kommunikation zwischen IDA und VS Code verwendet.
  • DEBUG_PORT: Dies ist der Port, auf dem Sie auf eingehende Debug-Sitzungen warten möchten.
  • LOGGING: Bestimmt, ob der Debugger in Dateien protokollieren soll. Dies ist besonders nützlich, wenn Sie Probleme mit IDACode haben. Bitte reichen Sie ein neues Issue ein, wenn Sie etwas finden. Die Dateien befinden sich immer in Ihrem Temp-Verzeichnis (z. B. Windows: %TEMP%). Die Dateien heißen debugpy.*.log.

Sie können das Plugin nun starten, indem Sie im Plugin-Menü auf IDACode klicken.

Die VS Code-Erweiterung ist im Marketplace verfügbar. Informationen zur Konfiguration der Erweiterung finden Sie in der README der Erweiterung.

Verwendung

IDA

Klicken Sie im Plugin-Menü auf IDACode. Es sollte der folgende Text erscheinen:

root@kitploit:~
IDACode listening on 127.0.0.1:7065

VS Code

Seit Version 0.2.0 unterstützt IDACode "Execute on Save" (Ausführen beim Speichern), das standardmäßig aktiviert ist. VS Code führt Ihr Skript automatisch in IDA aus, sobald Sie das aktuelle Dokument speichern (z. B. mit STRG+S). Dieses Verhalten kann in den Einstellungen deaktiviert werden. Öffnen Sie die VS Code Extension Development Console mit Strg+Umschalt+P und geben Sie "idacode" ein, um die folgende Liste von Befehlen anzuzeigen. Verwenden Sie nicht die "Run"- oder "Debug"-Funktionalität von VS Code, da Sie sonst eine "HTTP malformed"-Meldung in IDA erhalten.

Es stehen 4 Befehle zur Verfügung:

commands

Sobald Sie einen Ordner geöffnet haben, in dem Sie Ihre Skripte ablegen möchten (Sie müssen den Ordner angeben, wenn VS Code Sie dazu auffordert!), können Sie eine Verbindung zu IDA herstellen. Dies kann entweder durch Ausführen von Connect to IDA oder Connect and attach a debugger to IDA erfolgen. Beachten Sie, dass eine Debug-Sitzung dauerhaft ist, bis Sie IDA neu starten. Sie können den Arbeitsbereichsordner nach dem Start des Debuggers nicht mehr ändern.
Stellen Sie sicher, dass der Arbeitsbereichsordner der Ordner ist, in dem sich Ihre Hauptskripte befinden.
Sobald Sie verbunden sind, können Sie Execute script in IDA auswählen.

Debugging

IDACode verwendet den Remote-Debugger von VS Code, um eine Verbindung zu IDA herzustellen. Alle VS Code-Funktionen werden unterstützt. Sie müssen jedoch den Einstiegspunkt des Skripts mit der Python-eingebauten Funktion breakpoint angeben. Diese Anweisung weist den Debugger an, die Ausführung anzuhalten; wenn kein Debugger vorhanden ist, wird die Funktion ignoriert. IDACode importiert ein Hilfspaket namens dbg, das eine Überladung von breakpoint namens bp implementiert. Diese Funktion unterstützt Protokollierung und Bedingungen:

root@kitploit:~
name = idc.get_segm_name(segment)
dbg.bp(name==".text", f"found {name} at {segment}")

Bitte beachten Sie auch, dass ein breakpoint()-Aufruf niemals am Ende einer Datei erfolgen sollte; er muss immer vor jeder anderen Codezeile stehen, da er bei der nächsten Anweisung in Ihrem Code unterbricht. Beachten Sie außerdem, dass Sie, wenn Sie sich für die Verwendung des dbg-Pakets entscheiden, entweder alle Referenzen entfernen oder die Variable __idacode__ als Bedingung verwenden müssen, bevor Sie es als normales IDA-Skript ausführen.
Es ist auch wichtig, dass das Anhängen eines Debuggers eine neue Debugger-Instanz erstellt. In den meisten Fällen ist das nicht gewünscht. Wenn Sie die Verbindung zum Debugger trennen, verwenden Sie den Remote-Debugger von VS Code, um sich erneut zu verbinden.

Bekannte Probleme

  • Importierte Module werden nach Änderungen nicht neu geladen. Eine Problemumgehung finden Sie hier.

Demo

demo

Mitwirkende

  • mrexodia
  • MeitarR
  • Plutoberth
  • OevreFlataeker
  • RolfRolles
Tool herunterladen