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
ThreatDetect — Streamlit-basierter Insider-Bedrohungserkennungs-Prototyp, der XGBoost und Isolation Forest verwendet, um Mitarbeiteraktivitätsdaten zu analysieren, Risikozusammenfassungen zu erstellen und SHAP-basierte Erklärungen pro Mitarbeiter bereitzustellen. | Kitploit
Tools/GitLabGitLab/jazbengu/threatdetect
Maschinelles LernenAnomalieerkennung
GitLabjazbengu/threatdetect

ThreatDetect

Streamlit-basierter Insider-Bedrohungserkennungs-Prototyp, der XGBoost und Isolation Forest verwendet, um Mitarbeiteraktivitätsdaten zu analysieren, Risikozusammenfassungen zu erstellen und SHAP-basierte Erklärungen pro Mitarbeiter bereitzustellen.

Repository anzeigenWebseite
vor 3 MonatenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

ThreatDetect

ThreatDetect ist ein auf Streamlit basierender Prototyp zur Erkennung interner Bedrohungen, der Mitarbeiteraktivitätsdaten analysiert und potenziell riskantes Verhalten kennzeichnet. Es nutzt einen trainierten XGBoost-Klassifikator zusammen mit einem Isolation-Forest-Anomaliedetektor, um organisationsweite Risikozusammenfassungen und erklärbare Einblicke auf Mitarbeiterebene zu liefern.

Demo

Die App kann lokal mit Streamlit ausgeführt werden. Eine bereitgestellte Demo war zuvor unter folgender Adresse verfügbar:

  • https://threatdetectcos720.streamlit.app/

Hauptfunktionen

  • Batch-Risikoerkennung aus einer hochgeladenen CSV-Datei
  • Organisationale Bedrohungszusammenfassung mit Anzahlen, Wahrscheinlichkeitsverteilung und Risikostufen
  • Erklärbarkeit pro Mitarbeiter mittels SHAP-Werten
  • Explorative Datenanalyse (EDA) für hochgeladene oder Beispieldatensätze
  • CSV-Export der Vorhersageergebnisse
  • Visualisierungen für Feature-Wichtigkeit, Risikoverteilung und Anomalieerkennung

Repository-Struktur

  • streamlit_app.py — Haupt-Streamlit-Anwendung
  • requirements.txt — Python-Paketabhängigkeiten
  • AI_Model_Code/insider_threat_model.pkl — gespeicherte Inferenz-Pipeline und trainierte Modellartefakte
  • AI_Model_Code/insider_threat_clean_dataset.csv — beigelegter Beispieldatensatz für EDA
  • AI_Model_Code/cos720_ai_model_FINAL.ipynb — Jupyter-Notebook zur Modellentwicklung
  • assets/app_styling.css — benutzerdefiniertes UI-Styling für die Streamlit-App
  • unit testing/ — Testdateien für Feature-Aufbereitung und Erklärungslogik
  • docs/TECHNICAL_DOCUMENTATION.md — technische Dokumentation des Projekts

Softwareanforderungen

  • Python 3.8 oder höher
  • streamlit
  • pandas
  • numpy
  • scikit-learn
  • matplotlib
  • seaborn
  • plotly
  • xgboost
  • shap

Installieren Sie alle Abhängigkeiten mit:

root@kitploit:~
pip install -r requirements.txt

Installation

  1. Klonen Sie das Repository:
root@kitploit:~
git clone https://github.com/jazbengu/ThreatDetect.git
cd ThreatDetect
  1. Erstellen und aktivieren Sie eine virtuelle Umgebung (empfohlen):
root@kitploit:~
python3 -m venv venv
source venv/bin/activate
  1. Installieren Sie die Abhängigkeiten:
root@kitploit:~
pip install -r requirements.txt

Ausführen der App

Starten Sie die App mit:

root@kitploit:~
streamlit run streamlit_app.py

Öffnen Sie dann die im Terminal angezeigte lokale URL (normalerweise http://localhost:8501).

Verwendung von ThreatDetect

Organisationale Suche via CSV

  • Laden Sie eine CSV-Datei mit Mitarbeiter- und Aktivitätsmerkmalen hoch.
  • Klicken Sie auf Run Threat Detection, um Risikowahrscheinlichkeiten für jeden Datensatz zu berechnen.
  • Die App zeigt eine Zusammenfassung der Gesamtvorhersagen (bösartig vs. normal), die Risikowahrscheinlichkeitsverteilung und die Feature-Wichtigkeit.
  • Sie können die detaillierte Ergebnistabelle erweitern und die Ausgabe als CSV herunterladen.
  • Nutzen Sie den Bereich für die Erklärung pro Datensatz, um zu prüfen, warum ein bestimmter Mitarbeiter markiert wurde.

Explorative Datenanalyse

  • Laden Sie Ihre eigene CSV hoch oder verwenden Sie den beigelegten Beispieldatensatz in AI_Model_Code/insider_threat_clean_dataset.csv.
  • Die Seite zeigt die Datensatzform, deskriptive Statistiken, Informationen zu fehlenden Werten und Feature-Diagramme.
  • Numerische Spalten können mit Histogrammen, Boxplots, Streudiagrammen und Korrelationsheatmaps untersucht werden.
  • Ein schneller Isolation-Forest-Anomaliescan kann ungewöhnliche Datensätze hervorheben.

Seitenleisten-Seiten

  • Organisational Search via CSV ist der Haupt-Workflow für die Batch-Bedrohungserkennung.
  • Single Search wird in der Seitenleiste angezeigt, ist aber derzeit nicht in der App-Logik implementiert.
  • Exploratory Data Analysis steht zur Datensatzexploration und schnellen Anomalieprüfungen zur Verfügung.

Modellartefakte

AI_Model_Code/insider_threat_model.pkl enthält ein serialisiertes Modellpaket mit:

  • xgb_model: trainierter XGBoost-Klassifikator
  • iso_forest: trainierter Isolation-Forest-Anomaliedetektor
  • scaler: StandardScaler für numerische Eingaben
  • label_encoders: Kodierer für kategoriale Merkmale
  • feature_columns: geordnete Feature-Liste
  • cat_cols, num_cols, bin_cols: Feature-Gruppierungen
  • best_threshold: Klassifikationsschwellenwert für Risikoentscheidungen
  • shap_explainer: SHAP-Erklärer für Erklärbarkeit

Die Modelldatei wird von streamlit_app.py geladen und verwendet, um Eingaben vorzuverarbeiten, Risikowahrscheinlichkeiten zu berechnen und Erklärungen zu generieren.

Testen

Das Repository enthält Tests unter unit testing/.

Führen Sie die Testsuite aus mit:

root@kitploit:~
pytest "unit testing/"

Hinweise und Fehlerbehebung

  • Wenn Streamlit nicht startet, stellen Sie sicher, dass Ihre virtuelle Umgebung aktiv ist und die Abhängigkeiten installiert sind.
  • Wenn die App fehlende erforderliche Spalten meldet, überprüfen Sie, ob Ihre hochgeladene CSV die erwarteten Mitarbeiter- und Aktivitätsfelder enthält.
  • Die Modelldatei wurde mit älteren scikit-learn-Versionen serialisiert, daher können beim Laden Kompatibilitätswarnungen auftreten, wenn Ihre Umgebung neuere Versionen verwendet.
  • Wenn der integrierte Beispieldatensatz nicht verfügbar ist, laden Sie Ihre eigene CSV hoch, um die EDA-Seite weiter zu nutzen.

Beitrag

Dieses Repository ist für Erweiterungen und Tests konfiguriert. Zukünftige Verbesserungen können die Erweiterung der Feature-Abdeckung und das erneute Training des Modells mit zusätzlichen Daten zu internen Bedrohungen umfassen.

Tool herunterladen