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.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
ImproHound — Identifizieren Sie die Angriffspfade in BloodHound, die Ihr AD-Stufenmodell durchbrechen. | Kitploit
Tools/GitHubGitHub/improsec/improhound
Privilege EscalationSchwachstellenanalyseInformationsbeschaffungPenetrationstests
GitHubimprosec/improhound

ImproHound

Identifizieren Sie die Angriffspfade in BloodHound, die Ihr AD-Stufenmodell durchbrechen.

Repository anzeigen
328368vor 3 JahrenVon 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

GitHub release (latest SemVer) GitHub all releases

ImproHound

Identifizieren Sie die Angriffspfade in BloodHound, die Ihr AD-Tiering verletzen

ImproHound ist eine eigenständige dotnet Win x64-EXE mit GUI. Um ImproHound zu verwenden, müssen Sie SharpHound ausführen, um die erforderlichen Daten aus der AD zu sammeln. Anschließend laden Sie die Daten in Ihre BloodHound-Installation hoch. ImproHound stellt eine Verbindung zur zugrunde liegenden Neo4j-Datenbank von BloodHound her. In ImproHound kategorisieren Sie die AD mithilfe der OU-Struktur in Tiers, und ImproHound identifiziert die AD-Beziehungen, die es AD-Objekten ermöglichen, ein Objekt eines höheren (näher an Null gelegenen) Tiers zu kompromittieren, und speichert die Tiering-Verstöße in einer CSV-Datei.

ImproHound-Blogbeitrag

ImproHound-Demovideo

ImproHound DEF CON Adversary Village Präsentation

Inhaltsverzeichnis
  • Installation
  • Nutzung
  • Richtlinien für das Tiering von AD-Objekten
  • Zuletzt getestete Version der Abhängigkeiten

Installation

1. Richten Sie Ihre BloodHound-Datenbank ein

  1. Installieren Sie BloodHound

  2. Sammeln Sie BloodHound-Daten mit SharpHound in Ihrer AD

    Hinweis: Dies erzeugt Rauschen in Ihrer AV, SIEM usw.

    Beispiel: Führen Sie SharpHound.exe von der Eingabeaufforderung aus, sammeln Sie alle (ja, GPOLocalGroup ist nicht in All enthalten):

    SharpHound.exe --CollectionMethods All,GPOLocalGroup
    

    Tipp 1: Verwenden Sie den Parameter Domain, um Daten aus anderen Domänen der Gesamtstruktur zu sammeln.

    Tipp 2: Um noch mehr Daten zu erhalten, verwenden Sie die The Session Loop Collection Method

  3. Laden Sie Ihre BloodHound-Daten in der BloodHound-GUI hoch

    Es gibt einen Bug in BloodHound, der manchmal dazu führt, dass die JSON-Datei der Domäne beim Hochladen eines BloodHound-Daten-ZIPs übersprungen wird. Überprüfen Sie die DB-Statistiken in BloodHound nach dem Daten-Upload und stellen Sie sicher, dass die Domänenobjekte existieren.

2. Installieren Sie das APOC Neo4j-Plugin (ermöglicht großartige Graph-Operationen, die wir benötigen)

  1. Laden Sie die zu Ihrer Neo4j-Version passende APOC-Version herunter (apoc-x.x.x.x-all.jar).

    Die passende APOC-Version für Ihre Neo4j-Version finden Sie in der Versionskompatibilitätsmatrix.

  2. Versuchen Sie sich zu erinnern, wo Sie Neo4j installiert haben, und legen Sie die APOC-JAR-Datei unter: $NEO4J_HOME/plugins/ ab

    • $NEO4J_HOME in Linux: /var/lib/neo4j/
    • $NEO4J_HOME in Windows: Überprüfen Sie den Neo4j-Dienst. Dieser zeigt den Pfad an.
  3. Bearbeiten Sie neo4j.conf in Ihrem bevorzugten Texteditor, um uneingeschränkten APOC-Zugriff zu erlauben, indem Sie die Zeile: #dbms.security.procedures.unrestricted=my.extensions.example,my.procedures.* ersetzen mit dbms.security.procedures.unrestricted=apoc.*

    • neo4j.conf in Linux: /etc/neo4j/neo4j.conf
    • neo4j.conf in Windows: $NEO4J_HOME/conf/neo4j.conf

    Wenn Sie ImproHound auf einem Host und BloodHound auf einem anderen ausführen möchten, müssen Sie Remote-Verbindungen zur Neo4j-Datenbank auf dem BloodHound-Host zulassen. Entfernen Sie dazu das # aus der Zeile #dbms.default_listen_address=0.0.0.0 in neo4j.conf.

  4. Starten Sie Neo4j neu

    • Linux: systemctl restart neo4j
    • Windows (cmd): net stop neo4j && net start neo4j (PowerShell: net stop neo4j; net start neo4j)

3. Laden Sie die neueste Version von ImproHound.exe herunter und führen Sie sie unter Windows (x64) aus

    Bestätigen Sie, dass Sie sich mit denselben Anmeldeinformationen, die Sie in der BloodHound-GUI verwenden, bei der BloodHound-Datenbank anmelden können.

Nutzung

Verbindung zur Datenbank herstellen

alt text

Geben Sie die Datenbank-Anmeldeinformationen ein und stellen Sie eine Verbindung her. Es sind dieselben Anmeldeinformationen, die Sie in der BloodHound-GUI verwenden.

Fortsetzen oder neu beginnen

alt text

ImproHound erstellt ein ‚TierX‘-Label auf Knoten in der BloodHound-Datenbank. Wenn Sie ImproHound bereits zuvor mit dieser BloodHound-Datenbank verwendet haben, werden Sie gefragt, ob Sie mit dem bereits erstellten Tiering fortfahren oder neu beginnen möchten.

Standard-Tiering oder alle in Tier 2

alt text

ImproHound bietet Ihnen die Möglichkeit, ‚Standard-Tiering‘ zu setzen, wodurch Domänen-Admins in Tier 0, Domänen-Benutzer in Tier 2 usw. gesetzt werden, oder alle Objekte in Tier 2 zu setzen.

OU-Struktur

alt text

Dies ist die Seite, auf der Sie die AD-Objekte in Tiers kategorisieren. Das Fenster zeigt die OU-Struktur an. Jedes AD-Objekt hat einen Tier-Wert, der mit den Pfeilen erhöht und verringert werden kann.

Setze untergeordnete Objekte auf Tier

Wenn Sie eine Domäne oder einen AD-Container auswählen, können Sie auf ‚Setze untergeordnete Objekte auf Tier‘ klicken, um alle untergeordneten Objekte (rekursiv) auf die Tier-Stufe der angegebenen Domäne/des Containers zu setzen.

Setze Mitglieder auf Tier

Wenn Sie eine Gruppe auswählen, können Sie auf ‚Setze untergeordnete Objekte auf Tier‘ klicken, um alle Mitglieder (rekursiv) auf die Tier-Stufe der angegebenen Gruppe zu setzen.

Setze Tier für GPOs

Wenn Sie auf ‚Setze Tier für GPOs‘ klicken, wird für jede GPO die Tier-Stufe auf die Tier-Stufe der OU mit der höchsten Stufe (nähe Null) gesetzt, mit der die GPO verknüpft ist. GPOs, die nicht mit einer OU verknüpft sind, behalten ihre Tier-Stufe.

Hole Tiering-Verstöße

Finden Sie alle Beziehungen in der BloodHound-Datenbank, bei denen ein AD-Objekt die Kontrolle über ein AD-Objekt aus einer höheren Stufe (nähe Null) hat.

Es werden zwei CSV-Dateien als Ausgabe erzeugt:

  • adobjects-[timestamp].csv: Alle AD-Objekte und in welcher Stufe sie sich befinden.

  • tiering-violations-[timestamp].csv: Die Tiering-Verstöße.

Beispiel für Einträge in der Verstöße-CSV:

Tool herunterladen