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
Tools/GitHubGitHub/threatrecall/zettelforge
OSINT (Open-Source-Intelligence)AufklärungSchwachstellenanalyseForensikInformationsbeschaffungMalware-AnalyseBedrohungsanalyseMaschinelles LernenLernen & BildungIncident ResponseKI-Sicherheit
GitHubthreatrecall/zettelforge

zettelforge

Agentisches Gedächtnis für CTI in Python — STIX-Wissensgraphen, Auflösung von Bedrohungsakteur-Aliasen, offline-first RAG, MCP-Server für Claude Code und LangChain-Agenten

Repository anzeigenWebseite
588vor 1 MonatVon 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

ZettelForge

Das einzige agentische Gedächtnissystem, das für Cyber Threat Intelligence entwickelt wurde.

Wenn ein erfahrener Analyst geht, verschwinden zwei oder drei Jahre Kontext mit ihm – Kundenumgebungen, frühere Untersuchungen, TTPs von Akteuren, False-Positive-Muster, jedes mühsam erworbene "Moment mal, das haben wir schon einmal gesehen." ZettelForge ist ein agentisches Gedächtnissystem, das dafür sorgt, dass der Kontext beim Team bleibt.

Es extrahiert CVEs, Bedrohungsakteure, IOCs und ATT&CK-Techniken aus Analystennotizen und Bedrohungsberichten, löst Aliase auf (APT28 = Fancy Bear = STRONTIUM = Sofacy), baut einen STIX 2.1-Wissensgraphen auf und gibt jede vergangene Untersuchung an Ihre Analysten – und über MCP an Claude Code – in natürlicher Sprache zurück. Läuft vollständig prozessintern. Keine API-Schlüssel. Keine Cloud. Keine Daten verlassen den Host.

PyPI Downloads/Monat Star-Verlauf Python 3.10+ Lizenz: MIT CI Offene Probleme Ask DeepWiki

Star · pip install zettelforge · Dokumentation · ThreatRecall (gehostet) · Changelog

v2.6.2 (2026-04-27): Der Konfigurations-Webeditor wird mit funktionierenden Dropdowns für alle Enum-Felder (LLM/Embedding-Anbieter, Log-Level, PII-Aktion, Syntheseformat) und einem funktionierenden "Übernehmen"-Button ausgeliefert. Neue [crewai]-Erweiterung macht ZettelForge als CrewAI-Tools verfügbar – pip install zettelforge[crewai]. Vollständiger Changelog

ZettelForge Demo – CTI-agentisches Gedächtnis in Aktion

Wenn ZettelForge in Ihren CTI-Workflow passt, ist ein Star das schnellste Signal, dass sich eine weitere Investition in diese Kategorie lohnt.

Das Problem

Jedes SOC verliert Analysten. Wenn sie gehen, verschwinden Untersuchungskontext, Akteurszuschreibungen und umgebungsspezifische False-Positive-Muster mit ihnen. Ihre Ersatzleute öffnen dieselben Tickets erneut, lesen dieselben Berichte und bauen dieselben mentalen Modelle von Grund auf neu auf.

Allgemeine KI-Gedächtnissysteme beheben dies nicht für Sicherheitsteams. Sie können APT28 nicht von Fancy Bear unterscheiden, wissen nicht, dass CVE-2024-3094 die XZ-Utils-Hintertür ist, können Sigma oder YARA nicht parsen und haben kein Konzept von MITRE ATT&CK-Technik-IDs. Wenn ein CTI-Analyst ihnen ein Jahr an Intel-Berichten gibt, erhalten sie unscharfe semantische Suche über den Chatverlauf zurück.

ZettelForge wurde für Analysten entwickelt, die in Bedrohungsgraphen denken. Es extrahiert automatisch CVEs, Bedrohungsakteure, IOCs und ATT&CK-Techniken, löst Aliase über Namenskonventionen hinweg auf, baut einen Wissensgraphen mit kausalen Beziehungen auf und ruft Erinnerungen mittels absichtsbewusster gemischter Suche ab – alles prozessintern, ohne externe API-Abhängigkeit.

Gedächtniserweiterung schließt 33 % der Lücke zwischen kleinen und großen Modellen bei CTI-Aufgaben (CTI-REALM, Microsoft 2026, mit GPT-4 als Baseline für große Modelle). Siehe vollständiger Benchmark-Bericht für Methodik und Vergleiche.

FähigkeitZettelForgeMem0GraphitiCognee
CTI-Entitätsextraktion (CVEs, Akteure, IOCs)JaNeinNeinNein
STIX 2.1-OntologieJaNeinNeinNein
Bedrohungsakteur-Alias-AuflösungJa (APT28 = Fancy Bear)NeinNeinNein
Wissensgraph mit kausalen TripelnJaNeinJaJa
Absichtsklassifizierte Abfrage (5 Typen)JaNeinNeinNein
Prozessintern / keine externe API erforderlichJaNeinNeinNein
Prüfprotokolle im OCSF-SchemaJaNeinNeinNein
MCP-Server (Claude Code)JaNeinNeinNein

Datenpipeline

ZettelForge-Architektur – neuronale Gedächtnisschleife: aufnehmen, anreichern, abrufen, synthetisieren, unterstützt von SQLite + LanceDB

Funktionen

Entitätsextraktion – Automatische Identifizierung von CVEs, Bedrohungsakteuren, IOCs (IPs, Domains, Hashes, URLs, E-Mails), MITRE ATT&CK-Techniken, Kampagnen, Eindringungssets, Tools, Personen, Orten und Organisationen. Regex + LLM NER mit durchgängiger STIX 2.1-Typisierung.

Wissensgraph – Entitäten werden Knoten, Ko-Vorkommen wird zu Kanten. Das LLM leitet kausale Tripel ab ("APT28 verwendet Cobalt Strike"). Zeitkanten und Supersession verfolgen, wie sich Intelligence entwickelt.

Alias-Auflösung – APT28, Fancy Bear, Sofacy, STRONTIUM werden alle auf denselben Akteursknoten aufgelöst. Funktioniert automatisch beim Speichern und Abrufen.

Gemischte Abfrage – Vektorähnlichkeit (768-dim fastembed, ONNX) + Graphdurchquerung (BFS über Wissensgraphenkanten), gewichtet nach Absichtsklassifikation. Fünf Absichtstypen: faktisch, zeitlich, relational, explorativ, kausal.

Gedächtnisevolution – Mit evolve=True wird neuer Intel mit vorhandenem Gedächtnis verglichen. Das LLM entscheidet über HINZUFÜGEN, AKTUALISIEREN, LÖSCHEN oder NICHTSTUN. Veralteter Intel wird ersetzt. Widersprüche werden aufgelöst. Duplikate werden übersprungen.

RAG-Synthese – Synthetisiert Antworten über alle gespeicherten Erinnerungen hinweg mit dem direct_answer-Format.

Architekturbedingt prozessintern – fastembed (ONNX) für Embeddings, llama-cpp-python für optionale lokale LLM-Inferenz, SQLite + LanceDB für Speicherung und standardmäßig Ollama auf localhost. Es sind keine externen API-Schlüssel erforderlich. Ausgehender Netzwerkzugriff kann beim ersten Ausführen auftreten, wenn Embedding-/LLM-Modelle heruntergeladen werden; nach dem Vorladen der Modelle kann es vollständig offline (auch auf luftspaltengetrennten Hosts) ausgeführt werden.

Prüfprotokollierung im OCSF-Schema – Jeder Vorgang sendet ein strukturiertes Ereignis im Open Cybersecurity Schema Framework-Format. Was Sie mit dem Protokollstrom machen (SIEM, WORM-Speicher, nichts), bleibt Ihnen überlassen.

Schnellstart

30-Sekunden-Hallo-Welt (kein LLM erforderlich)

root@kitploit:~
pip install zettelforge
root@kitploit:~
from zettelforge import MemoryManager

mm = MemoryManager()

# CTI speichern – Entitäten (CVEs, Akteure, ATT&CK-IDs, IOCs) werden via Regex extrahiert
mm.remember("APT28 verwendet Cobalt Strike für seitliche Bewegungen via T1021")
mm.remember("APT28 (Fancy Bear) greift NATO-Verteidigungsunternehmen mit Spear-Phishing an")
mm.remember("CVE-2024-3094 ist die XZ-Utils-Hintertür (CVSS 10.0), die sshd betrifft")

# Abrufen kombiniert Vektor- + Graphsuche; Alias-Auflösung wird aktiv (Fancy Bear -> APT28)
for note in mm.recall("Welche Tools verwendet Fancy Bear?", k=3):
    print(f"[{note.metadata.tier}] {note.content.raw}")

Das funktioniert mit einer frischen pip install ohne externe Dienste. Embeddings laufen prozessintern via fastembed (~80 MB ONNX-Modell, das beim ersten Aufruf heruntergeladen wird). MemoryManager() schreibt standardmäßig nach ~/.amem/; überschreiben mit ZETTELFORGE_DATA_DIR oder per Konfiguration. Eine ausführbare Kopie befindet sich unter examples/quickstart.py.

LLM für Synthese und umfangreichere Extraktion hinzufügen

root@kitploit:~
ollama pull qwen3.5:9b && ollama serve
root@kitploit:~
# Wenn Ollama läuft, gibt synthesize() eine echte Zusammenfassung über alle gespeicherten Notizen zurück
answer = mm.synthesize("Fasse bekannte APT28-TTPs zusammen")
print(answer["synthesis"]["answer"])
# Die Hintergrund-LLM-NER reichert die gespeicherten Notizen ebenfalls mit zusätzlichen Entitäten an

ZettelForge erkennt Ollama automatisch. Um einen anderen Anbieter zu verwenden (local llama-cpp, litellm für über 100 Anbieter, mock für Tests), siehe Konfiguration. Ohne LLM gibt synthesize() immer noch eine strukturierte Antwort zurück, aber das Feld answer ist ein Platzhalter – nur remember und recall liefern im reinen Pip-Modus nützliche Ergebnisse.

Gedächtnisevolution

root@kitploit:~
# Neuer Intel trifft ein – evolve=True aktiviert die Gedächtnisevolution:
# Das LLM extrahiert Fakten, vergleicht sie mit vorhandenen Notizen und entscheidet HINZUFÜGEN/AKTUALISIEREN/LÖSCHEN/NICHTSTUN
mm.remember(
    "APT28 hat seine Taktiken geändert. Sie haben DROPBEAR fallen gelassen und nutzen jetzt Edge-Geräte aus.",
    domain="cti",
    evolve=True,   # vorhandene APT28-Notiz wird ersetzt, nicht dupliziert
)

Wie es funktioniert

Jeder remember()-Aufruf löst eine Pipeline aus:

  1. Entitätsextraktion – Regex + LLM NER identifiziert CVEs, Eindringungssets, Bedrohungsakteure, Tools, Kampagnen, ATT&CK-Techniken, IOCs (IPv4, Domain, URL, MD5/SHA1/SHA256, E-Mail), Personen, Orte, Organisationen, Ereignisse, Aktivitäten und Zeitbezüge (19 Typen)
  2. Wissensgraph-Aktualisierung – Entitäten werden Knoten, Ko-Vorkommen wird zu Kanten, das LLM leitet kausale Tripel ab
  3. Vektor-Embedding – 768-dim fastembed (ONNX, prozessintern, 7ms/Embedding) in LanceDB gespeichert
  4. Supersession-Prüfung – Entitätsüberlappungserkennung markiert veraltete Notizen als ersetzt
  5. Dual-Stream-Schreiben – schneller Pfad gibt in ~45ms zurück; kausale Anreicherung wird an einen Hintergrund-Worker delegiert

Jeder recall()-Aufruf kombiniert zwei Abrufstrategien:

  1. Vektorähnlichkeit – semantische Suche über Embeddings
  2. Graphdurchquerung – BFS über Wissensgraphenkanten, bewertet nach Hopenhfernung
  3. Absichtslenkung – Anfrage wird als faktisch/zeitlich/relational/kausal/explorativ klassifiziert, Gewichtungen pro Typ angepasst
  4. Cross-Encoder-Neubewertung – ms-marco-MiniLM ordnet endgültige Ergebnisse nach Relevanz neu

ZettelForge in Claude Desktop in 60 Sekunden nutzen

root@kitploit:~
pip install zettelforge

Erstellen oder bearbeiten Sie .claude.json in Ihrem Projektstammverzeichnis (oder ~/.claude/.claude.json für globalen Zugriff):

root@kitploit:~
{
  "mcpServers": {
    "zettelforge": {
      "command": "python3",
      "args": ["-m", "zettelforge.mcp"]
    }
  }
}

Wenn ZettelForge in einer virtuellen Umgebung installiert ist, verwenden Sie den vollständigen Pfad zu diesem Python-Interpreter:

root@kitploit:~
{
  "mcpServers": {
    "zettelforge": {
      "command": "/home/user/.venvs/zettelforge/bin/python",
      "args": ["-m", "zettelforge.mcp"]
    }
  }
}

Starten Sie Claude Code und überprüfen Sie, ob die Tools verfügbar sind:

root@kitploit:~
claude
# Innerhalb der Sitzung fragen: "Welche Tools hast du von zettelforge verfügbar?"

Sieben Tools werden bereitgestellt: zettelforge_remember, zettelforge_recall, zettelforge_synthesize, zettelforge_entity, zettelforge_graph, zettelforge_stats und zettelforge_sync (erfordert Enterprise-Paket). Siehe MCP-Protokollreferenz für vollständige Schemata, JSON-RPC-Anfrage-/Antwortbeispiele, Fehlercodes und den Lazy-Singleton-Lebenszyklus. Zur Fehlerbehebung, virtualenv-Pfaden und manuellem Tool-Testing siehe set-up-mcp-server.

Benchmarks

Ausgewertet gegen veröffentlichte akademische Benchmarks:

BenchmarkWas wird gemessenPunktzahl
CTI-Abruf (CTIBench-Teilmenge)Zuschreibung, CVE-Verknüpfung, Multi-Hop75.0 %
RAGASAbrufqualität (Schlüsselwortpräsenz)78.1 %
LOCOMO (ACL 2024)Konversationelles Gedächtnisabruf22.0 %

Die Spalte Punktzahl berichtet ZettelForge-Messungen, die mit Ollama-gehosteten Modellen durchgeführt wurden, mit einer Ausnahme: Die LOCOMO-Zeile wurde bei v2.1.1 mit einem Ollama-Cloud-Richter für die Evaluierungsbewertung (nicht lokale Generierung) neu gemessen. Siehe den vollständigen Benchmark-Bericht für benchmarkspezifische Methodik, Versionshistorie und pro Suite Richterkonfiguration.

Erkennungsregeln als Gedächtnis (Sigma + YARA)

Sigma- und YARA-Regeln sind erstklassige Gedächtnis-Primitive. Analysieren, validieren und übernehmen Sie eine Regel, und ihre Tags werden zu Graphkanten: MITRE ATT&CK-Techniken, CVEs, Bedrohungsakteurs-Aliase, Tools und Malware-Familien werden gegen dieselbe Ontologie wie jede andere Notiz aufgelöst. Ein gemeinsamer DetectionRule-Supertyp trägt die Subtypen SigmaRule und YaraRule, sodass eine einzelne Regel-UUID über beide Formate hinweg adressierbar ist.

Sigma-Regeln werden gegen das beigefügte SigmaHQ-JSON-Schema validiert. YARA-Regeln werden mit plyara geparst und gegen den CCCS-YARA-Metadatenstandard geprüft (Stufen: strict, warn, non_cccs). Die Übernahme ist idempotent – das erneute Übernehmen einer unveränderten Regel gibt die ursprüngliche Notiz über eine inhaltsgehashte source_ref zurück.

root@kitploit:~
from zettelforge import MemoryManager
from zettelforge.sigma import ingest_rule as ingest_sigma
from zettelforge.yara import ingest_rule as ingest_yara

mm = MemoryManager()
ingest_sigma("rules/proc_creation_win_office_macro.yml", mm)
ingest_yara("rules/webshell_china_chopper.yar", mm, tier="warn")
root@kitploit:~
# Massenübernahme aus SigmaHQ oder einem privaten Regel-Repository
python -m zettelforge.sigma.ingest /pfad/zu/sigma/regeln/
python -m zettelforge.yara.ingest /pfad/zu/yara/regeln/ --tier warn

# CI-Fixture-Prüfung – parsen + validieren, keine Schreibvorgänge
python -m zettelforge.sigma.ingest regeln/ --dry-run

Ein LLM-Regelerklärer (zettelforge.detection.explainer.explain) erzeugt eine strukturierte JSON-Zusammenfassung – Absicht, Schlüsselfelder, Umgehungshinweise, False-Positive-Hypothesen – für jede DetectionRule. Er läuft synchron auf Abruf in v1; die asynchrone Anreicherungswarteschlangen-Verdrahtung kommt in v1.1. Ratenbegrenzung via ZETTELFORGE_EXPLAIN_RPM (Standard 60 Aufrufe/Minute).

Referenzen: Sigma-Spezifikation, SigmaHQ-Regeln, CCCS YARA, YARA-Dokumentation.

Integrationen

ATHF (Agentic Threat Hunting Framework)

Übernehmen Sie abgeschlossene ATHF-Jagden in das ZettelForge-Gedächtnis. MITRE-Techniken und IOCs werden extrahiert und im Wissensgraphen verknüpft.

root@kitploit:~
python examples/athf_bridge.py /pfad/zu/jagden/
# 12 Jagd(en) geparst
# 12/12 Jagden in ZettelForge übernommen

Siehe examples/athf_bridge.py.

ThreatRecall (gehostet)

ThreatRecall ist die kommerzielle Distribution von ZettelForge mit aktivierten Enterprise-Erweiterungen. Es wird standardmäßig als verwaltete SaaS angeboten, mit optionalen selbst gehosteten On-Premises- und Air-Gapped-Bereitstellungen für klassifizierte Umgebungen. Enterprise-Add-Ons:

  • TypeDB STIX 2.1-Backend – schemaerzwungene Ontologie mit Inferenzregeln
  • OpenCTI-Synchronisation – bidirektionale Synchronisation mit Ihrer OpenCTI-Instanz
  • Multi-Mandanten-Authentifizierung – OAuth/JWT mit mandantenspezifischer Datenisolierung
  • Sigma-Regelgenerierung – Erkennungsregeln aus extrahierten IOCs (demnächst)

SaaS wird in Minuten bereitgestellt, ohne dass eine Infrastruktur gewartet werden muss. Selbst gehostet wird als bereitstellbares Bundle für Umgebungen ausgeliefert, in denen ausgehender Netzwerkverkehr eingeschränkt oder verboten ist.

Auf die Warteliste setzen – derzeit werden Designpartner onboarded.

Konfiguration

VariableStandardBeschreibung
AMEM_DATA_DIR~/.amemDatenverzeichnis
ZETTELFORGE_BACKENDsqliteSQLite-Community-Backend. TypeDB verfügbar via Erweiterung.
ZETTELFORGE_LLM_PROVIDERlocallocal (llama-cpp) oder ollama

Siehe config.default.yaml für alle Optionen.

Mitwirken

Siehe CONTRIBUTING.md für das Entwicklungssetup.

Lizenz

MIT – Siehe LICENSE.

Erstellt von Patrick Roland – LinkedIn | Director of SOC Services, Summit 7 Systems | Navy Nuclear Veteran | CISSP, CCP (CMMC 2.0 Professional)

Unterstützen Sie das Projekt

ZettelForge ist MIT-lizenziert. Star das Repository, öffne Issues und reiche PRs ein – alle Beiträge sind willkommen.

Danksagungen

  • Inspiriert von Zettelkasten und A-Mem (NeurIPS 2025)
  • Zwei-Phasen-Pipeline inspiriert von Mem0
  • STIX 2.1-Schema beeinflusst von typedb-cti
  • Benchmark-getestet gegen LOCOMO (ACL 2024) und CTIBench (NeurIPS 2024)
  • LanceDB | fastembed | Pydantic | TypeDB
Tool herunterladen