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
standalone_tdo — Extrahiert strukturierte Cyber Threat Intelligence (CTI) aus PDF-, DOCX- und TXT-Dokumenten unter Verwendung von LLMs. Erzeugt MITRE ATT&CK-Angriffsabläufe, Erkennungsmöglichkeiten und umfassende Entity-Relationship-Graphen. | Kitploit
Tools/GitHubGitHub/blevene/standalone_tdo
SchwachstellenanalyseInformationsbeschaffungBedrohungsanalyseMaschinelles LernenPapers & ForschungLernen & Bildung
GitHubblevene/standalone_tdo

standalone_tdo

Extrahiert strukturierte Cyber Threat Intelligence (CTI) aus PDF-, DOCX- und TXT-Dokumenten unter Verwendung von LLMs. Erzeugt MITRE ATT&CK-Angriffsabläufe, Erkennungsmöglichkeiten und umfassende Entity-Relationship-Graphen.

Repository anzeigen
43vor 8 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

TDO Standalone Extraktor

Ein leistungsstarkes, eigenständiges Kommandozeilen-Tool zur Extraktion von Cyber Threat Intelligence (CTI) aus Dokumenten unter Verwendung großer Sprachmodelle mit erweiterten strukturierten Ausgabefunktionen.

🚀 Funktionen

  • Multi-Format-Dokumentunterstützung: PDF, DOCX, TXT und Markdown-Dateien
  • Erweiterte LLM-Integration: Google Gemini Modelle mit strukturierter Ausgabe und automatischer Fallback-Parsing
  • Umfassendes CTI-Schema: 12 Entitätstypen und 24 Beziehungstypen mit umfangreichen Eigenschaften
  • Generierung von Erkennungsmöglichkeiten: Erstellt handlungsorientierte Bedrohungserkennungsregeln mit Belegnachweisen
  • Angriffsablauf-Synthese: Generiert evidenzbasierte MITRE ATT&CK-Ablaufdiagramme
  • Zuverlässigkeit strukturierter Ausgaben: Pydantic-Schemata mit 100% JSON-Parsing-Erfolgsrate
  • Parallele Verarbeitung: Verarbeitet mehrere Dateien gleichzeitig mit Fortschrittsverfolgung
  • Portabel & Eigenständig: Minimale Abhängigkeiten mit umgebungsbasierter Konfiguration

📋 Schnellstart

1. Installation

root@kitploit:~
# Klonen oder herunterladen des standalone-tdo Ordners
cd standalone-tdo

# Virtuelle Umgebung erstellen (empfohlen)
python -m venv .venv
source .venv/bin/activate  # Unter Windows: .venv\Scripts\activate

# Abhängigkeiten installieren
pip install -r requirements.txt

2. Konfiguration

Das Tool verwendet Umgebungsvariablen, die aus einer .env-Datei geladen werden:

root@kitploit:~
# Beispielkonfiguration kopieren
cp env.example .env

# .env mit Ihren Einstellungen bearbeiten
# Erforderliche Variablen:
GEMINI_API_KEY=Ihr-Google-AI-API-Key-hier
GEMINI_MODEL=gemini-2.5-flash

Einen Gemini-API-Key erhalten:

  1. Besuchen Sie Google AI Studio
  2. Erstellen Sie einen neuen API-Key
  3. Kopieren Sie den Key in Ihre .env-Datei

Verfügbare Modelle:

  • gemini-2.5-flash-preview-05-20 (empfohlen – schnell und kosteneffizient)
  • gemini-2.5-pro-preview-06-05 (leistungsstärker, langsamer)

3. Grundlegende Nutzung

root@kitploit:~
# Einzelne Datei mit allen Funktionen verarbeiten
python tdo_bulk.py report.pdf --flow --opps

# Mehrere Dateien verarbeiten
python tdo_bulk.py file1.pdf file2.docx file3.txt

# Alle Dateien in einem Verzeichnis mit parallelen Arbeitern verarbeiten
python tdo_bulk.py reports/ -j 4

# Umfassende Analyse mit Bewertung generieren
python tdo_bulk.py report.pdf --flow --opps --eval-opps

🎯 Befehlszeilenreferenz

root@kitploit:~
usage: tdo_bulk.py [options] FILE [FILE ...]

Positionsargumente:
  FILE                  Eine oder mehrere zu verarbeitende Dateien oder Verzeichnisse

Kernoptionen:
  -o, --output DIR      Ausgabeverzeichnis (Standard: ./extracted_data)
  --csv FILE            Zusammenfassung als CSV exportieren
  -j, --jobs N          Anzahl paralleler Arbeiter (Standard: 1)
  --retries N           LLM-Wiederholungsanzahl (Standard: 2)
  --backoff SEC         Exponentielle Backoff-Basis (Standard: 1.5)

Analysefunktionen:
  --flow                Attack-Flow JSON generieren
  --opps                Bedrohungserkennungsmöglichkeiten generieren
  --eval-opps           Qualität der Erkennungsmöglichkeiten bewerten
  --debug-opps          Debug-Informationen für die Generierung von Möglichkeiten anzeigen

Ausgabekontrolle:
  -q, --quiet           Minimale Konsolenausgabe
  -v, --verbose         Debug-Level-Logging
  -h, --help            Hilfemeldung anzeigen und beenden

Beispielbefehle

root@kitploit:~
# Grundlegende CTI-Extraktion
python tdo_bulk.py threat_report.pdf

# Vollständige Analyse mit allen Funktionen
python tdo_bulk.py apt_report.pdf --flow --opps --eval-opps

# Batch-Verarbeitung mit parallelen Arbeitern
python tdo_bulk.py reports_folder/ -j 8 --flow --opps

# Ergebnisse als CSV exportieren
python tdo_bulk.py *.pdf --csv results.csv

# Leiser Modus für Automatisierung
python tdo_bulk.py reports/ -q -o /var/soc/cti --opps

📊 Ausgabedateien

Für jede verarbeitete Datei generiert das Tool:

Primäre Ausgaben

  • {filename}_extracted.json: Strukturierte CTI-Daten mit umfassendem Schema
  • {filename}_{timestamp}.md: Lesbarer Markdown-Bericht mit allen Analysen

Optionale Ausgaben (mit Flags)

  • Attack Flow JSON: Evidenzbasierte MITRE ATT&CK-Ablaufstruktur (mit --flow)
  • Erkennungsmöglichkeiten: Handlungsorientierte Erkennungsregeln mit Belegen (mit --opps)

🔍 CTI-Schema-Übersicht

Entitätstypen (12 Typen)

EntitätstypBeschreibungWichtige Eigenschaften
ThreatActorCyber-Bedrohungsgruppenaliases, primary_motivation, first_seen
ToolLegitime Softwarefamily, capabilities, kill_chain_phases
MalwareSchadsoftwarefamily, capabilities, first_seen, last_seen
TechniqueMITRE ATT&CK-Technikenid (T1234), description, kill_chain_phases
TacticMITRE ATT&CK-Taktikenid (TA0001), description
InfrastructureIPs, Domains, URLstype, tags, first_seen, last_seen
IndicatorDatei-Hashes, Mustervalue, pattern, valid_from, valid_until
VulnerabilityCVE-Einträgeid, cvss_score, affected_software
CampaignBenannte Angriffskampagnenobjective, status, first_seen
IdentityZielorganisationentype, description
CourseOfActionAbwehrmaßnahmen, Patchestype, description
SourceDokumentenherkunftfilename, ,

Beziehungstypen (24 Typen)

Attributions- & Akteursbeziehungen:

  • USES_TOOL, USES_TECHNIQUE, CONDUCTS, ATTRIBUTED_TO, TARGETS

Technische Beziehungen:

  • TOOL_IMPLEMENTS_TECHNIQUE, HOSTS_ON, COMMUNICATES_WITH, VARIANT_OF
  • DROPS, DOWNLOADS, INDICATES, OBSERVED_ON, EXPLOITS

Erweiterte Beziehungen:

  • MITIGATES, DETECTS, IS_SUBTECHNIQUE_OF, FLOW_CONTAINS_STEP
  • FLOW_USED_BY_ACTOR, OBSERVES, SOURCED_FROM

Alle Beziehungen unterstützen Eigenschaften wie confidence, source, first_seen, last_seen.

💡 Erkennungsmöglichkeiten

Das Tool generiert evidenzbasierte Erkennungsmöglichkeiten mit:

Kernfunktionen

  • Technikzuordnung: Verknüpfung mit spezifischen MITRE ATT&CK-Techniken
  • Beobachtbare Artefakte: Spezifische Indikatoren zur Erkennung
  • Verhaltensmuster: Sequenzen und Muster zur Überwachung
  • Belegzitate: Direkte Zitate aus Quellberichten
  • Konfidenzwerte: Zuverlässigkeitsbewertung (0.0-1.0)
  • Qualitätsbewertung: Automatisierte Bewertung mit Kriterienaufschlüsselung

Beispielausgabe

root@kitploit:~
{
  "id": "opp-001",
  "name": "Erkennung von PowerShell-Prozessinjektion",
  "technique_id": "T1055",
  "artefacts": ["powershell.exe mit WriteProcessMemory-Aufrufen"],
  "behaviours": ["Prozessinjektion in legitime Prozesse"],
  "rationale": "APT-Gruppen verwenden häufig PowerShell zur Prozessinjektion",
  "confidence": 0.8,
  "source": "PowerShell für Prozessinjektion verwendet (T1055)",
  "evidence": [
    "• PowerShell führt WriteProcessMemory-Aufrufe aus (Zeile 45)",
    "• Beziehung: ThreatActor USES_TECHNIQUE T1055"
  ]
}

🔗 Angriffsablauf-Synthese

Erweiterte Angriffsabläufe bieten:

  • Evidenzbasierte Reihenfolge: Schritte, die durch zeitliche und kausale Belege gestützt werden
  • Entitätsreferenzierung: Jeder Schritt verweist auf extrahierte CTI-Entitäten
  • Explizite Begründung: Rechtfertigung der Schrittfolge mit Zitaten
  • Umfassende Abdeckung: Bis zu 25 Schritte, die den gesamten Angriffslebenszyklus abdecken

Beispiel-Angriffsablauf

root@kitploit:~
{
  "flow": {
    "label": "AttackFlow",
    "pk": "attack-flow--uuid",
    "properties": {
      "name": "APT29 Mehrstufiger Angriff",
      "description": "Sophisticated spear-phishing to data exfiltration flow"
    }
  },
  "steps": [
    {
      "order": 1,
      "entity": {"label": "Technique", "pk": "T1566.001"},
      "description": "Lieferung von Spear-Phishing-Anhängen",
      "reason": "Methode des Erstzugriffs, zitiert in Berichtsabschnitt 2.1"
    }
  ]
}

🏗️ Architekturübersicht

Kernkomponenten

🎯 Haupt-CLI (tdo_bulk.py)

  • Einstiegspunkt mit Argumentparsing und Umgebungsvalidierung
  • Lädt .env-Konfiguration mittels python-dotenv
  • Orchestriert die Stapelverarbeitung mit Fortschrittsverfolgung

⚙️ Stapel-Runner (tdo_bulk_runner.py)

  • Verwaltet die parallele Verarbeitung mit ThreadPoolExecutor
  • Koordiniert die Extraktionspipeline-Stufen
  • Behandelt Fortschrittsrückrufe und Fehlerbehebung

🧠 CTI-Extraktor (tdo_core/extractors/report_processor.py)

  • Dokumentenparsing: Multi-Format-Unterstützung (PDF, DOCX, TXT, MD)
  • LLM-Integration: Google Gemini mit strukturierter Ausgabe
  • Fallback-Parsing: Manuelles JSON-Parsing bei Fehlschlag der strukturierten Ausgabe
  • Token-Verwaltung: Automatische Aufteilung großer Dokumente
  • Schema-Validierung: Pydantic-Modelle gewährleisten Datenkonsistenz

🔍 TDO-Generator (tdo_core/detection/opportunity_generator.py)

  • Erstellung evidenzbasierter Erkennungsmöglichkeiten
  • MITRE ATT&CK-Technikzuordnung
  • Qualitätsbewertung mit Bewertungskriterien
  • Debug-Modus für detaillierte Analyse

🌊 Angriffsablauf-Synthesizer (tdo_core/flows/attack_flow_synthesizer.py)

  • LLM-gestützte Flussgenerierung mit Belegnachweisen
  • Regelbasierter Fallback für einfache Abläufe
  • Schrittfolge mit expliziter Begründung
  • Analyse von Entitätsbeziehungen

📝 Berichtsgenerator (tdo_core/report/md_export.py)

  • Erstellung von lesbaren Markdown-Berichten
  • Darstellung strukturierter Daten
  • Integration aller Analysekomponenten

🎨 Prompt-Verwaltung (tdo_core/llm/prompts.py)

  • Zentrale Prompt-Vorlagen
  • Optimierung der strukturierten Ausgabe
  • Best Practices für die LLM-Interaktion

Datenfluss

root@kitploit:~
Dokumenteneingabe → Textextraktion → LLM-Verarbeitung → Strukturierte Ausgabe
     ↓                  ↓                 ↓                  ↓
   PDF/DOCX        Sauberer Text      Gemini API       JSON + Fallback
     ↓                  ↓                 ↓                  ↓
 Multi-Format      Vorverarbeitung   Pydantic-Schema    Validierung
     ↓                  ↓                 ↓                  ↓
 Dateiunterstützung Textbereinigung Strukturierte Daten  CTI-Graph
                                      ↓
                              Nachbearbeitung
                                 ↓         ↓
                          Angriffsabläufe Erkennungsmöglichkeiten
                                 ↓         ↓
                            Markdown-Bericht Export

🛠️ Erweiterte Konfiguration

Umgebungsvariablen

VariableErforderlichBeschreibungBeispiel
GEMINI_API_KEY✅Google AI API-SchlüsselAIza...
GEMINI_MODEL✅Zu verwendendes Gemini-Modellgemini-2.5-flash-preview-05-20

Modellauswahl-Leitfaden

ModellGeschwindigkeitQualitätKostenAnwendungsfall
gemini-2.5-flash-preview-05-20⚡ Schnell🎯 Gut💰 NiedrigProduktion, Stapelverarbeitung
gemini-2.5-pro-preview-06-05🐌 Langsam🏆 Exzellent💸 HochKomplexe Analysen, Forschung

🔧 Fehlerbehebung

Häufige Probleme

Fehlende Umgebungsvariablen

root@kitploit:~
Fehler: Erforderliche Umgebungsvariablen fehlen: GEMINI_API_KEY, GEMINI_MODEL

Lösung: Erstellen Sie eine .env-Datei mit beiden erforderlichen Variablen

Nicht unterstütztes Dateiformat

root@kitploit:~
Nicht unterstützte Datei wird übersprungen: document.rtf

Lösung: Konvertieren Sie in das Format PDF, DOCX, TXT oder MD

LLM-Verarbeitungsfehler

root@kitploit:~
Strukturierter Gemini-API-Fehler: ...

Lösungen:

  • Überprüfen Sie die Gültigkeit des API-Schlüssels
  • Überprüfen Sie die Schreibweise des Modellnamens
  • Versuchen Sie es zuerst mit kleineren Dokumenten
  • Verwenden Sie --verbose für detaillierte Fehlerprotokolle

JSON-Parsing-Probleme

Das Tool behandelt JSON-Parsing-Probleme automatisch mit:

  • Strukturierter Ausgabe als primäre Methode
  • Manuelles Parsing als Fallback
  • JSON-Reparatur für abgeschnittene Antworten
  • Sanfte Fehlerbehebung

Leistungsoptimierung

  • Parallele Verarbeitung: Verwenden Sie das Flag -j für mehrere Dateien
  • Modellauswahl: Verwenden Sie schnellere Modelle für die Stapelverarbeitung
  • Leiser Modus: Verwenden Sie -q für Automatisierungsskripte
  • Ausgabeverwaltung: Organisieren Sie benutzerdefinierte Ausgabeverzeichnisse

Debug-Modus

root@kitploit:~
# Ausführliches Logging aktivieren
python tdo_bulk.py report.pdf -v

# Erkennungsmöglichkeiten debuggen
python tdo_bulk.py report.pdf --opps --debug-opps

# Detaillierte Protokolle exportieren
python tdo_bulk.py report.pdf -v > processing.log 2>&1

📦 Abhängigkeiten

Das Tool erfordert Python 3.9+ und diese wichtigen Pakete:

  • google-generativeai: Google AI (Gemini) API-Client mit strukturierter Ausgabe
  • PyMuPDF: Hochleistungsfähige PDF-Textextraktion
  • python-docx: Microsoft Word-Dokumentenverarbeitung
  • pandas: Datenmanipulation und CSV-Export
  • pydantic: Schema-Validierung und strukturierte Ausgabe
  • python-dotenv: Verwaltung von Umgebungsvariablen
  • cleantext: Textvorverarbeitungs-Werkzeuge

🚧 Einschränkungen

Diese eigenständige Version:

  • Enthält keine Knowledge-Graph- oder Neo4j-Integration
  • Unterstützt keine Vektordatenbankfunktionen für Ähnlichkeitssuche
  • Keine Echtzeit-Abruf-Augmentierungsfähigkeiten
  • Vereinfacht im Vergleich zur vollständigen TDO-Plattform

Sie enthält jedoch alle Kernfunktionen zur CTI-Extraktion und -Analyse, die für die meisten Anwendungsfälle erforderlich sind.

🔄 Aktuelle Verbesserungen

  • Umgebungskonfiguration: Migration zur .env-Dateiverwaltung mit dotenv
  • Strukturierte Ausgabe: 100% zuverlässiges JSON-Parsing mit Google Gemini strukturierter Ausgabe
  • Erweiterte Schemata: Umfassende 12 Entitätstypen und 24 Beziehungstypen
  • Erkennungsmöglichkeiten: Evidenzbasierte Generierung von Erkennungsregeln mit Bewertung
  • Verbesserungen im Angriffsablauf: Erweitert mit Belegnachweisen und expliziter Begründung
  • Keine fest codierten Standardwerte: Die gesamte Konfiguration stammt aus Umgebungsvariablen
  • Robuste Fehlerbehandlung: Automatisches Fallback-Parsing und sanfte Fehlerbehebung

🔒 Sicherheitshinweise

API-Key-Schutz

  • Committen Sie niemals Ihre .env-Datei – sie wird durch .gitignore ausgeschlossen
  • Speichern Sie GEMINI_API_KEY sicher mithilfe von Umgebungsvariablen
  • Rotieren Sie API-Schlüssel regelmäßig
  • Lesen Sie SECURITY.md für detaillierte Sicherheitshinweise

Datenschutz

  • Dokumenttext wird zur Verarbeitung an Googles Gemini-API gesendet
  • Überprüfen Sie die Datenverwendungsrichtlinien von Google AI, bevor Sie vertrauliche Dokumente verarbeiten
  • Extrahierte Daten können vertrauliche Informationen enthalten (IOCs, Organisationsnamen, Dateipfade)
  • Überprüfen Sie die Ausgaben, bevor Sie sie außerhalb Ihrer Organisation teilen

Ausgabedaten

Extrahierte JSON- und Markdown-Dateien können enthalten:

  • IP-Adressen und Domainnamen (Infrastrukturindikatoren)
  • Datei-Hashes und technische Indikatoren
  • Organisations- und Zielinformationen
  • Detaillierte Daten zu Bedrohungsakteuren und Kampagnen

Überprüfen Sie die Ausgaben immer vor der öffentlichen Weitergabe.

Melden von Sicherheitsproblemen

Bitte melden Sie Sicherheitslücken verantwortungsbewusst. Siehe SECURITY.md für Details.

📄 Lizenz

Dieses Projekt ist unter der MIT-Lizenz lizenziert – siehe LICENSE für Details.

🤝 Mitwirken

Beiträge sind willkommen! Bitte lesen Sie CONTRIBUTING.md für Richtlinien.


Hilfe benötigt? Führen Sie python tdo_bulk.py --help für eine Kurzreferenz aus oder lesen Sie den Abschnitt zur Fehlerbehebung oben.

Tool herunterladen
document_title
file_size_mb