
kubescape v4.0.11
Open-Source-Kubernetes-Sicherheitsplattform, die Cluster, Manifeste und Images auf Fehlkonfigurationen, Schwachstellen und Compliance gegen NSA-, MITRE- und CIS-Benchmarks über den gesamten Entwicklungslebenszyklus hinweg scannt.
Kubescape
Umfassende Kubernetes-Sicherheit von der Entwicklung bis zur Laufzeit
Kubescape ist eine Open-Source-Kubernetes-Sicherheitsplattform, die umfassende Sicherheitsabdeckung über den gesamten Entwicklungs- und Bereitstellungslebenszyklus hinweg bietet. Sie bietet Härtung, Posture-Management und Laufzeit-Sicherheitsfähigkeiten, um einen robusten Schutz für Kubernetes-Umgebungen zu gewährleisten.
Kubescape wurde von ARMO entwickelt und ist ein Cloud Native Computing Foundation (CNCF) Inkubationsprojekt.
Bitte star ⭐ das Repository, wenn Sie möchten, dass wir Kubescape weiterentwickeln und verbessern!
📑 Inhaltsverzeichnis
- Funktionen
- Demo
- Schnellstart
- Installation
- CLI-Befehle
- Anwendungsbeispiele
- Architektur
- In-Cluster-Operator
- Integrationen
- Gemeinschaft
- Änderungsprotokoll
- Lizenz
✨ Funktionen
| Funktion | Beschreibung |
|---|---|
| 🔍 Fehlkonfigurations-Scan | Cluster, YAML-Dateien und Helm-Charts gegen NSA-CISA, MITRE ATT&CK® und CIS-Benchmarks scannen |
| 🐳 Image-Schwachstellenscan | CVEs in Container-Images mit Grype erkennen |
| 🩹 Image-Patching | Schwachstellen in Images automatisch mit Copacetic patchen |
| 🔧 Auto-Reparatur | Fehlkonfigurationen in Kubernetes-Manifesten automatisch beheben |
| 🛡️ Admission Control | Sicherheitsrichtlinien mit Validating Admission Policies (VAP) durchsetzen |
| 📊 Laufzeitsicherheit | eBPF-basierte Laufzeitüberwachung via Inspektor Gadget |
| 🤖 KI-Integration | MCP-Server für die Integration von KI-Assistenten |
🎬 Demo
🚀 Schnellstart
1. Kubescape installieren
curl -s https://raw.githubusercontent.com/kubescape/kubescape/master/install.sh | /bin/bash
💡 Siehe Installation für weitere Optionen (Homebrew, Krew, Windows usw.)
2. Ersten Scan durchführen
# Aktuellen Cluster scannen
kubescape scan
# Bestimmte YAML-Datei oder Verzeichnis scannen
kubescape scan /pfad/zu/manifesten/
# Container-Image auf Schwachstellen scannen
kubescape scan image nginx:latest
3. Ergebnisse erkunden
Kubescape bietet einen detaillierten Sicherheitsposture-Überblick, einschließlich:
- Sicherheitsstatus der Control Plane
- Zugriffskontrollrisiken
- Workload-Fehlkonfigurationen
- Netzwerkrichtlinien-Lücken
- Compliance-Ergebnisse (MITRE, NSA)
📦 Installation
Einzeilige Installation (Linux/macOS)
curl -s https://raw.githubusercontent.com/kubescape/kubescape/master/install.sh | /bin/bash
Paketmanager
| Plattform | Befehl |
|---|---|
| Homebrew | brew install kubescape |
| Krew | kubectl krew install kubescape |
| Arch Linux | yay -S kubescape |
| Ubuntu | sudo add-apt-repository ppa:kubescape/kubescape && sudo apt install kubescape |
| NixOS | nix-shell -p kubescape |
| Chocolatey | choco install kubescape |
| Scoop | scoop install kubescape |
Windows (PowerShell)
iwr -useb https://raw.githubusercontent.com/kubescape/kubescape/master/install.ps1 | iex
📖 Vollständige Installationsanleitung →
🛠️ CLI-Befehle
Kubescape bietet eine umfassende CLI mit folgenden Befehlen:
| Befehl | Beschreibung |
|---|---|
kubescape scan | Cluster, Dateien oder Images auf Sicherheitsprobleme scannen |
kubescape scan image | Container-Images auf Schwachstellen scannen |
kubescape fix | Fehlkonfigurationen in Manifestdateien automatisch beheben |
kubescape patch | Container-Images patchen, um Schwachstellen zu beheben |
kubescape list | Verfügbare Frameworks und Controls auflisten |
kubescape download | Artefakte für die Offline-Nutzung herunterladen |
kubescape config | Zwischengespeicherte Konfigurationen verwalten |
kubescape operator | Mit dem In-Cluster-Kubescape-Operator interagieren |
kubescape vap | Validating Admission Policies verwalten |
kubescape mcpserver | MCP-Server für KI-Assistenten-Integration starten |
kubescape completion | Shell-Vervollständigungsskripte generieren |
kubescape version | Versionsinformationen anzeigen |
📖 Anwendungsbeispiele
Scannen
Einen laufenden Cluster scannen
# Standard-Scan (alle Frameworks)
kubescape scan
# Mit einem bestimmten Framework scannen
kubescape scan framework nsa
kubescape scan framework mitre
kubescape scan framework cis-v1.23-t1.0.1
# Ein bestimmtes Control scannen
kubescape scan control C-0005 -v
Dateien und Repositories scannen
# Lokale YAML-Dateien scannen
kubescape scan /pfad/zu/manifesten/
# Ein Helm-Chart scannen
kubescape scan /pfad/zu/helm/chart/
# Ein Git-Repository scannen
kubescape scan https://github.com/kubescape/kubescape
# Mit Kustomize scannen
kubescape scan /pfad/zu/kustomize/verzeichnis/
Scan-Optionen
# Namespaces ein-/ausschließen
kubescape scan --include-namespaces production,staging
kubescape scan --exclude-namespaces kube-system,kube-public
# Alternative Kubeconfig verwenden
kubescape scan --kubeconfig /pfad/zu/kubeconfig
# Compliance-Schwellenwert setzen (Exit-Code 1, wenn darunter).
# Score-Schwellenwerte gelten für die Framework/Control-Unterbefehle und für
# --view resource|control.
kubescape scan framework nsa --compliance-threshold 80
kubescape scan --view resource --compliance-threshold 80
# Schweregrad-Schwellenwert setzen
kubescape scan --severity-threshold high
Ausgabeformate
# JSON-Ausgabe
kubescape scan --format json --output results.json
# JUnit-XML (für CI/CD)
kubescape scan --format junit --output results.xml
# SARIF (für GitHub Code Scanning)
kubescape scan --format sarif --output results.sarif
# HTML-Bericht
kubescape scan --format html --output report.html
# PDF-Bericht
kubescape scan --format pdf --output report.pdf
Image-Scanning
# Ein öffentliches Image scannen
kubescape scan image nginx:1.21
# Mit ausführlicher Ausgabe scannen
kubescape scan image nginx:1.21 -v
# Ein Image aus einer privaten Registry scannen
kubescape scan image myregistry/myimage:tag --username user --password pass
Offline-Grype-Datenbank verwenden
# Offline-Grype-DB-Server starten (mit Docker)
docker run --rm -p8080:8080 quay.io/kubescape/grype-offline-db:v6-latest
# Ein Image mit der Offline-Datenbank scannen:
kubescape scan image --grype-db-url http://localhost:8080/databases/ nginx:latest
Auto-Reparatur
Fehlkonfigurationen in Ihren Manifestdateien automatisch beheben:
# Zuerst scannen und Ergebnisse im JSON-Format speichern
kubescape scan /pfad/zu/manifesten --format json --output results.json
# Dann Reparaturen anwenden
kubescape fix results.json
# Trockenlauf (Änderungen ohne Anwendung anzeigen)
kubescape fix results.json --dry-run
# Reparaturen ohne Bestätigungsaufforderung anwenden
kubescape fix results.json --no-confirm
Image-Patching
Container-Images patchen, um Schwachstellen auf Betriebssystemebene zu beheben:
# Buildkitd starten (erforderlich)
sudo buildkitd &
# Ein Image patchen
sudo kubescape patch --image docker.io/library/nginx:1.22
# Benutzerdefiniertes Ausgabe-Tag festlegen
sudo kubescape patch --image nginx:1.22 --tag nginx:1.22-patched
# Detaillierten Schwachstellenbericht anzeigen
sudo kubescape patch --image nginx:1.22 -v
📖 Vollständige Patch-Befehlsdokumentation →
Frameworks und Controls auflisten
# Verfügbare Frameworks auflisten
kubescape list frameworks
# Alle Controls auflisten
kubescape list controls
# Als JSON ausgeben
kubescape list controls --format json
Offline-Unterstützung
Artefakte für isolierte Umgebungen herunterladen:
# Alle Artefakte herunterladen
kubescape download artifacts --output /pfad/zu/offline/verzeichnis
# Ein bestimmtes Framework herunterladen
kubescape download framework nsa --output /pfad/zu/nsa.json
# Mit heruntergeladenen Artefakten scannen
kubescape scan --use-artifacts-from /pfad/zu/offline/verzeichnis
Konfiguration
# Aktuelle Konfiguration anzeigen
kubescape config view
# Account-ID setzen
kubescape config set accountID <ihre-account-id>
# Zwischengespeicherte Konfiguration löschen
kubescape config delete
Operator-Befehle
Mit dem In-Cluster-Kubescape-Operator interagieren:
# Einen Konfigurationsscan auslösen
kubescape operator scan configurations
# Einen Schwachstellenscan auslösen
kubescape operator scan vulnerabilities
Validating Admission Policies
Kubernetes Validating Admission Policies verwalten:
# Die Kubescape-CEL-Admission-Policy-Bibliothek bereitstellen
kubescape vap deploy-library | kubectl apply -f -
# Eine Policy-Bindung erstellen
kubescape vap create-policy-binding \
--name my-policy-binding \
--policy c-0016 \
--namespace my-namespace | kubectl apply -f -
MCP-Server
Einen MCP-Server (Model Context Protocol) für die KI-Assistenten-Integration starten:
kubescape mcpserver
Der MCP-Server stellt die Schwachstellen- und Konfigurationsscan-Daten von Kubescape KI-Assistenten zur Verfügung und ermöglicht Abfragen in natürlicher Sprache zum Sicherheitsstatus Ihres Clusters.
Verfügbare MCP-Tools:
list_vulnerability_manifests– Schwachstellenmanifeste entdeckenlist_vulnerabilities_in_manifest– CVEs in einem Manifest auflistenlist_vulnerability_matches_for_cve– Details zu einer bestimmten CVE abrufenlist_configuration_security_scan_manifests– Konfigurationsscan-Ergebnisse auflistenget_configuration_security_scan_manifest– Konfigurationsscan-Details abrufen
🏗️ Architektur
Kubescape kann in zwei Modi ausgeführt werden:
CLI-Modus
Die CLI ist ein eigenständiges Tool, das Cluster, Dateien und Images bei Bedarf scannt.
Schlüsselkomponenten:
- Open Policy Agent (OPA) – Policy-Engine zur Auswertung
- Regolibrary – Bibliothek mit Sicherheitskontrollen
- Grype – Image-Schwachstellenscan
- Copacetic – Image-Patching
Operator-Modus (In-Cluster)
Für kontinuierliche Überwachung den Kubescape-Operator per Helm bereitstellen.
Zusätzliche Fähigkeiten:
- Kontinuierliche Konfigurationsscans
- Image-Schwachstellenscans
- Laufzeitanalyse mit eBPF
- Netzwerkrichtlinien-Generierung
📖 Vollständige Architekturdokumentation →
☸️ In-Cluster-Operator
Der Kubescape-Operator bietet kontinuierliche Sicherheitsüberwachung in Ihrem Cluster:
# Das Kubescape-Helm-Repository hinzufügen
helm repo add kubescape https://kubescape.github.io/helm-charts/
# Den Operator installieren
helm upgrade --install kubescape kubescape/kubescape-operator \
--namespace kubescape \
--create-namespace
Operator-Funktionen:
- 🔄 Kontinuierliche Fehlkonfigurationsscans
- 🐳 Image-Schwachstellenscans für alle Workloads
- 🔍 Erkennung von Laufzeitbedrohungen (eBPF-basiert)
- 🌐 Netzwerkrichtlinien-Generierung
- 📈 Integration von Prometheus-Metriken
📖 Operator-Installationsanleitung →
🔌 Integrationen
CI/CD
| Plattform | Integration |
|---|---|
| GitHub Actions | kubescape/github-action |
| GitLab CI | Dokumentation |
| Jenkins | Dokumentation |
IDE-Erweiterungen
| IDE | Erweiterung |
|---|---|
| VS Code | Kubescape-Erweiterung |
| Lens | Kubescape-Lens-Erweiterung |
Wo Sie Kubescape verwenden können
👥 Gemeinschaft
Kubescape ist ein CNCF-Inkubationsprojekt mit einer aktiven Gemeinschaft.
Mitmachen
- 💬 Slack – Benutzerkanal – Fragen stellen, Hilfe erhalten
- 💬 Slack – Entwicklerkanal – Zur Entwicklung beitragen
- 🐛 GitHub Issues – Fehler melden und Funktionen anfragen
- 📋 Projektboard – Sehen, woran wir arbeiten
- 🗺️ Roadmap – Zukünftige Pläne
Beitragen
Wir freuen uns über Beiträge! Bitte lesen Sie:
Gemeinschaftsressourcen
Mitwirkende
Änderungsprotokoll
Änderungen an Kubescape werden auf der Releases-Seite verfolgt.
Lizenz
Copyright 2021-2025, die Kubescape-Autoren. Alle Rechte vorbehalten.
Kubescape wird unter der Apache 2.0-Lizenz veröffentlicht.
Kubescape ist ein Cloud Native Computing Foundation (CNCF) Inkubationsprojekt und wurde von ARMO beigetragen.