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
rhabdomancer — Assistent für Schwachstellenforschung, der Aufrufe potenziell unsicherer API-Funktionen in einer Binärdatei lokalisiert. | Kitploit
Tools/GitHubGitHub/0xdea/rhabdomancer
Statische AnalyseSchwachstellenanalyseReverse EngineeringBinäranalyse
GitHub0xdea/rhabdomancer

rhabdomancer

Assistent für Schwachstellenforschung, der Aufrufe potenziell unsicherer API-Funktionen in einer Binärdatei lokalisiert.

Repository anzeigen
13115vor 6 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
Webseite

rhabdomancer

build doc

"Der Weg zu ausnutzbaren Bugs ist mit nicht ausnutzbaren Bugs gepflastert."

-- Mark Dowd

Rhabdomancer ist ein blitzschnelles IDA-Headless-Plugin, das Aufrufe potenziell unsicherer API-Funktionen in einer Binärdatei lokalisiert. Auditoren können von diesen Kandidatenpunkten aus zurückverfolgen, um Pfade zu finden, die Zugriff auf nicht vertrauenswürdige Eingaben ermöglichen.

Funktionen

  • Blitzschnelle, headless Benutzererfahrung dank IDA 9.x und den Rust-Bindings von idalib-rs.
  • Unterstützung für C/C++-Binärdateien, die für jede von IDA implementierte Architektur kompiliert wurden.
  • Die Positionen von Aufrufen unsicherer API-Funktionen werden auf stdout ausgegeben und in der IDB markiert.
  • Bekannte unsichere API-Funktionen sind in Schweregrade gruppiert, um die Priorisierung der Audit-Arbeit zu erleichtern.
    • [BAD 0] Hohe Priorität - Funktionen, die allgemein als unsicher gelten.
    • [BAD 1] Mittlere Priorität - Interessante Funktionen, die auf unsichere Verwendungsfälle geprüft werden sollten.
    • [BAD 2] Niedrige Priorität - Codepfade, die diese Funktionen betreffen, sollten sorgfältig geprüft werden.
  • Die Liste der bekannten unsicheren API-Funktionen kann einfach durch Bearbeiten von conf/rhabdomancer.toml angepasst werden.

Artikel

  • https://hex-rays.com/blog/streamlining-vulnerability-research-idalib-rust-bindings
  • https://hnsecurity.it/blog/streamlining-vulnerability-research-with-ida-pro-and-rust

Siehe auch

  • https://github.com/0xdea/ghidra-scripts/blob/main/Rhabdomancer.java
  • https://docs.hex-rays.com/release-notes/9_0#headless-processing-with-idalib
  • https://github.com/idalib-rs/idalib
  • https://books.google.it/books/about/The_Art_of_Software_Security_Assessment.html

Installation

Der einfachste Weg, die neueste Version zu erhalten, führt über crates.io:

  1. Laden Sie IDA herunter, installieren und konfigurieren Sie es (siehe https://hex-rays.com/ida-pro).
  2. Installieren Sie LLVM/Clang (siehe https://rust-lang.github.io/rust-bindgen/requirements.html).
  3. Installieren Sie unter Linux/macOS wie folgt:
    root@kitploit:~
    export IDADIR=/path/to/ida # if not set, the build script will check common locations
    cargo install rhabdomancer
    
    Unter Windows verwenden Sie stattdessen die folgenden Befehle:
    root@kitploit:~
    $env:LIBCLANG_PATH="\path\to\clang+llvm\bin"
    $env:PATH="\path\to\ida;$env:PATH"
    $env:IDADIR="\path\to\ida" # if not set, the build script will check common locations
    cargo install rhabdomancer
    

Kompilieren

Alternativ können Sie aus dem Quellcode bauen:

  1. Laden Sie IDA herunter, installieren und konfigurieren Sie es (siehe https://hex-rays.com/ida-pro).
  2. Installieren Sie LLVM/Clang (siehe https://rust-lang.github.io/rust-bindgen/requirements.html).
  3. Kompilieren Sie unter Linux/macOS wie folgt:
    root@kitploit:~
    git clone --depth 1 https://github.com/0xdea/rhabdomancer
    cd rhabdomancer
    export IDADIR=/path/to/ida # if not set, the build script will check common locations
    cargo build --release
    
    Unter Windows verwenden Sie stattdessen die folgenden Befehle:
    root@kitploit:~
    git clone --depth 1 https://github.com/0xdea/rhabdomancer
    cd rhabdomancer
    $env:LIBCLANG_PATH="\path\to\clang+llvm\bin"
    $env:PATH="\path\to\ida;$env:PATH"
    $env:IDADIR="\path\to\ida" # if not set, the build script will check common locations
    cargo build --release
    

Verwendung

  1. Stellen Sie sicher, dass IDA mit einer gültigen Lizenz ordnungsgemäß konfiguriert ist.
  2. Passen Sie bei Bedarf die Liste der bekannten unsicheren API-Funktionen in conf/rhabdomancer.toml an. Sie können den Standardspeicherort der Konfigurationsdatei überschreiben, indem Sie die Umgebungsvariable RHABDOMANCER_CONFIG setzen.
  3. Stellen Sie sicher, dass die Umgebungsvariable IDADIR gesetzt ist, wenn sich Ihre IDA-Installation an einem nicht standardmäßigen Speicherort befindet.
  4. Führen Sie das Tool wie folgt aus:
    root@kitploit:~
    rhabdomancer <binary_file>
    
    Vorhandene .i64-IDB-Dateien werden aktualisiert; andernfalls wird eine neue IDB-Datei erstellt.
  5. Öffnen Sie die resultierende .i64-IDB-Datei mit IDA.
  6. Wählen Sie View > Open subviews > Bookmarks
  7. Genießen Sie Ihre Ergebnisse, die bequem in einem IDA-Fenster gesammelt werden.

[!NOTE] Rhabdomancer fügt an den markierten Aufrufpositionen außerdem Kommentare hinzu.

Kompatibilität

Offiziell wird nur die neueste IDA-Version unterstützt, aber ältere Versionen funktionieren möglicherweise ebenfalls. Die folgende Tabelle fasst die jeweils neueste kompatible Version für jede IDA-Version zusammen:

[!NOTE] Weitere Informationen finden Sie in der Dokumentation von idalib-rs.

Danksagungen

Die Entwicklung dieses Projekts wurde von den folgenden Organisationen unterstützt:

  • HN Security
  • Hex-Rays über ihr Contributor Program

Changelog

  • CHANGELOG.md

TODO

  • Weitere Anreicherung der Liste bekannter unsicherer API-Funktionen (siehe https://github.com/0xdea/semgrep-rules).
  • Erwägen, den Umfang der Normalisierung in normalize_name zu erweitern, um weitere Fälle abzudecken.
  • Implementieren eines grundlegenden Regelsets im Stil von VulFi und VulnFanatic.
Tool herunterladen
IDA-VersionNeueste kompatible Version
v9.0.240925v0.2.4
v9.0.241217v0.3.5
v9.1.250226v0.6.2
v9.2.250908v0.7.6
v9.3.260213v0.8.1
v9.3.260327v0.9.0
v9.3.260421v0.9.3
v9.4.260714aktuelle Version