Skip to main content
Glama

Live-Site CVE-Datenbank MCP-Server Security-Health-Action llms.txt

security-recipes.ai

Suchen Sie CVEs. Beheben Sie Schwachstellen mit KI-Agenten. Quellen bleiben Quellen, die Sanierung bleibt begrenzt, und jeder Plan enthält Verifikations-, Rollback- und Stoppbedingungen – das Versprechen der Live-Site und dieses Repos.

security-recipes.ai ist eine Eleventy-Site für quellenbasierte CVE-Intelligenz und evidenzgeprüfte Schwachstellensanierung, die KI-Agenten nutzen können, ohne Bereitstellungs- oder Produktionsautorität zu übernehmen.

Das Projekt ist bewusst schmal:

  • eine vollständige, rollierende CVE-Datenbank für mittlere/hohe/kritische Schwachstellen,

  • evidenzqualifizierte kanonische CVE-Sanierungsdatensätze,

  • praktische Sicherheits-Sanierungsrezepte,

  • Prompt- und Regeldatei-Beispiele,

  • Agenten-Setup-Anleitungen,

  • MCP-Integrationsmuster,

  • ein optionaler schreibgeschützter MCP-Server für Rezeptsuche und genehmigten Upstream-MCP-Kontext,

  • eine wiederverwendbare GitHub Action, die diese Anleitung in umschaltbare CI-Health-Checks verwandelt.

Es ist kein Scanner, Ticketsystem, SOAR-Plattform, Bereitstellungstool oder benutzerdefiniertes Sicherheits-Toolkit. Bestehende Sicherheitstools sollten die Ergebnisse liefern; diese Site hilft Agenten, den richtigen Sanierungskontext zu verwenden und zur richtigen Zeit anzuhalten.

Beginnen Sie mit der Live-CVE-Datenbank für eine genaue Schwachstelle oder den KI-Schwachstellensanierungs-Playbooks für den Workflow von Evidenz zu Patch. Agentspezifische Anleitungen decken Codex, Claude Code, Cursor, GitHub Copilot, Devin, Shiba Studio, Hermes Desktop und OpenClaw ab. Der Visuelle Leitfaden zeigt den kompletten Weg von der Quellenqualifizierung und Suchfindung bis zu einem begrenzten Plan, Beweis, Rollback und menschlicher Überprüfung. Für das spezifische Problem der Sicherung der Identitäten, Tools, Konnektoren, Kontexte, Speicher, Laufzeit und Wiederherstellungssteuerungen eines Agentensystems verwenden Sie KI-Agentensicherheit.

Aktuelles Produkt und Workflow

Security Recipes CVE-Datenbank und KI-Schwachstellensanierungs-Interface

Qualifizierte Suchfindung

Ein Quellenkatalog passiert ein Evidenz-Gate, bevor eine kanonische CVE-Seite die Suchfindung und einen überprüften Sanierungsworkflow erreicht

Der vollständige Katalog bleibt durchsuchbar, während öffentliche kanonische CVE-Seiten auf überprüfte oder evidenzqualifizierte Datensätze beschränkt bleiben. Diese Seiten enthalten eindeutige Suchmetadaten, serverseitig gerenderte Kernfakten und Evidenz zu betroffenen Versionen, eine Sanierungsautorität (zuerst stabile überprüfte Anleitung, sonst vollständige quellenverlinkte KI-Anreicherung), einen kurzen genehmigungspflichtigen KI-Implementierungsprompt, kanonische URLs, Breadcrumbs und Article/TechArticle-strukturierte Daten. Die CVE-Datenbank beschreibt den Katalog als Dataset; die Sanierungssäule stellt ihren sichtbaren Sieben-Schritte-Workflow als HowTo dar. Nach Jahr partitionierte CVE-Sitemaps enthalten nur indexierbare kanonische Routen, und der Build schlägt fehl, wenn Sitemap-Parität, kanonische Eigentümerschaft, Crawl-Erreichbarkeit, Metadatenlimits oder Same-Origin-Links abweichen.

Die Indexierbarkeit wird auch massenhaft vorlagenbasierten Rezept-Kindern vorenthalten. Die 72 Entwicklungscode-Hygiene-Rezepte und 39 generierten Compliance-Framework-Rezepte bleiben von ihren kanonischen Hubs mit noindex,follow durchsuchbar, während sie eine gemeinsame Methode teilen. Ein begrenztes Ähnlichkeits-Gate für gerenderte Körper verhindert, dass ein Kind wieder in Sitemaps aufgenommen wird, bis seine Evidenz, Beispiele und Tests wesentlich unterschiedlich sind. Die Hubs bleiben indexierbar und tragen den gemeinsamen Findungskontext.

Nach einer SEO-relevanten Veröffentlichung muss die öffentliche Revision mit dem Merge-Commit übereinstimmen, bevor Sitemap-Einreichung oder URL-Inspektion erfolgt. Der Caddy-Bereitstellungsleitfaden dokumentiert die DNS-verifizierte Search-Console-Übergabe, Prioritätsprüfungen für Live-URLs, Sitemap-Einreichung, Indexierungsanfragen und Query-Überwachung. Die Einreichung ist ein Findungshinweis; sie garantiert keine Indexierung oder ein bestimmtes Ranking.

Die Sanierungssäule enthält auch ein öffentliches Repository-Beispiel für CVE-2026-13149 in brace-expansion. Es verbindet die reine Abhängigkeitsänderung mit dem überprüften Pull-Request, Tests, Advisory-Evidenz und Wiederherstellungspfad, während es die unzusammenhängende Fail2Ban-Arbeit desselben PRs explizit trennt.

CVE-Suche zu kanonischem Datensatz

CVE-Evidenz zu begrenztem Agentenplan

CVE-Suche, betroffene Oberfläche, Evidenz und kanonischer Sanierungsdatensatz

Siebenphasen-CVE-Sanierungsplan innerhalb eines Überprüfungs-Gates

Beweis und menschliche Überprüfung

Schreibgeschützter MCP-Kontext

Umfang, Änderung, Tests, Evidenz, Rollback und menschliche Überprüfung

Schreibgeschützter MCP-Kontext mit Schreibzugriff hinter expliziter Genehmigung

Related MCP server: CVE Intelligence MCP Server

Wofür dieses Projekt gedacht ist

KI-Codierungsagenten können helfen, Sicherheitsbefunde zu schließen, wenn ihre Arbeit begrenzt ist: ein Befund, ein Rezept, ein überprüftes Ergebnis.

security-recipes.ai hilft Teams, folgende Fragen zu beantworten:

  • Welches Rezept passt zu diesem Befund?

  • Welchen Prompt soll der Agent verwenden?

  • Wo platziere ich die Anweisungen für Copilot, Claude, Cursor, Codex oder Devin?

  • Welche MCP-Server soll der Agent für Advisory-, Scanner-, Repository- oder Runbook-Kontext lesen?

  • Was sollte der PR oder die Triage-Notiz enthalten, bevor ein Prüfer ihm vertraut?

Was enthalten ist

  • Eleventy-Dokumentationssite (schnelle statische Builds, keine Go-Toolchain).

  • CVE-erste Observatorium-Startseite und datenorientierte CVE-Datenbank.

  • Rezept-Hubs für Abhängigkeits-, SAST-, sensible-Daten-, Basis-Image-, CVE- und Standard-Härtungs-Sanierung.

  • CVE-Intelligenz-Intake-Richtlinie, Prompt, Fixtures und Evaluator zum Routing von Advisory-Signalen, bevor ein Agent patcht.

  • Ein vollständiger, rollierender zehnjähriger CVE-Katalog für mittlere/hohe/kritische Schwachstellen, zusammengesetzt aus integritätsverifizierten NVD-JSON-2.0-Feeds, CISA-KEV-Metadaten und jedem anwendbaren geprüften Sanierungs-Archetyp. Nur überprüfte stable-Markdown-Seiten überschreiben diese konservative Basislinie.

  • Eine integritätsgehashte Such-Allowlist, die kanonische CVE-Seiten nur für überprüfte stabile Markdown- oder KI-Anreicherung veröffentlicht, die den deterministischen rezeptbereiten Evidenzvertrag erfüllt. Die vollständige Datenbank bleibt durchsuchbar, auch wenn ein Datensatz nicht für die Suchindexierung in Frage kommt.

  • Ein versionierter Siebenphasen-Agenten-Änderungsvertrag für jede Katalog-CVE: entdecken, bewerten, mindern, sanieren, verifizieren, Rollback und Triage. Jede Aktion deklariert wahrscheinliche Dateiziele, Mutations- und Genehmigungsgrenzen, erforderliche Evidenz, Ausgaben und Fehlerverhalten, ohne einen Patch oder eine feste Version zu erraten.

  • Eine strukturierte Compliance-Bibliothek, die 39 Sicherheits-, Datenschutz-, Assurance-, Resilienz- und Software-Lieferketten-Frameworks abdeckt, ohne lizenzierte Kontrolltexte zu reproduzieren. Ihr Framework-Hub ist die Suchoberfläche; vorlagenbasierte Kind-Bewertungen bleiben noindex,follow, bis sie differenziert sind.

  • Eine 72-Rezepte-Code-Hygiene-Bibliothek, die sprachübergreifende und ökosystemspezifische Audit-, Sanierungs-, Verifikations- und Stoppbedingungs-Workflows abdeckt. Ihre Entwicklungs-Kinder bleiben noindex,follow, während ihre Körper eine generierte Vorlage teilen.

  • Rezepte mit vorhandenen Prompt-Sammlungen, die beibehalten werden.

  • Agenten-Setup-Anleitungen für GitHub Copilot, Claude, Cursor, Codex und Devin.

  • MCP-Integrationsanleitung für öffentliche und organisationsgenehmigte Sicherheitsdatenquellen.

  • Optionaler schreibgeschützter FastMCP-Server in mcp_server.py für Rezeptsuche, Abruf und opt-in Upstream-MCP-Kontext.

  • Docker- und Docker-Compose-Konfiguration für lokales oder Droplet-Hosting.

  • Hilfsskripte für Site-Wartung, Validierung, Importe und Bereitstellung.

Repository-Karte

Pfad

Zweck

content/

Rezepte, Dokumentation, Remediation-Anleitungen und Agenten-Setup-Seiten.

eleventy.config.js

Site-Build-Konfiguration (Permalinks, Feeds, Tag-Seiten).

_includes/

Seitenlayouts: Docs-Chrome und die eigenständige Startseite.

lib/

Build-Module: Shortcode-Ports, JSON-Feed-Builder, SEO-Head.

assets/

Site-CSS und JavaScript für den Rezept-Browser, Navigation und Hilfswerkzeuge.

static/

Bilder, Logos, Schemata und statische Assets.

static/api/cve-catalog/

Vollständiger shardierter CVE-Katalog, nach Jahren partitionierter Maschinenindex, komprimierter Browser-Suchindex, Provenienz-Manifest und Archetypen.

data/cve/

Von Menschen geprüfte Remediation-Archetypen, deterministischer KI-Anreicherungs-Cache und Ownership-Ledger für generierte Rezepte.

data/compliance-frameworks/

Strukturierter Compliance-Framework-Katalog und Quellregister.

data/code-hygiene/

Strukturierter Code-Hygiene-Katalog, Quellregister und Routing-Fixtures.

docs/

Repository-Dokumentation und veraltete Screenshot-Assets; aktuelle README- und visuelle Leitfaden-Bilder liegen in static/images/.

mcp_server.py

Optionaler schreibgeschützter MCP-Server für die Rezeptsuche und genehmigte Upstream-MCP-Kontexte.

mcp-server.toml.example

MCP-Server-Konfigurationsvorlage.

Dockerfile

Site-Image.

Dockerfile.mcp-server

Optionales MCP-Server-Image.

docker-compose.yml

Produktionsnaher lokaler Stack.

scripts/

Hilfsskripte für Wartung und Bereitstellung.

Kerninhaltsbereiche

  • CVE-Datenbank: CVE-Intelligence mit Quellenangabe, Nachweise betroffener Versionen und kanonische Remediation-Datensätze.

  • KI-Schwachstellen-Remediation: evidenzbasierte Playbooks von einem Befund bis zu einem geprüften Patch oder Triage-Hinweis.

  • KI-Agenten-Sicherheit: Bedrohungsmodellierung, Produktions-Baselines, Quellgrenzen, Steuerungs-Routing, Evidenz und Incident-Bereitschaft für das KI-Agenten-System selbst.

  • Schnellstart: von einem Befund zu einem geprüften PR oder Triage-Hinweis.

  • KI-Agenten-Vergleich: verifizierte Betriebsmodi, native Anweisungen, erwartete Artefakte, Voraussetzungen und Review-Gates für Copilot, Claude Code, Cursor, Codex und Devin.

  • Rezepte: wiederverwendbare Prompts, Anweisungen, Regeln, Skills und Review-Checklisten.

  • MCP-Integration: so verbinden Sie Sicherheitskontext sicher.

  • Visueller Leitfaden: der qualifizierte Such-Discovery-, CVE-zu-Plan-, Proof-, Rollback-, Review- und schreibgeschützte MCP-Ablauf in fünf Diagrammen.

  • Dokumentation: Site-Nutzung, Agenten-Konsum- Muster und Beitragsrichtlinien.

Python-Remediation-Werkzeuge

Die Python-Suite ist eine optionale ausführbare Ergänzung zur Dokumentation. Sie kann einen begrenzten Arbeitsbereich inspizieren, eines der 75 Remediation-Playbooks auswählen, ein dauerhaftes Run-Paket erstellen, evidenzbasierte Integritäts-Hashes aufzeichnen und das Paket vor der Übergabe an Agent oder Reviewer verifizieren. Sie bleibt lokal und konservativ: Sie führt keinen Code zusammen, stellt keine Änderungen bereit und ruft keine externen Systeme eigenständig auf.

python scripts/security_recipes_remediation_suite.py playbook list
python scripts/security_recipes_remediation_suite.py playbook inspect \
  --playbook vulnerable-dependencies --workspace .
python scripts/security_recipes_remediation_suite.py playbook start \
  --playbook vulnerable-dependencies --workspace . \
  --finding finding.json --run-dir .security-recipes/runs/dependency-fix
python scripts/security_recipes_remediation_suite.py playbook verify \
  --run-dir .security-recipes/runs/dependency-fix

Das Repository enthält außerdem domänenspezifische Generatoren und Evaluatoren für Playbooks, die umfangreichere Evidenzpakete oder Laufzeit-Policy-Entscheidungen benötigen. Die Site und das JSON-Register bleiben auch ohne Python nützlich; die Werkzeuge machen dieselben Workflow-Verträge direkt für CI, Orchestratoren und genehmigte Coding-Agenten ausführbar.

Bereitstellungshelfer, die Sie kennen sollten:

  • scripts/setup_digitalocean_droplet.sh: Ubuntu-Droplet-Bootstrap mit Docker, Host-Härtung und optionalem Caddy-verwaltetem HTTPS.

  • scripts/configure_nginx_letsencrypt.sh: Host-nginx-Reverse-Proxy-Setup für Teams, die Let's Encrypt auf nginx statt Caddy verwenden möchten.

  • README.nginx-letsencrypt.md: operatororientierter Leitfaden für den nginx-Bereitstellungspfad.

Empfohlenes Betriebsmodell:

  1. Lassen Sie bestehende SCA-, SAST-, Secrets-, CI-, Cloud- und Ticketing-Systeme Befunde erzeugen.

  2. Fügen Sie ein passendes security-recipes.ai-Rezept und einen Prompt hinzu.

  3. Lassen Sie den Agenten nur die Dateien und den MCP-Kontext lesen, die für den Befund benötigt werden.

  4. Verlangen Sie Tests und menschliche Prüfung vor dem Merge.

  5. Halten Sie breite Automatisierung, Schreibzugriff und Bereitstellung außerhalb der ersten Schleife.

Leitfaden und Ausführungswerkzeuge

Die Site ist ein Leitfaden für Remediation-Arbeit: Rezepte, Prompts, Agenten-Setup, MCP/API-Integrationshinweise und Review-Muster. Laufzeitautomatisierung gehört in den genehmigten Agenten-Host des Benutzers, das CI-System, den Ticketing-Workflow oder die Scanner-Plattform und nicht in einen site-gehosteten Chatbot.

Python-Werkzeuge in scripts/, tools/ und mcp_server.py unterstützen Maintainer und Selbst-Hoster mit Playbook-Ausführungspaketen, Evidenzverifizierung, domänenspezifischer Evaluierung und Generierung, Validierung, Advisory-Import, Rezeptsuche und optionalem schreibgeschütztem MCP-Zugriff.

Optionaler MCP-Server

Der MCP-Server ist standardmäßig schreibgeschützt. Seine Grundrolle besteht darin, MCP-kompatiblen Agenten die Suche und den Abruf von Rezepten zu ermöglichen. Selbst gehostete Bereitstellungen können ihn auch als Kontext-Hub für genehmigte Upstream-MCP-Server konfigurieren, ohne diese Anmeldeinformationen in die öffentliche Site zu legen.

Abgerufener Kontext gewährt niemals Mutationsbefugnis. Jeder Connector, der Repositorys, Tickets, Secrets, Bereitstellungen oder Produktionssysteme ändern kann, muss vom aufrufenden Host separat konfiguriert und genehmigt werden.

Häufige Werkzeuge:

  • recipes_search

  • recipes_list

  • recipes_get

  • recipes_cve_catalog_info

  • recipes_cve_search

  • recipes_cve_get

  • recipes_match_finding

  • recipes_playbooks_list

  • recipes_playbook_get

  • recipes_playbook_plan

  • recipes_mcp_upstream_servers

  • recipes_mcp_upstream_tools

  • recipes_mcp_upstream_call

  • recipes_mcp_upstream_context

Der MCP-Server akzeptiert beide generierten Rezept-Feeds:

  • /api/recipes.json ist der bevorzugte Agenten-Feed mit Kategorie, Schweregrad, CVE/GHSA, Ökosystem und Übergabe-Metadaten.

  • /recipes-index.json bleibt für Legacy-Konsumenten unterstützt.

  • /recipes-browser.json ist der kompakte interaktive Bibliotheks-Feed. Die /recipes/-Seite serverseitig rendert 18 crawlbare Rezeptkarten und einen exakt passenden Hydration-Seed und fordert den vollständigen Feed erst an, wenn ein Besucher die Suche fokussiert, filtert, sortiert, einem gefilterten URL folgt oder mehr lädt.

Der vollständige CVE-Katalog ist auch ohne MCP verfügbar:

  • /api/cve-catalog/manifest.json deklariert die exakte Datums-/Schweregrad-Richtlinie, Quell-Hashes, Abdeckungszahlen und Shard-Inventar.

  • /api/cve-catalog/runtime-summary.json ist der kleine Browser-Bootstrap mit Abdeckungssummen und inhaltsabgeleiteten Cache-Versionen für jedes Laufzeit-Asset.

  • /api/cve-catalog/index.json ist ein kleines Manifest für die vollständigen Publikationsjahr-Partitionen unter /api/cve-catalog/indexes/. Offline- Konsumenten können nur die Jahre abrufen, die sie benötigen; weder ein Browser- Seitenaufruf noch eine exakte MCP-Suche parst diese Partitionen.

  • /api/cve-catalog/search ist der begrenzte, gleichherkunftsbasierte Breitsuche-Endpunkt. Er ist an die Shard-Set-Revision gebunden, die von runtime-summary.json deklariert wird, wird bei nginx ratenbegrenzt und gibt höchstens 100 Vorschauen zurück. Das Produktions-MCP-Image bedient ihn aus einer schreibgeschützten SQLite-FTS-Datenbank, die gegen dasselbe Manifest erstellt und ganzdatei-verifiziert wurde. Alleiniger Fokus und eine unvollständige CVE-YYYY-NNNN-Kennung lösen keine Suchanfrage aus.

  • /api/cve-catalog/records/{cve} ist der begrenzte, gleichherkunftsbasierte Exakt-Datensatz-Endpunkt. Jede Anfrage pinnt die Shard-Set-Revision, und der MCP-Dienst verifiziert und öffnet nur den einen deterministischen Shard, der diese CVE enthält. Aktuelle Browser verwenden diesen Endpunkt, statt den Shard-Namespace zu erlernen.

  • /api/cve-catalog/browser-index.json.gz bleibt für ein Kompatibilitätsfenster bestehen, wenn eine ältere Runtime-Summary die Such- und Datensatz-APIs nicht deklariert. Aktuelle Browser laden es nicht herunter, wenn die APIs deklariert sind, sodass Besucher nicht mehr die Übertragungs- oder Speicherkosten des vollständigen Korpus tragen.

  • Kanonische CVE-Seiten rendern serverseitig ihre Übersicht, Nachweise betroffener Versionen, ausgewählte Remediation-Autorität, KI-Implementierungs- und Verifizierungsübergabe, Quellen, Provenienz, Zitierung und Schema. Sie betten die Katalog-Anwendung nicht ein und hydrieren sie nicht. Ein kompakter Link zum exakten gzip-JSON-Lines-Shard bleibt für maschinenlesbare Provenienz verfügbar, ohne einen Browser-Fetch hinzuzufügen.

  • /api/cve-catalog/search-indexable.json ist die kompakte, integritätsgehashte Whitelist für kanonische CVE-Seiten, verwandte CVE-Links und Such-Discovery. Ihre Richtlinie akzeptiert nur geprüftes stabiles Markdown oder vollständige KI-Anreicherung, die den deterministischen rezeptbereiten Evidenzvertrag erfüllt. Jedes Browser-Ergebnis verlinkt auf seinen lokalen /cve/<ID>/-Datensatz. Whitelist-Datensätze werden als indexierbare statische Seiten materialisiert; alle anderen Datensätze verwenden den begrenzten Laufzeit-Renderer mit noindex,follow und behalten ihre offizielle CVE.org-Quelle im Datensatz.

  • /api/cve-catalog/archetypes.json enthält die geprüften Remediation-Verträge, die verwendet werden, um für jeden Katalogdatensatz ein konservatives Rezept zu erstellen. Es enthält auch das versionierte agentische Aktionsschema und ökosystemspezifische Dateiziel-Hinweise, die vom Browser und MCP-Server gemeinsam genutzt werden.

  • Jede Partition ordnet jede in Frage kommende CVE ihrem integritätsgehashten komprimierten JSONL-Shard zu. Shard-Datensätze enthalten CVSS-, CWE-, begrenzte CPE-, Referenz- und KEV-Provenienz für den exakten CVE-Abruf.

  • Um Datensätze begrenzt zu halten, speichert ein Shard höchstens 12 anfällige CPE-/Versionszeilen zusammen mit der Quell-Übereinstimmungssumme und einem expliziten Abschneide-Flag; Konsumenten müssen NVD-/Anbieter-Evidenz folgen, wenn dieses Flag gesetzt ist.

Kanonische CVE-Seiten verwenden für die sichtbare Quellenliste und die strukturierten Datenzitate einen einzigen Satz primärer Referenzen. Roh generierte Datensätze akzeptieren NVD, CVE.org, begrenzte CISA-KEV-Datensätze sowie quellenverknüpfte Herstellerhinweise, Patches, Versionshinweise oder Schadensbegrenzungen; defekte, nur von Dritten stammende, nur Exploit-bezogene und generische Schwachstellen-Datenbanklinks werden nicht automatisch übernommen. Stabiles, überprüftes Markdown kann in seinem Abschnitt „References" bewusst zusätzliche HTTPS-Belege anführen. Wenn die Behebung mehrere unterstützte Zweige oder Produktfamilien umfasst, bewahrt die angezeigte Aktion jede vertrauenswürdige Behauptung über eine behobene Version, anstatt die Anleitung auf ein einziges unvollständiges Upgrade zu reduzieren.

Entwicklungs- und katalogseigenes stabiles CVE-Markdown erzeugt im rein statischen Build keine eigenständige Seite und ist von Eleventy sowie generischen Rezept-/Suchfeeds, Tag-Seiten, RSS und der Sitemap ausgeschlossen. Die drei vorkatalogischen historischen stabilen Rezepte bleiben gewöhnlich gerenderte Inhalte. Die Produktion kann eine alte Rezept-URL als Weiterleitung auf die kanonische CVE-Route über nginx und den MCP-gestützten Landing-Dienst beibehalten. Verwenden Sie für die vollständige Ermittlung den dedizierten Katalog oder die MCP-Tools recipes_cve_*.

Der exakte ID-Pfad des Browsers und die revisionsgebundene Such-API decken jeden im Manifest erklärten Datensatz der Stufen Medium, High und Critical ab. Der MCP-Server stellt dieselbe SQLite-gestützte Abdeckung über recipes_cve_search bereit; ein erfolgreicher recipes_cve_get liefert den normalisierten Quelldatensatz, Quellkennungen und -referenzen, anwendbare Archetypen, den zusammengesetzten Behebungsvertrag und einen in sich geschlossenen agentic_change_plan. Der Plan erweitert jede Schadensbegrenzungs- und Behebungsanweisung zu geordneten Code-/Dateioperationen mit Verifikations-, Rollback-, Beleg-, Genehmigungs- und Triage-Anforderungen. Er bewahrt außerdem explizite CPE-Kürzungsmetadaten, wenn der Quellabgleichssatz den begrenzten Datensatz überschreitet.

Tägliche CVE-Synchronisierung und optionale KI-Anreicherung

.github/workflows/cve-catalog-sync.yml läuft jeden Tag um 09:23 UTC und kann auch manuell ausgelöst werden. Es verifiziert und verbindet die jährlichen NVD-JSON-2.0-Feeds und den CISA-KEV-Katalog, regeneriert jeden Katalogindex/-Shard, validiert das Ergebnis, aktualisiert rezeptabgeleitete deterministische Belege in Abhängigkeitsreihenfolge, führt die Katalogtests aus und öffnet oder aktualisiert automation/cve-catalog-sync als Pull-Request auf den Standardzweig. Die Repository-Einstellungen Settings > Actions > General > Workflow permissions müssen GitHub Actions erlauben, Pull-Requests für die Erstveröffentlichung des PR zu erstellen.

Setzen Sie CVE_AUTO_MERGE_ENABLED=true, um einen sicherheitsgeprüften Katalog-PR auszuliefern, nachdem seine exakte Head-Revision den dedizierten Validierungsworkflow bestanden hat. Wenn CVE_AUTOMATION_APP_CLIENT_ID und das Geheimnis CVE_AUTOMATION_APP_PRIVATE_KEY konfiguriert sind, bevorzugt der Workflow diese GitHub-App-Identität, sodass gewöhnliche PR- und Main-Branch-Build-Läufe natürlich ausgelöst werden. Ohne App-Anmeldedaten bleibt der Workflow automatisch: Nach dem geschützten GITHUB_TOKEN-Merge verifiziert er, dass der zurückgegebene Merge-SHA immer noch der aktuelle main ist, und löst dann den echten build.yml-Workflow mit genau diesem SHA aus. Das Produktions-Deploy-Gate erkennt nur diese CVE-qualifizierten Build-Auslösungen, sodass geplante Monitore und unabhängige manuelle Workflows einen Release weder blockieren noch erfüllen können.

Die Quellsynchronisierung erfordert kein Geheimnis. Leftover-Gold-Review, Inhaltsaktualisierung, KI-Wartung, KI-Issue-Wartung und die Sicherheitszustandsaktion dieses Repositorys verwenden ebenfalls Grok. Fügen Sie ein Actions-Geheimnis namens XAI_API_KEY hinzu (die offizielle xAI-Umgebungsvariable; verwenden Sie nicht GROK_API_KEY):

gh secret set XAI_API_KEY --repo stevologic/security-recipes.ai

Der Workflow verwendet standardmäßig das Responses-API-Modell grok-4.6 von xAI und höchstens 20 neue oder quellenveränderte Datensätze pro Lauf. Die geplante Warteschlange wird aus dem verfolgten NVD/CISA-Katalog abgeleitet: Ein Kandidat muss eine gültige, getaggte Herstellerhinweis-, Patch-, Versionshinweis- oder Schadensbegrenzungs-URL haben. Quellenvollständige Datensätze bleiben förderfähig, da sie weiterhin eine belegte Behebungssynthese benötigen; innerhalb jedes KEV- und Schweregradbands rangieren sie vor Datensätzen mit deterministischen Quellenlücken, gefolgt von Belegen zu betroffenen Produkten/Versionen und Aktualität. Dies nutzt das bestehende tägliche Anforderungsbudget und erfordert keinen zusätzlichen manuellen Lauf. Sowohl das Modell als auch das Limit können mit optionalen Actions-Variablen geändert werden; das Anreicherungslimit ist hart auf 0 bis 50 begrenzt:

gh variable set XAI_MODEL --body "grok-4.6" --repo stevologic/security-recipes.ai
gh variable set XAI_ENRICHMENT_LIMIT --body "20" --repo stevologic/security-recipes.ai

KI-Ausgabe ist ergänzend und ausdrücklich gekennzeichnet. Sie verwendet strenge strukturierte Ausgabe, zitiert nur URLs, die tatsächlich in der Websuch-Herkunft der Responses-API zurückgegeben wurden, und wird reproduzierbar in data/cve/ai-enrichments.json gespeichert. Eine vollständige Anreicherung wird nur dann zu einem CVE-spezifischen Markdown-Entwurf, wenn ein separates Gate behauptungsbezogene Belege zu betroffenen Produkten, Exposition, Behebung und Verifikation findet, die mit der exakten URL einer getaggten vertrauenswürdigen Hinweisreferenz verknüpft sind. Jede erforderliche Behauptung muss diese Regel unabhängig erfüllen, und jedes erzeugte Rezept erfordert eine zitierte, konkrete Behauptung einer behobenen Version.

Zwischengespeicherte Anreicherungen werden neu bewertet, statt dauerhaft zu werden: Rezeptbereite Einträge werden nach 30 Tagen zu Aktualisierungskandidaten, KEV-Einträge nach 60 Tagen und andere vollständige/nicht spezifische oder unzureichend belegte Einträge nach 180 Tagen. Eine manuell priorisierte CVE erzwingt eine Aktualisierung innerhalb des bestehenden Anforderungslimits. Das letzte gültige zwischengespeicherte Ergebnis bleibt angehängt, wenn diese Aktualisierung fehlschlägt; ein ungültiger Quell-Fingerabdruck bleibt fail-closed. Der Synchronisierungsbericht und die Automatisierungszustandszusammenfassung legen fällige Aktualisierungen und manuell priorisierte Zählungen offen.

Förderfähige Entwürfe werden als Dateien mit maturity: development unter content/recipes/cve/ai-enrichment-cve-*.md geschrieben. Sie bleiben außerhalb der generischen Rezeptermittlung und überschreiben niemals ein stabiles, überprüftes Rezept. Ein menschlicher Prüfer kann ai_enrichment_review_status: human-reviewed-development-draft setzen, um eine ansonsten belegbereite Anreicherung von öffentlicher Behebungsautorität zurückzuhalten, oder ai_enrichment_review_status: approved-for-ai-authority, um diese Verwendung zu genehmigen. Nicht annotierte, generatorgehörige Entwürfe behalten das automatisierte Beleg-Gate, während stabiles Markdown immer gewinnt. Das Eigentumsregister in data/cve/ai-generated-recipes.json zeichnet jeden erzeugten Datei-Hash auf; die Automatisierung darf nur einen unveränderten, hashübereinstimmenden Entwurf aktualisieren oder entfernen. Eine menschliche Bearbeitung oder ein vorhandenes menschliches Entwicklungs-/stabiles Rezept für dieselbe CVE macht dieses Markdown menschengehörig und blockiert die automatische Ersetzung. KI-Erzeugung ändert niemals Quell-CVSS/KEV-Fakten, Daten zu betroffenen Versionen, Archetypenauswahl oder überprüftes stabiles Markdown. Ein fehlender Schlüssel, eine API-Ablehnung, eine Zeitüberschreitung oder eine Ratenbegrenzung blockiert die NVD/CISA-Aktualisierung nicht; Aufrufe stoppen nach drei aufeinanderfolgenden Fehlern oder einem 15-Minuten-Budget, und gültige zwischengespeicherte Anreicherungen bleiben angehängt. Ein manueller Lauf kann benannte CVEs priorisieren, aber diese IDs verbrauchen Plätze innerhalb des bestehenden Limits dieses Laufs und umgehen niemals das rezeptbereite Beleg-Gate:

gh workflow run cve-catalog-sync.yml --ref main \
  -f ai_enrichment_limit=20 \
  -f priority_cve_ids="CVE-2026-58644,CVE-2026-56164"

Ein manueller Dispatch ist ein zusätzlicher Workflow-Lauf und kann daher zusätzliche Anforderungen stellen; er ist für die tägliche deterministische Warteschlange nicht erforderlich. Ein manueller Lauf auf einem Nicht-Standardzweig lädt seinen Anreicherungscache, das Eigentumsregister und erzeugte Entwürfe als kurzlebiges Workflow-Artefakt zur Überprüfung hoch.

.github/workflows/leftover-review.yml läuft jeden Tag um 13:17 UTC und verifiziert live Leftover-Gold-CVE-Reste gegen GitHub Advisories und NVD. Leftover-Gold-Kritische und -Hohe werden zuerst abgebaut. Nach deren Abschluss überprüft jeder Lauf bis zu 100 Leftover-Gold-Mittel- und -Niedrig-Seiten, zeichnet abgeschlossene IDs in data/cve/leftover-review-state.json auf und öffnet einen gekennzeichneten Auto-Merge-PR. Der Leftover-Review-Job verwendet die Grok-Build-CLI mit XAI_API_KEY und tut nichts, wenn dieses Geheimnis fehlt oder die Leftover-Gold-Warteschlange leer ist.

Die Laufzeitpfade sind für katalogskalaren Datenverkehr bewusst begrenzt:

  • der Hub bootet aus der kompakten Laufzeitzusammenfassung, exakte Nachschlagen rufen die revisionsgebundene Same-Origin-Datensatz-API auf, und Titel-/Produkt-/Anbieter-/Filter-Suche ruft die Such-API nur nach expliziter Suchabsicht auf;

  • breite Suche gibt höchstens 100 Vorschauen aus unveränderlichem, schreibgeschütztem SQLite zurück, hat eine HTTP-Grenze von drei Sekunden und dekodiert den vollständigen Katalog niemals in einem Besucherprozess oder im Browser-Hauptthread;

  • der Exakt-Datensatz-Dienst verifiziert und öffnet einen Shard pro Anforderung; MCP-Exaktabruf verwendet denselben Shard-only-Pfad, während nicht exakte Textsuche die manifestgebundene SQLite-Datenbank hinter einem dedizierten Executor mit begrenzter Aufnahmewarteschlange, Abfragefristen und nginx-Ratenbegrenzung verwendet;

  • unveränderliche Browser-Cache-Schlüssel stammen aus dem deklarierten Datensatz-/Suchvertrag, dem Archetyp-Hash und der Shard-Satz-Revision und nicht aus einem Upstream-Zeitstempel.

Die implementierte Build-Grenze, das Exakt-Shard-Liefermodell, die beleggesteuerte SEO-Richtlinie, die SQLite-Suchlaufzeit und die verbleibende Artefaktveröffentlichungsmigration sind in CVE-Skalierungsarchitektur dokumentiert.

Das Produktionsimage baut das SQLite-Artefakt einmal in seiner zwischengespeicherten Image-Ebene, zeichnet seine unabhängige SHA-256-Sidecar-Datei auf und validiert beim Start Schema, Katalogrevision, Datensatzanzahl, Manifest-Digest, Datei-Digest und repräsentative FTS-Postings. RECIPES_MCP_EAGER_CVE_SEARCH gilt jetzt nur noch für den Legacy-Lokalfallback, wenn kein SQLite-Pfad konfiguriert ist. Für anhaltenden Suchdatenverkehr führen Sie mehrere gepaarte MCP-Instanzen aus; exakte Shard-Lesevorgänge bleiben vom begrenzten Textsuche-Executor und der Warteschlange isoliert.

Führen Sie npm run icons aus, nachdem Sie das Site-Zeichen geändert haben. Es regeneriert das opake Apple-Touch-Icon und die 192/512/maskierbaren Installations-App-Assets, die vom Produktionsleistungs-Gate geprüft werden.

Produktionsbuilds komprimieren große JSON/XML-Feeds für nginx gzip_static vor, validieren stabile/Entwurfs-Ermittlungsgrenzen und erzwingen Nutzlast-/Dateianzahl-Budgets mit npm run check:performance.

Führen Sie es mit Docker aus:

docker build -f Dockerfile.mcp-server -t security-recipes-mcp .
docker run --rm -p 8123:80 security-recipes-mcp

Verbinden Sie einen MCP-Client mit:

http://localhost:8123/mcp

Führen Sie es lokal mit Python aus:

python -m venv .venv
source .venv/bin/activate
pip install -r requirements-mcp-server.txt
python mcp_server.py

Windows-PowerShell-Aktivierung:

.\.venv\Scripts\Activate.ps1
python mcp_server.py

Site lokal ausführen

Voraussetzungen:

  • Node.js >= 20

  • Python >= 3.10 mit installiertem requirements-mcp-server.txt für den CVE-Prerender-Schritt des Produktions-npm run build

  • Git

python -m pip install -r requirements-mcp-server.txt
npm install
npm run serve

Öffnen:

http://localhost:8080

npm run serve überwacht Änderungen und baut inkrementell neu. Ein einmaliger Produktionsbuild ist npm run build (Ausgabe landet in public/). Der Build führt eine Python-/Abhängigkeits-Vorprüfung durch, bevor er eine vorhandene Ausgabe löscht, und verwendet dann denselben CVE-Renderer wie die MCP-Laufzeit. Eleventy kopiert static/api/cve-catalog/ bewusst nicht per Passthrough: Nach der Seitenmaterialisierung lehnt ein begrenzter Post-Build-Schritt Links, verwaiste Dateien, unsichere Pfade und Manifest-Byte-/Hash-Abweichungen ab, bevor dieser Katalog-Unterbaum installiert wird. Statische Assets außerhalb des Katalogs, einschließlich Root-Dotfiles, behalten normales Passthrough-Verhalten.

Für einen isolierten Katalogbuild setzen Sie SECURITY_RECIPES_CVE_CATALOG_ROOT auf sein absolutes Veröffentlichungsverzeichnis. Eleventy-Daten, qualifizierte Seitenmaterialisierung und die validierte Katalogkopie verwenden alle dieselbe Wurzel. npm run serve führt den Materialisierer oder die Katalogkopie nicht erneut aus, führen Sie also zuerst einmal npm run build aus, wenn Sie kanonische /cve/<ID>/-Seiten und den Katalog-API-Baum im Entwicklungsserver benötigen; spätere inkrementelle Neubauten behalten diese Post-Build-Ausgaben bei.

Docker Compose

Erstellen Sie eine Umgebungsdatei:

cp .env.example .env

Starten Sie den Stack:

docker compose up -d --build

Verwenden Sie das Docker-Compose-v2-Plugin (docker compose). Das veraltete Python-Paket docker-compose v1 wird für diesen Stack nicht unterstützt; es kann mit KeyError: 'id' beim Verfolgen von Protokollen oder KeyError: 'ContainerConfig' beim Neuerstellen von Containern auf neueren Docker-Engine-Versionen abstürzen.

Installieren Sie auf Ubuntu/Debian-Hosts Compose v2 und einen Kompatibilitäts-Shim mit:

sudo bash scripts/install_docker_compose_v2.sh

Standardrouten:

site: http://127.0.0.1:8080/
agent recipe feed: /api/recipes.json
MCP endpoint: /mcp

Der Compose-Stack hält die öffentliche Site und ihren dynamischen CVE/MCP-Renderer in passenden Blue/Green-Paaren:

  • security-recipes / mcp-server-blue: blaue Site und Renderer.

  • security-recipes-green / mcp-server-green: grüne Site und Renderer.

  • mcp-server: Übergangs-Singleton, der für den ersten paarweisen Rollout und rückwärtskompatible manuelle Compose-Workflows beibehalten wird. Er liest den lokal gebauten Site-Feed unter http://security-recipes/api/recipes.json, sodass ein Fork oder Droplet seine eigenen Rezepte ausliefert, statt vom öffentlichen Produktionsindex abzuhängen.

deploy.sh startet den MCP-Container der zurückgezogenen Slot und prüft dessen Revision, bevor der Site-Container gestartet wird, validiert eine kanonische CVE direkt und lässt das Paar erst danach zu Caddy zu. Der manuelle Compose-Start behält den Singleton-Standard bei, damit der erste Rollout mit dem zuvor installierten Skript kompatibel bleibt.

Für einen nginx- oder Caddy-Reverse-Proxy mit Let's Encrypt Docker an Loopback gebunden lassen und dem Proxy die öffentlichen Ports 80 und 443 überlassen:

SECURITY_RECIPES_HTTP_PORT=127.0.0.1:8080

Dann proxen auf:

location / {
    proxy_pass http://127.0.0.1:8080;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
}

Für ein schlüsselfertiges Host-Setup mit nginx + Let's Encrypt ausführen:

sudo bash scripts/configure_nginx_letsencrypt.sh \
  --domain security-recipes.ai \
  --email admin@security-recipes.ai

Die vollständige Operator-Anleitung liegt in README.nginx-letsencrypt.md.

DigitalOcean-Droplet

Für ein frisches Ubuntu-Droplet das Hilfsskript verwenden:

sudo bash scripts/setup_digitalocean_droplet.sh \
  --domain security-recipes.ai \
  --email admin@security-recipes.ai

Das Skript installiert Docker/Compose, konfiguriert einen gesperrten App-Benutzer, aktiviert grundlegende Host-Härtung, startet den Compose-Stack und kann Caddy für HTTPS davorstellen. Es aktiviert außerdem ein Caddy-bewusstes Fail2Ban-Jail: fünf finale HTTP-404-Antworten auf Hochvertrauens-Exploit-Probe-Pfade (z. B. .env, Git, WordPress, phpMyAdmin oder PHPUnit-Proben) von einem Client innerhalb von fünf Sekunden blockieren diese Adresse für eine Stunde von den TCP- und HTTP/3-Ports der Site, danach wird der Zugriff automatisch wiederhergestellt. Gewöhnliche fehlende Seiten, CVE-förmige Fehlversuche und Archiv-Paginierungs-Fehlversuche verbrauchen das Ban-Budget nicht.

Vor dem Setup sowohl den Apex- als auch den www-DNS-Eintrag auf das Droplet zeigen lassen. Verwaltetes Caddy erhält Zertifikate für beide Namen und leitet www dauerhaft auf den kanonischen Apex-Host um; eine Umleitung nur auf HTTP würde HTTPS-Crawlern den Abschluss des TLS-Handshakes unmöglich machen.

Bestehende Droplets benötigen nach dem Deployment des Commits, der das Jail enthält, diese einmalige, idempotente Aktivierung:

sudo bash scripts/configure_caddy_404_ban.sh
sudo fail2ban-client status security-recipes-caddy-404

Wenn das Droplet weiterhin gebündeltes Caddy mit dem alten benannten Log-Volume ausführt, zuerst SECURITY_RECIPES_TRAFFIC_LOGS_SOURCE=/var/log/caddy in .env setzen und dann nur Caddy einmal während eines Wartungsfensters neu erstellen:

docker compose --profile caddy up -d \
  --no-deps --force-recreate --pull never caddy
sudo bash scripts/configure_caddy_404_ban.sh

Der Filter verwendet Caddys strukturiertes client_ip, nicht spoofbare Forwarding-Header oder User-Agent-Werte. Wenn der Ursprung später hinter einem CDN oder Load Balancer platziert wird, die Ban-Aktion auf die WAF/API dieses Anbieters verlagern; eine Origin-Firewall kann einen Endclient nicht direkt blockieren, dessen Pakete von einem vertrauenswürdigen Proxy ankommen.

Das Jail vertraut Googlebot-User-Agent-Strings nicht. Bevor ein öffentlicher Client gezählt wird, führt es Googles Reverse-dann-Forward-DNS-Prüfung durch: Der PTR-Hostname muss unter googlebot.com liegen, und die Auflösung dieses Hostnamens muss dieselbe IP zurückgeben. Ergebnisse werden eine Stunde lang pro IP zwischengespeichert; Lookup-Fehler und die Fünf-Sekunden-Resolver-Frist schließen fehlgeschlagen ab, sodass ein unverifizierter Client weiterhin dem Scanner-Pfad-404-Budget unterliegt.

Für ein vollständig Compose-verwaltetes Caddy-Deployment kann Fail2Ban stattdessen im Stack laufen. DEPLOY_COMPOSE_FAIL2BAN=true in .env setzen und die Caddy-Logquelle auf dem Standard-caddy_logs-Volume (oder einem Host-Bind) belassen. Beim nächsten Lauf zieht deploy.sh den Fail2Ban-Container, startet ihn, prüft seine Gesundheit und aktualisiert ihn anschließend. Es initialisiert außerdem die Access-Log-Datei von Caddy vor dem Start des Jails, weil Fail2Ban verlangt, dass die konfigurierte Datei existiert. Für den manuellen Start ohne auf ein Deployment zu warten:

docker compose up -d caddy fail2ban
docker compose exec fail2ban fail2ban-client status security-recipes-caddy-404

Der Container teilt den Host-Network-Namespace und hat nur die NET_ADMIN/NET_RAW-Capabilities, die erforderlich sind, um die nftables-Regeln des Jails auf Host- und Docker-weitergeleiteten Web-Traffic anzuwenden. Das Compose-Jail nicht aktivieren, während das Host-Jail security-recipes-caddy-404 aktiv ist; einen Eigentümer für die Firewall-Regeln wählen. Dies mildert wiederholtes Application-Layer-404-Scanning, ersetzt aber keinen vorgelagerten volumetrischen DDoS-Schutz oder Request-Rate-Limiting. Wenn die Option false ist, verlangt deploy.sh das Host-Paket fail2ban nicht; hostverwaltete Installationen bleiben in der Verantwortung des Droplet-Setups und der Workflows von scripts/configure_caddy_404_ban.sh.

Wenn auf dem Droplet nginx statt Caddy bevorzugt wird, den Host ohne den Proxy bootstrappen und dann das nginx-Hilfsskript ausführen:

sudo bash scripts/setup_digitalocean_droplet.sh --no-caddy
sudo bash scripts/configure_nginx_letsencrypt.sh \
  --domain security-recipes.ai \
  --email admin@security-recipes.ai

Für ein rein lokales oder vorab geproxtes Droplet:

sudo bash scripts/setup_digitalocean_droplet.sh --no-caddy --no-firewall --no-upgrade
docker compose up -d --build

Wenn ein früherer docker-compose-v1-Lauf mit KeyError: 'ContainerConfig' fehlgeschlagen ist, Compose upgraden und die veralteten Projektcontainer entfernen, bevor der Stack neu erstellt wird:

sudo bash scripts/repair_docker_compose_containerconfig.sh
hash -r
command -v docker-compose
docker-compose version

Produktions-Deployments ziehen commit-adressierte Site- und MCP-Images, die vom erforderlichen GitHub-Actions-Build-Workflow auf main veröffentlicht werden, und liefern sie unter https://security-recipes.ai/ aus. Derselbe Timer deployt auch development-Images nach https://dev.security-recipes.ai/. Das Droplet führt während eines Deployments kein Node, Eleventy, pip oder Docker-Image-Builds aus, was das Deployment innerhalb eines 1-CPU-/2-GB-Speicher- Rahmens hält.

Einmaliges gepaartes MCP-Deployment-Upgrade

Vor dem ersten Deployment, das die gepaarten MCP-Dienste einführt, nur das Deployment-Skript aktualisieren und dann ausführen. Ein bereits laufender älterer deploy.sh-Prozess wurde geparst, bevor die gepaarte Compose-Datei existierte, und würde sonst das Live-Singleton-MCP während dieses einen Rollouts neu erstellen:

git fetch origin main
git checkout origin/main -- deploy.sh
bash deploy.sh

Das neue Skript lässt das Live-Singleton unangetastet, bereitet das inaktive MCP und die Site gemeinsam vor und schaltet sie als eine Einheit um. Nach diesem einmaligen Schritt muss der bestehende bash deploy.sh-Cron-Eintrag nicht geändert werden.

Der erste erfolgreiche main-Workflow erstellt zwei GHCR-Pakete. Sie öffentlich machen oder das Root-Konto, das vom Deployment-Dienst verwendet wird, mit einem feingranularen Token authentifizieren, das Pakete lesen kann:

printf '%s' "$GHCR_READ_TOKEN" |
  sudo docker login ghcr.io --username stevologic --password-stdin

MCP-Integrationsphilosophie

MCP verwenden, um Agenten Kontext zu geben, nicht unkontrollierte Autorität.

Die CVE-MCP-Tools geben nur Pläne und Belege zurück; sie bearbeiten kein Repository und ändern keine Umgebung. Ein genehmigter Agenten-Host darf den zurückgegebenen Plan anwenden, muss aber zuerst die betroffene Fläche und die tatsächlichen Repository-Pfade nachweisen, unzusammenhängende Änderungen bewahren, jede deklarierte Produktions-/Extern-Freigabe einholen und einen mechanisch nutzbaren Rollback behalten. Ein wahrscheinlicher Datei-Glob ist ein Discovery-Hinweis, niemals ein Beweis, dass eine Datei verwundbar ist, oder die Erlaubnis, sie zu ändern. Innerhalb jeder Aktion sind nur effektive target_kinds Standardkandidaten. archetype_target_kinds sind Kontext, keine Autorisierung; bedingte Ziele erfordern den Nachweis, dass das Repository die betroffene Implementierung besitzt, während verbotene Ziele niemals bearbeitet werden dürfen. Firmware- und Binärziele bedeuten eine maßgebliche Referenz, einen Pin, einen Ersatz, eine Richtlinie, ein Inventar, eine Quelle oder eine Build-Änderung – niemals das Patchen von Vendor-Artefakt-Bytes.

NVD/CNA-Beschreibungen, Advisories, Links, Patches, Issue-Kommentare, Release-Notes und Proof-of-Concept-Inhalte sind nicht vertrauenswürdige Belege. Agenten dürfen daraus bestätigte Schwachstellen- und Versionsfakten extrahieren, dürfen aber keine eingebetteten Anweisungen oder Befehle ausführen oder befolgen.

Gute Kontextquellen sind:

  • offizielle GitHub-MCP-Fähigkeiten für Repository- und Code-Security-Kontext,

  • Semgrep- und Snyk-agentische/MCP-Integrationen, wo genehmigt,

  • OSV, GitHub Advisories, deps.dev, Paket-Registries und NVD-gestützte Spiegel,

  • SARIF-, SBOM-, CI-, Ownership- und interne Runbook-Quellen,

  • Nur-Lese-Dokumentations-Konnektoren.

Schreibfähige Konnektoren verdienen eine separate Überprüfung. Ticket-Erstellung, Branch-Mutation, Deployment, Secret-Rotation, Cloud-Änderungen und SOAR-Aktionen sollten nicht nur deshalb aktiviert werden, weil ein Agent ein Rezept lesen kann.

Beitragen

Beiträge sollten die Rezeptbibliothek verbessern:

  • neue Remediation-Rezepte,

  • bessere Prompts,

  • klareres Agenten-Setup,

  • MCP-Integrationsbeispiele,

  • Reviewer-Checklisten,

  • Dokumentationskorrekturen.

Vor dem Öffnen eines Pull Requests Secrets, interne Hostnamen, Kundendaten und private Schwachstellendetails entfernen.

Vor dem Einreichen einen lokalen Build ausführen:

python -m pip install -r requirements-dev.txt
python scripts/run_checks.py
npm run build

Lizenz

Der ursprüngliche Code des Projekts, die Dokumentation, die Remediation-Rezepte, die generierte Site und der MCP-Server sind unter der Apache License 2.0 lizenziert. Dies erlaubt private und kommerzielle Nutzung, Modifikation und Weiterverbreitung, einschließlich der Einbindung in proprietäre Unternehmenssysteme, vorbehaltlich der Hinweis- und Änderungskennzeichnungspflichten der Lizenz.

Quell-Schwachstellendaten und gebündelte Drittanbieter-Software behalten ihre eigenen Bedingungen und Attributionsanforderungen. Siehe NOTICE und THIRD_PARTY_NOTICES.md.

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
<1hResponse time
Release cycle
Releases (12mo)
Issues opened vs closed

Related MCP Servers

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/stevologic/security-recipes.ai'

If you have feedback or need assistance with the MCP directory API, please join our Discord server