
kube-scan: Octarine k8s Cluster-Risikobewertungs-Tool
Probieren Sie noch heute unser kostenloses Kubernetes-Risikobewertungstool aus.
Führen Sie es jederzeit auf jedem Cluster aus. Keine Daten verlassen Ihren Cluster. Wir sammeln keine Informationen.
Weitere Informationen zu Octarine finden Sie unter https://www.octarinesec.com.
Kube-Scan vergibt für jeden Workload einen Risikoscore von 0 (kein Risiko) bis 10 (hohes Risiko). Das Risiko basiert auf der Laufzeitkonfiguration jedes Workloads (derzeit über 20 Einstellungen). Die genauen Regeln und die Scoring-Formel sind Teil des Open-Source-Frameworks KCCSS, des Kubernetes Common Configuration Scoring System.
KCCSS ähnelt dem Common Vulnerability Scoring System (CVSS), dem Industriestandard zur Bewertung von Schwachstellen, konzentriert sich jedoch stattdessen auf die Konfigurationen und Sicherheitseinstellungen selbst. Schwachstellen sind immer nachteilig, Konfigurationseinstellungen können jedoch unsicher, neutral oder entscheidend für den Schutz oder die Behebung sein. KCCSS bewertet sowohl Risiken als auch Abhilfemaßnahmen als separate Regeln und ermöglicht es Benutzern, ein Risiko für jede Laufzeiteinstellung eines Workloads zu berechnen und daraus das Gesamtrisiko des Workloads zu ermitteln.
Bitte beachten Sie, dass kube-scan den Cluster beim Start scannt und den Scan alle 24 Stunden wiederholt. Wenn Sie also einen aktuellen Risikoscore erhalten möchten (z. B. nach der Installation einer neuen App), sollten Sie den kube-scan-Pod neu starten.
kubectl apply -f https://raw.githubusercontent.com/octarinesec/kube-scan/master/kube-scan.yaml
kubectl port-forward --namespace kube-scan svc/kube-scan-ui 8080:80
Öffnen Sie anschließend http://localhost:8080 in Ihrem Browser.
kubectl apply -f https://raw.githubusercontent.com/octarinesec/kube-scan/master/kube-scan-lb.yaml
Holen Sie sich die Load-Balancer-Adresse mit
kubectl -n kube-scan get service kube-scan-ui -o jsonpath={..ip}
oder
kubectl -n kube-scan get service kube-scan-ui -o jsonpath={..hostname}
abhängig vom Load-Balancer-Typ.
Öffnen Sie anschließend diese Adresse in Ihrem Browser.
Wenn Sie kube-scan mit dem Load-Balancer-Dienst auf Ihren Cluster angewendet haben:
„HOST“ bezieht sich auf die externe IP des Dienstes.
Wenn Sie Port-Forwarding verwendet haben:
„HOST“ bezieht sich auf „localhost:8080“
Abrufen aller Risiken in Ihrem Cluster:
GET http://HOST/api/risks
Anfordern, dass der kube-scan-Dienst die Risiken neu berechnet (falls eine Ressource geändert wurde):
POST http://HOST/api/refresh
Dies kann je nach Clustergröße ein langer Vorgang sein. Sie können den Status des Aktualisierungsvorgangs abrufen:
GET http://HOST/api/refreshing_status
Server-Image erstellen (aus dem Hauptverzeichnis)
cd server
docker build -t SERVER_TAG_NAME .
docker push SERVER_TAG_NAME
Client-Image erstellen (aus dem Hauptverzeichnis)
cd client
docker build -t CLIENT_TAG_NAME .
docker push CLIENT_TAG_NAME
Legen Sie die kube-scan-Container-Images in der gewünschten YAML-Datei fest (aus dem Hauptverzeichnis): kube-scan-Container mit SERVER_TAG_NAME kube-scan-ui-Container mit CLIENT_TAG_NAME
Wenden Sie die gewünschte YAML-Datei an und befolgen Sie die Anweisungen unter „Schnellstart“ oder „Verwendung eines Load-Balancers“.
kubectl delete -f https://raw.githubusercontent.com/octarinesec/kube-scan/master/kube-scan.yaml
Bei Verwendung eines Load-Balancers:
kubectl delete -f https://raw.githubusercontent.com/octarinesec/kube-scan/master/kube-scan-lb.yaml

