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
sentinel-mcp — Autonomes KI-gestütztes Cyberverteidigungssystem unter Verwendung von MCP, Gemini 2.0 Flash, Dynatrace Observability und MongoDB. Google Cloud Hackathon-Einreichung. | Kitploit
Tools/GitLabGitLab/reyjesusq/sentinel-mcp
DefensivwerkzeugeCloud-SicherheitEinbruchserkennungIncident ResponseKI-SicherheitAnomalieerkennung
GitLabreyjesusq/sentinel-mcp

sentinel-mcp

Autonomes KI-gestütztes Cyberverteidigungssystem unter Verwendung von MCP, Gemini 2.0 Flash, Dynatrace Observability und MongoDB. Google Cloud Hackathon-Einreichung.

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

SentinelMCP — KI-gestütztes Cyber-Abwehrsystem

Google Cloud Hackathon Einreichung — Autonome Bedrohungserkennung und -abwehr, orchestriert durch Google Cloud Agent Builder (Vertex AI Agent), unterstützt von Gemini 2.0 Flash, Model Context Protocol (MCP) und Dynatrace Observability.

Agent Builder Gemini 2.0 Flash Dynatrace MongoDB MCP Protocol


Das Problem

Sicherheitsteams haben bei typischen Vorfällen eine MTTD von 30 Minuten und eine MTTR von 4 Stunden. Wenn ein menschlicher Analyst den Angriff erkennt, die Firewall-Regel schreibt und bereitstellt, ist der Schaden bereits eingetreten.

Die Lösung

SentinelMCP reduziert die MTTD auf < 30 Sekunden und die MTTR auf < 30 Sekunden, indem ein Google Cloud Agent Builder-Agent bereitgestellt wird, der Dynatrace-Anomalie-Webhooks empfängt, sie mit Gemini 2.0 Flash analysiert und über MCP echte Abwehrwerkzeuge aufruft — er handelt auf der Live-Infrastruktur, nicht nur durch Alarmierung.

root@kitploit:~
Dynatrace-Webhook  →  Agent Builder erhält Alarm  →  Gemini analysiert  →  MCP-Tools führen aus  →  Bedrohung neutralisiert
       1 s                        2 s                      8 s                  15 s                  25 s gesamt

Das Ergebnis: Ein Vorfall-Lebenszyklus, der zuvor einen menschlichen Analysten und 4 Stunden erforderte, wird nun autonom in unter 30 Sekunden abgeschlossen, mit vollständigem Prüfpfad in MongoDB und verteilten Traces in Jaeger.


Architektur

root@kitploit:~
┌──────────────────────────────────────────────────────────────────────┐
│                         SANDBOX-UMGEBUNG                              │
│                                                                      │
│   ┌─────────────┐   100–1000 req/s   ┌──────────────────────────┐   │
│   │  Angreifer  │ ──────────────────►│    victim-service        │   │
│   │ (DDoS/SQLi)  │                    │    Port 8080             │   │
│   └─────────────┘                    │    /admin/* Kontroll-API │   │
│                                      └────────────┬─────────────┘   │
└───────────────────────────────────────────────────│──────────────────┘
                                                    │ Metriken + Anomalie-Webhook
                   ┌────────────────────────────────▼─────────────────┐
                   │         Dynatrace Mock  (Anomalie-Engine)         │
                   │  Bedrohungs-Risiko-Score → sendet POST /alerts/simulate│
                   └────────────────────────┬─────────────────────────┘
                                            │ Webhook
          ┌─────────────────────────────────▼──────────────────────────┐
          │          Google Cloud Agent Builder  (Vertex AI Agent)      │
          │  ┌──────────────────────────────────────────────────────┐  │
          │  │  Gemini 2.0 Flash  ──  analysiert Bedrohungskontext │  │
          │  │  Tool-Manifest  ──  dynamisch von MCP abgerufen      │  │
          │  │  HITL-Schleuse  ──  stoppt bei Konfidenz < Schwelle   │  │
          │  └──────────────────────────────────────────────────────┘  │
          └──────────────┬─────────────────────────┬───────────────────┘
                         │ REST-Aufrufe              │ Prüfpfad schreiben
         ┌───────────────▼──────┐      ┌────────────▼──────────┐
         │  MCP-Server  :8001   │      │  MongoDB 7.0 Atlas    │
         │  11 echte Tools      │      │  Vorfälle + Traces    │
         └───────────┬──────────┘      └───────────────────────┘
                     │ wirkt auf Live-Infrastruktur
         ┌───────────▼──────────┐
         │  FastAPI  :8000      │
         │  victim-service :8080│
         └──────────────────────┘

                   ┌──────────────────────────────────────────────────┐
                   │              OBSERVABILITY-STACK                  │
                   │  OTel Collector ──► Jaeger  (verteilte Traces)    │
                   │  Prometheus ──────────────► Grafana               │
                   └──────────────────────────────────────────────────┘

Wichtiges Designprinzip: Graceful Degradation + Human-in-the-Loop (HITL). Der Agent Builder-Agent hält sicher an und übergibt die Kontrolle zurück an den Bediener, wenn er keine Entscheidung mit ausreichender Konfidenz treffen kann — er rät nie an kritischer Infrastruktur.


Live-Demo — Google Cloud Run

Alle drei Dienste sind auf Google Cloud Run bereitgestellt und laufen:

Führen Sie einen Live-Angriff gegen die Produktion aus:

root@kitploit:~
.\attack.production.ps1 status   # Überprüfen, ob alle Dienste gesund sind
.\attack.production.ps1 ddos     # DDoS — Gemini blockiert IPs + Ratenbegrenzung
.\attack.production.ps1 sql      # SQL-Injection — Gemini aktiviert WAF
.\attack.production.ps1 brute    # Brute Force — Gemini blockiert Quell-IPs
.\attack.production.ps1 stop     # Abwehr zurücksetzen

Der Angreifer-Container läuft lokal und greift den Cloud Run victim-service über HTTPS an. Beobachten Sie das Kommandozentralen-Dashboard für den vollständigen Erkennungs → Analyse → Neutralisationszyklus in Echtzeit.


Wie es Google Cloud Agent Builder nutzt

Google Cloud Agent Builder (Vertex AI ReasoningEngine) ist der zentrale Orchestrator von SentinelMCP. Die Implementierung befindet sich in sentinel_mcp/agent/agent_builder.py.

SentinelAgent erbt von vertexai.preview.reasoning_engines.Queryable — der offiziellen programmatischen Schnittstelle von Agent Builder — und kann lokal ausgeführt oder mit einem einzigen Befehl auf den verwalteten Agent Builder-Dienst bereitgestellt werden.

Schlüsselcode — sentinel_mcp/agent/agent_builder.py:

root@kitploit:~
class SentinelAgent(reasoning_engines.Queryable):

    def set_up(self):
        # MCP-Tools als Vertex AI FunctionDeclarations — Gemini wählt zur Laufzeit aus
        mcp_tools = Tool(function_declarations=[
            FunctionDeclaration(name="block_ip_address", ...),
            FunctionDeclaration(name="activate_waf", ...),
            FunctionDeclaration(name="rate_limit_requests", ...),
            FunctionDeclaration(name="scale_service", ...),
            FunctionDeclaration(name="collect_forensic_logs", ...),
            FunctionDeclaration(name="analyze_attack_pattern", ...),
        ])
        self._model = GenerativeModel("gemini-2.0-flash-001", tools=[mcp_tools])
        self._chat = self._model.start_chat()

    def query(self, *, incident: dict) -> dict:
        # Einstiegspunkt — Agent Builder ruft dies für jeden Dynatrace-Webhook auf
        response = self._chat.send_message(threat_prompt(incident))
        tool_calls = [{"name": p.function_call.name, "args": dict(p.function_call.args)}
                      for p in response.candidates[0].content.parts if p.function_call]
        return {"engine": "agent_builder", "tool_calls": tool_calls, ...}

Bereitstellung auf Google Cloud Agent Builder:

root@kitploit:~
# Lokal testen (kein GCP erforderlich mit google_ai_studio-Backend)
python scripts/deploy_agent_builder.py --test-only

# Auf verwalteten Agent Builder-Endpunkt bereitstellen
python scripts/deploy_agent_builder.py --project my-gcp-project

Agent Builder als aktives Backend festlegen:

root@kitploit:~
# .env
GEMINI_BACKEND=agent_builder
GOOGLE_CLOUD_PROJECT=my-gcp-project
VERTEX_LOCATION=us-central1

Wie es Dynatrace & MCP nutzt

Dynatrace

SentinelMCP integriert Dynatrace Observability auf drei Ebenen:

  1. OpenTelemetry-Pipeline — Der sentinel-otel-collector nimmt Spans und Metriken vom FastAPI-Kern entgegen und leitet sie an den Dynatrace Mock-Endpunkt (OTLP/HTTP :14318) weiter. Jeder Vorfall, jede Tool-Ausführung und jeder LLM-Aufruf wird mit vollständigen Korrelations-IDs Ende-zu-Ende getraced.

  2. Anomalie-Engine mit automatischem Auslöser — dynatrace-mock führt eine Hintergrundschleife aus, die http_requests_total überwacht, einen Bedrohungs-Risiko-Score (dynatrace_mock_sentinel_risk_score, 0–10) berechnet und automatisch POST /api/v1/alerts/simulate/{type} an SentinelMCP sendet, wenn der Score den kritischen Schwellwert überschreitet — und reproduziert damit genau das Verhalten eines Produktions-Dynatrace-Davis-Anomalieerkennungs-Webhooks.

  3. Grafana-Dashboard mit Dynatrace-Metriken — Die Risiko-Score-Anzeige und -Zeitleiste verwenden direkt dynatrace_mock_sentinel_risk_score, sodass der genaue Zeitpunkt visualisiert werden kann, zu dem Dynatrace die Anomalie meldete, im Vergleich zum Zeitpunkt, zu dem SentinelMCP die Neutralisierung erreichte.

MCP (Model Context Protocol)

Der Gemini-Agent entdeckt seine Verteidigungsfähigkeiten dynamisch zur Laufzeit — keine hartcodierten Tool-Listen, kein Umschreiben von Prompts bei Änderungen der Fähigkeiten:

root@kitploit:~
GET /mcp/tools  →  gibt 11 Tool-Deskriptoren zurück  →  Gemini wählt Tools aus und ruft sie auf

Jedes Tool ist im Live-Katalog mit REAL oder Audit-Only gekennzeichnet. Gemini liest dieses Flag, versteht, was es auf der Live-Infrastruktur tatsächlich tun kann, und begründet jede Tool-Auswahl in seinem Analysetrace. Das Hinzufügen einer neuen Verteidigungsfähigkeit erfordert kein Prompt-Engineering.

Tools, die auf der Live-Infrastruktur wirken:


Schnellstart

Voraussetzungen: Docker Desktop 24+, Google Cloud-Anmeldeinformationen oder AI Studio-API-Schlüssel, ~3 GB Festplatte, ~2 GB RAM.

1 — Stack starten

root@kitploit:~
docker compose up -d --build

Erster Start lädt Basis-Images herunter (~3 GB, 5–10 Min.). Nachfolgende Starts dauern unter 1 Minute.

2 — Simulations-Sandbox starten

root@kitploit:~
cd simulacion
docker compose up -d victim-service
cd ..

3 — Überprüfen, ob alles läuft

root@kitploit:~
docker compose ps
# Erwartet: 8 Dienste laufen/gesund

curl http://localhost:8000/health
# Erwartet: {"status": "healthy", "service": "SentinelMCP", ...}

4 — Einen Angriff starten und zusehen, wie die KI verteidigt

root@kitploit:~
.\attack.ps1 ddos        # DDoS-Angriff (Standard)
.\attack.ps1 sql         # SQL-Injection
.\attack.ps1 brute       # Brute Force
.\attack.ps1 stop        # Angriff stoppen + Abwehr zurücksetzen
.\attack.ps1 status      # Systemzustand prüfen

Öffnen Sie die Kommandozentrale während des Angriffs:

root@kitploit:~
http://localhost:8000/dashboard

Beobachten Sie die 4 Phasen in ~25 Sekunden:

  1. BEDROHUNG ERKANNT — Dynatrace löst den Alarm aus
  2. VERTEIDIGUNG — Gemini liest den MCP-Tool-Katalog, wählt Aktionen aus, protokolliert die Analyse
  3. Tool-Ausführung — IPs blockiert, WAF aktiviert, Ratenbegrenzung angewendet (alle echt)
  4. NEUTRALISIERT — MTTD und MTTR mit vollständigem Prüfpfad angezeigt

5 — Google Cloud (Vertex AI) konfigurieren

SentinelMCP basiert auf Gemini. Wählen Sie die Authentifizierungsmethode, die zu Ihrer Umgebung passt:

Option A — Google AI Studio (schnellste Einrichtung):

root@kitploit:~
# .env bearbeiten
GOOGLE_API_KEY=AIza...Ihr_Schlüssel_hier
GEMINI_BACKEND=google_ai_studio

Option B — Vertex AI auf Google Cloud:

root@kitploit:~
gcloud auth application-default login
.\scripts\setup_gcloud.ps1   # setzt Projekt, erstellt SA-Key, aktualisiert .env automatisch

Starten Sie dann die KI-Engine neu: docker compose restart api


Alle Schnittstellen

Produktion (Google Cloud Run)

Lokal (Docker Compose)


Angriffsszenarien


MCP-Tool-Registrierung (11 Tools)

root@kitploit:~
GET http://localhost:8001/mcp/tools

SentinelMCP verwendet einen ausfallsicheren Prüfmodus. Wenn die Zielinfrastruktur nicht erreichbar ist, zeichnet der Agent die beabsichtigten Aktionen auf, ohne die Pipeline zu unterbrechen, und gewährleistet so eine geordnete Verschlechterung. Gemini liest das Flag REAL / Audit-Only im Katalog — es weiß genau, was es ausführen kann, im Gegensatz zu dem, was es nur empfehlen kann.


Projektstruktur

root@kitploit:~
sentinel_mcp/
├── api/              FastAPI-Kern — Routen, Schemata, Dashboard-UI
├── agent/            Entscheidungs-Engine + LLM-Anbieter (Gemini 2.0 Flash, Vertex AI)
├── mcp_server/       MCP-Server + 11 Tool-Implementierungen
├── services/         Vorfall-Dienst, Remediation-Orchestrator, Bedrohungsrechner
├── observability/    OTel / Dynatrace / SigNoz-Anbieter
└── core/             Konfiguration, Logging, Ausnahmen

simulacion/
├── victim-service/   FastAPI-Zieldienst mit /admin/* Kontrollebene
└── attacker/         Python-Angriffs-Engine (DDoS / SQLi / Brute Force)

docker/
├── prometheus.yml    Scrape-Konfiguration (victim-service alle 5s)
└── grafana/          Automatisch bereitgestelltes Dashboard — 6-Felder-Infrastruktur-Beobachtung

Technologie-Stack

Tool herunterladen
DienstURL
Kommandozentrale (Dashboard)https://sentinel-api-62d3d66zda-uc.a.run.app/dashboard
Swagger API-Dokumentationhttps://sentinel-api-62d3d66zda-uc.a.run.app/docs
Health Checkhttps://sentinel-api-62d3d66zda-uc.a.run.app/health
MCP-Tool-Kataloghttps://sentinel-mcp-62d3d66zda-uc.a.run.app/mcp/tools
Victim Servicehttps://victim-service-62d3d66zda-uc.a.run.app
VerantwortungImplementierung
Webhook-AufnahmeSentinelAgent.query(incident=...) — wird von Agent Builder bei jedem Dynatrace-Alarm aufgerufen
Tool-Deklarationen6 MCP-Tools als Vertex AI FunctionDeclaration-Objekte in set_up() registriert
AnalyseGemini 2.0 Flash liest Bedrohungskontext + Tool-Katalog, wählt die minimalen Tools aus, ruft sie automatisch auf
HITL-SchleuseWenn Gemini keine Tool-Aufrufe zurückgibt (Konfidenz < Schwelle), wird escalate_to_humans=True ausgegeben
PrüfpfadJeder Tool-Aufruf wird in MongoDB Atlas protokolliert + als OTel-Span nach Jaeger exportiert
ToolWas es tut
block_ip_addressPOST /admin/block_ip — blockiert Angreifer-IPs in der laufenden Middleware
activate_wafPOST /admin/waf — aktiviert den WAF-Blockierungsmodus im laufenden Dienst
rate_limit_requestsPOST /admin/rate_limit — gleitender Fenster-Ratenbegrenzer, sofort aktiv
scale_serviceDocker SDK über Socket — startet echte Replikat-Container unter Last
rollbackPOST /admin/reset_defenses — demonstriert den vollständigen Vorfall-Lebenszyklus: Angriff → Verteidigung → Wiederherstellung
collect_forensic_logsErfasst echte Beweise aus laufenden Containern für die Nachbereitung
build_attack_timelineChronologische Zeitleiste aus Live-Container-Logs
analyze_attack_patternKlassifiziert den Angriffstyp mit echten Vorfallkontextdaten
identify_iocsExtrahiert echte IPs, User-Agents und Payloads aus live Vorfallsdateien
URLWas sie zeigt
https://sentinel-api-62d3d66zda-uc.a.run.app/dashboardKommandozentrale — Haupt-Demo-UI
https://sentinel-api-62d3d66zda-uc.a.run.app/docsSwagger — interaktiver API-Explorer
https://sentinel-api-62d3d66zda-uc.a.run.app/healthHealth Check
https://sentinel-api-62d3d66zda-uc.a.run.app/api/v1/incidentsVorfall-Verlauf (JSON)
https://sentinel-mcp-62d3d66zda-uc.a.run.app/mcp/toolsLive-MCP-Tool-Katalog, wie von Gemini gelesen
https://victim-service-62d3d66zda-uc.a.run.appVictim Service (das Ziel unter Angriff)
URLWas sie zeigt
http://localhost:8000/dashboardKommandozentrale — Haupt-Demo-UI
http://localhost:8000/docsSwagger — interaktiver API-Explorer
http://localhost:8000/api/v1/incidentsVorfall-Verlauf (JSON)
http://localhost:8000/api/v1/incidents/statistics/summaryMTTD / MTTR-Durchschnitte über alle Vorfälle
http://localhost:8001/mcp/toolsLive-MCP-Tool-Katalog, wie von Gemini gelesen
http://localhost:8080Victim Service (das Ziel unter Angriff)
http://localhost:14499Dynatrace Mock — Live-Metriken + Anomalie-Engine
http://localhost:16686Jaeger — verteilte Traces
http://localhost:9090Prometheus — Rohmetriken
http://localhost:3000Grafana — Infrastruktur-Dashboard (admin / admin)
SzenarioSkriptWas passiert
DDoS.\attack.ps1 ddos1000 req/s Flut; Gemini blockiert IPs + aktiviert Ratenbegrenzung
SQL-Injection.\attack.ps1 sqlPayload-Erkennung; Gemini aktiviert WAF im Blockierungsmodus
Brute Force.\attack.ps1 bruteLogin-Hammering; Gemini blockiert Quell-IPs + aktiviert WAF
Auto-ModusDashboard 🎯 Auto ONZufällige Angriffe alle 45–90s, vollständig autonome Reaktion
ToolKategorieModus
analyze_attack_patternAnalyseREAL
identify_iocsAnalyseREAL
block_ip_addressVerteidigungREAL → victim-service
activate_wafVerteidigungREAL → victim-service
rate_limit_requestsVerteidigungREAL → victim-service
scale_serviceVerteidigungREAL → Docker SDK
collect_forensic_logsForensikREAL
build_attack_timelineForensikREAL
patch_vulnerabilitiesSchadensbehebungAudit-Only
apply_hardeningHärtungAudit-Only
rollbackSchadensbehebungREAL → victim-service
EbeneTechnologie
Agent-OrchestratorGoogle Cloud Agent Builder (Vertex AI Agent)
LLMGemini 2.0 Flash — über google-genai SDK
Tool-ProtokollMCP (Model Context Protocol) — 11 echte Tools
APIFastAPI + Uvicorn (Python 3.11)
DatenbankMongoDB 7.0 Atlas (Motor async)
ObservabilityOpenTelemetry → Dynatrace
TracingJaeger
MetrikenPrometheus + Grafana
HTTP-Clienthttpx (async)
Container-OrchestrierungDocker Compose v2