Veröffentlicht: 2026-03-04
Das Cloud-Sicherheitsforschungsteam von KENSAI analysierte 12.000 produktive Kubernetes-Cluster in europäischen Unternehmen und stellte fest, dass 58 % RBAC-Fehlkonfigurationen (Role-Based Access Control, rollenbasierte Zugriffskontrolle) enthalten, die schwerwiegend genug sind, um laterale Bewegungen und eine Rechteausweitung bis zum Cluster-Administrator zu ermöglichen. Die fünf gefährlichsten Muster — Wildcard-Berechtigungen, Missbrauch von Standard-Servicekonten, übermäßige ClusterRoleBindings, Ausbruch aus Namespaces über Rechte zur Pod-Erstellung und Token-Einbindung in privilegierten Pods — sind in der Mehrheit der Bereitstellungen vorhanden. Die meisten Unternehmen prüfen ihre RBAC-Richtlinien nach der Ersteinrichtung nicht mehr.
⚡ Wenn ein Angreifer einen beliebigen Pod in 58 % der untersuchten Cluster kompromittiert, kann er allein mithilfe von RBAC-Fehlkonfigurationen innerhalb weniger Minuten vollständige Cluster-Administratorrechte erlangen.
Die am weitesten verbreitete Fehlkonfiguration: 23 % der Cluster verfügen über benutzerdefinierte ClusterRoles mit Wildcard-Verben oder -Ressourcen (*). Teams kopieren die Rolle cluster-admin als Ausgangspunkt und vergessen, ihren Umfang einzuschränken. Ein einzelner Pod mit einem Servicekonto, das an eine solche Rolle gebunden ist, hat uneingeschränkten Zugriff auf jede Ressource in jedem Namespace — Secrets, ConfigMaps, Knoten und den API-Server selbst.
# Gefährlich: Wildcard-ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: devops-tools
rules:
- apiGroups: ["*"]
resources: ["*"]
verbs: ["*"] # ← Entspricht vollständigen Cluster-Administratorrechten
Jeder Kubernetes-Namespace besitzt ein default-Servicekonto, das automatisch in Pods eingebunden wird, sofern dies nicht ausdrücklich deaktiviert wurde. In 41 % der Cluster wurden dem Standard-Servicekonto in mindestens einem Namespace erweiterte Berechtigungen erteilt — häufig, weil ein Administrator während der Fehlerbehebung schnell kubectl create rolebinding ausgeführt und die Bindung anschließend nie entfernt hat. Angreifer, die in einem beliebigen Pod dieses Namespace RCE erlangen, übernehmen diese Berechtigungen sofort.
34 % der Cluster verfügen über mehr als 10 benutzerdefinierte ClusterRoleBindings — Bindungen, die Berechtigungen über alle Namespaces hinweg erteilen. Viele davon binden weitreichende Rollen an Gruppen wie system:authenticated oder system:serviceaccounts und gewähren damit effektiv jedem authentifizierten Benutzer oder jedem Servicekonto im Cluster erweiterte Zugriffsrechte.
Benutzer mit der Berechtigung create pods in einem beliebigen Namespace können das Dateisystem des Hosts einbinden, privilegierte Container ausführen oder Pods mit jedem beliebigen Servicekonto dieses Namespace erstellen. In 29 % der Cluster verfügen Entwickler über Rechte zur Pod-Erstellung, ohne dass Pod Security Standards durchgesetzt werden — dadurch wird ein trivialer Container-Ausbruch auf den zugrunde liegenden Knoten ermöglicht.
Kubernetes bindet standardmäßig Servicekonto-Token in Pods ein. In Kombination mit privilegierten Pod-Spezifikationen oder Zugriff auf das Hostnetzwerk können Angreifer das Token stehlen und sich von außerhalb des Clusters am API-Server authentifizieren. Nur 12 % der untersuchten Cluster setzen automountServiceAccountToken: false bei Workloads, die keinen API-Zugriff benötigen.
get secrets in allen Namespaces — der Angreifer extrahierte innerhalb von 4 Minuten Datenbankzugangsdaten, API-Schlüssel und TLS-Zertifikate.
Mehr als die Hälfte der analysierten produktiven Kubernetes-Cluster enthält mindestens eine RBAC-Fehlkonfiguration, die eine Rechteausweitung von einem kompromittierten Pod bis hin zum Zugriff auf Cluster-Administrator-Ebene ermöglichen könnte.
Bei Penetrationstests an fehlkonfigurierten Clustern betrug die durchschnittliche Zeit von der ersten Kompromittierung eines Pods bis zum vollständigen Cluster-Administratorzugriff 3,2 Minuten. Automatisierte Werkzeuge wie peirates und kubeletctl machen dies trivial.
Cluster mit Wildcard-Leseberechtigungen legten durchschnittlich 847 Kubernetes-Secrets offen — darunter Datenbankzugangsdaten, API-Schlüssel, TLS-Zertifikate und IAM-Token von Cloud-Anbietern aus sämtlichen Namespaces.
Die große Mehrheit der Unternehmen konfiguriert RBAC einmalig bei der Bereitstellung des Clusters und überprüft die Konfiguration anschließend nie wieder. Rollenbindungen sammeln sich über Monate an, wenn Teams Berechtigungen für Fehlerbehebung, CI/CD-Pipelines und Überwachung hinzufügen — und diese niemals entfernen.
Das Kubernetes-Sicherheitsmodul von KENSAI umfasst jetzt eine automatisierte RBAC-Analyse, die jedes Servicekonto, jede Rolle und jede Bindung in Ihrem Cluster abbildet, um Pfade zur Rechteausweitung zu identifizieren. Der Scanner erzeugt eine visuelle Darstellung der Berechtigungsketten und hebt den kürzesten Pfad von jedem kompromittierten Workload zum Cluster-Administrator hervor.
Jeder Workload sollte über ein eigenes dediziertes Servicekonto verfügen, das nur die tatsächlich benötigten Berechtigungen besitzt. Vermeiden Sie die Bindung von ClusterRoles, wenn auf einen Namespace beschränkte Roles ausreichen. Verwenden Sie automountServiceAccountToken: false für Pods, die keinen Zugriff auf die Kubernetes API benötigen — dies trifft auf die Mehrheit der Anwendungs-Workloads zu.
Kubernetes Pod Security Standards (PSS) auf der Ebene restricted verhindern, dass Pods als Root ausgeführt werden, Hostpfade einbinden oder den privilegierten Modus verwenden. Setzen Sie diese mithilfe von Pod Security Admission auf Namespace-Ebene durch. Dadurch wird der Angriffsvektor für Container-Ausbrüche beseitigt, selbst wenn die RBAC-Berechtigungen zu weitreichend sind.
Führen Sie vierteljährliche RBAC-Prüfungen ein. Überprüfen Sie alle ClusterRoleBindings, identifizieren Sie veraltete Bindungen ausgeschiedener Teammitglieder oder stillgelegter Dienste und stellen Sie sicher, dass kein Servicekonto über umfassendere Berechtigungen als erforderlich verfügt. KENSAI kann dies durch kontinuierliche Abweichungserkennung automatisieren.
kubectl get clusterroles -o json | jq '.items[] | select(.rules[]?.verbs[]? == "*")'automountServiceAccountToken: false für alle Workloads, die keinen API-Zugriff benötigenrestricted für alle produktiven Workloads auf Namespace-Ebene ankubectl get clusterrolebindings -o wide — kennzeichnen Sie alle Bindungen an weit gefasste Gruppenkensai scan --k8s-rbac für Ihren Cluster aus, um in weniger als 60 Sekunden eine vollständige RBAC-Risikobewertung zu erhalten. Der Bericht enthält eine Darstellung der Pfade zur Rechteausweitung, konkrete Schritte zur Behebung jedes Befunds und eine NIS2-Compliance-Zuordnung für Unternehmen, die der Richtlinie unterliegen.
*) aus benutzerdefinierten ClusterRolessystem:authenticated oder system:serviceaccounts gebunden sindautomountServiceAccountToken: false für alle Pods, die keinen API-Zugriff benötigenrestricted für produktive Namespaces durch🛡️ Ist Ihre Website sicher?
Entdecken Sie Schwachstellen, bevor Angreifer es tun.
Website kostenlos scannen →