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
detectree — Interaktives Datenvisualisierungstool für Blue Teams zur Analyse von Erkennungsdaten, zum Verständnis von Zusammenhängen, zur Reduzierung von Alert-Müdigkeit und zur Verbesserung der Incident Response. | Kitploit
Tools/GitHubGitHub/withsecurelabs/detectree
DefensivwerkzeugeBedrohungsanalyseIncident ResponseLog-Analyse
GitHubwithsecurelabs/detectree

detectree

Interaktives Datenvisualisierungstool für Blue Teams zur Analyse von Erkennungsdaten, zum Verständnis von Zusammenhängen, zur Reduzierung von Alert-Müdigkeit und zur Verbesserung der Incident Response.

Repository anzeigen
12751vor 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

Detectree


Detectree ist ein Datenvisualisierungstool für Blue Teams. Es bietet eine grafische Darstellung von Erkennungsdaten, die es einem Analysten ermöglicht, nahezu sofort Einschätzungen über die Art der zugrunde liegenden Aktivität zu treffen und komplexe Beziehungen zwischen den Datenpunkten zu verstehen. Letztendlich kann dies dazu beitragen, die Reaktionszeit zu verkürzen, die Alarmmüdigkeit zu reduzieren und die Kommunikation zwischen Analysten innerhalb der Teams zu erleichtern.

Detectree ist in Svelte geschrieben und basiert auf der JavaScript-Bibliothek force-graph.


Erste Schritte

Um Detectree in Ihrer Umgebung zu verwenden, müssen die Erkennungen eine Mindestmenge an Eigenschaften erfüllen. In der folgenden Tabelle sehen Sie, welche Felder in jeder Erkennung enthalten sein müssen und welche optional sind.

FeldErforderlich
Endpoint-IDja
Kategorieja
Schweregradja
Erkennungsnameja
Name des übergeordneten Prozessesja
ID des übergeordneten Prozessesja
Prozessnameja
Prozess-IDja
Benutzernein
Befehlszeilenein
Dateinamenein
Registrierungsschlüsselnein
Netzwerkadressenein
Name des Zielprozessesnein
ID des Zielprozessesnein

Die Zuordnungen für jedes Feld sind in der Datei schema.yml definiert; eine Beispieldatei schema.yml.example wird bereitgestellt. Diese Datei definiert, welche Felder aus den Daten im Backend extrahiert werden sollen und wie sie intern zugeordnet werden. Insbesondere enthält der Zuordnungsteil links die Detectree-Zuordnung und rechts die Backend-Zuordnung; Sie müssen die Zuordnung entsprechend Ihrer Umgebung ausfüllen.

Das Schema enthält auch die Backend-Konfiguration; für Elastic sollte dies unkompliziert sein, aber die Bedeutung der verschiedenen Felder ist wie folgt:

primaryId ist die eindeutige Kennung für den Endpoint. Dies wird verwendet, um die Erkennungen abzurufen. timeField ist das Zeitfeld, das verwendet wird, um die Abfrage einzuschränken. source ist das Feld, das den Erkennungstyp identifiziert; im Beispielschema ist dies auf NewProcess, RegistryWrite, FileAccess usw. abgebildet.

Anschließend identifiziert in den mappings das Feld type eine bestimmte Erkennung; wenn Ihr Backend beispielsweise nur NewProcess-Erkennungen unterstützt (oder wie auch immer der entsprechende Name lautet), benötigen Sie nur eine Zuordnung. Eng damit verbunden verknüpft das Feld kind den Erkennungstyp mit dem Detectree-Typ. Wenn kind beispielsweise file ist, sollte die Zuordnung einen filePath bereitstellen, der verwendet wird, um einen Kontextknoten zu zeichnen.

Derzeit wird nur Elastic als Backend unterstützt, aber es sollte trivial sein, einen Adapter für jedes neue Backend zu erstellen. Weitere Informationen finden Sie im Abschnitt Hinzufügen eines neuen Backends.

Um die Anwendung in Ihrer Umgebung bereitzustellen, müssen Sie die erforderlichen Abhängigkeiten mit npm install (oder pnpm install oder yarn) installieren. Anschließend müssen Sie den richtigen Adapter für Ihre Umgebung auswählen; folgen Sie dieser Anleitung für die aktuellsten Informationen.

Wenn Sie beispielsweise Node als Ihr Backend verwenden möchten, müssen Sie @sveltejs/adapter-node installieren und Ihre svelte.config.js ändern, indem Sie @sveltejs/adapter-auto durch @sveltejs/adapter-node ersetzen. Das Projekt kann dann mit dem folgenden Befehl erstellt werden; die Ausgabe befindet sich im Ordner output.

root@kitploit:~

npm run build

Ein Entwicklungsserver kann mit dem folgenden Befehl gestartet werden; dies ermöglicht es, die Anwendung lokal bereitzustellen.

root@kitploit:~
npm run dev

# oder starten Sie den Server und öffnen Sie die App in einem neuen Browser-Tab
npm run dev -- --open

Ein Beispielgraph ist im folgenden Screenshot zu sehen

example

Hinzufügen eines neuen Backends

Um ein neues Backend zu unterstützen, müssen Sie eine dedizierte TypeScript-Datei im Ordner backend_adapters erstellen. Sie können die Elastic-Datei als Vorlage verwenden; das neue Modul sollte eine Abfragefunktion bereitstellen, die als Eingabe dieselben Parameter wie die in der Elastic-Datei verwendet. Sie können dann das gewählte Backend auf die bevorzugte Weise abfragen. Die Abfragefunktion sollte ein Objekt zurückgeben, das die Daten gemäß der im Schema.yaml definierten Zuordnung enthält. Schließlich müssen Sie das Backend, damit es korrekt ausgewählt wird, auch im folgenden Objekt innerhalb von draw_tree.ts hinzufügen; die Objektschlüssel hier sind auch die Art und Weise, wie das Backend in der schema.yml referenziert wird.

root@kitploit:~
const backendTypes = {
	elastic: '../backend_adapters/elastic'
};
Tool herunterladen