Profilanwendbarkeit: Stufe 1 - Cluster / Steuerungsebene
Kubernetes-Rollen und ClusterRoles gewähren Zugriff auf Ressourcen, indem sie zulässige
Mengen von Objekten und Aktionen definieren. Das Setzen dieser Rollen auf das Platzhalterzeichen
"*", das alle Elemente abdeckt, kann zu Sicherheits-Schwachstellen führen, indem es
unbeabsichtigt Zugriff auf neue Ressourcen gewährt, die der Kubernetes-API hinzugefügt
werden, sei es durch benutzerdefinierte Ressourcendefinitionen (CRDs) oder zukünftige
Versionen der Plattform. Aus Sicherheitsperspektive wird diese Praxis nicht empfohlen,
da sie dem Prinzip der minimalen Rechtevergabe widerspricht, das vorschreibt, den
Benutzerzugriff strikt auf das zu beschränken, was für ihre Rollen notwendig ist,
um die Bereitstellung übermäßiger Rechte innerhalb der Kubernetes-API zu vermeiden.
Prüfung
Rufen Sie die in jedem Namespace im Cluster definierten Rollen ab und überprüfen Sie
sie auf Platzhalter:
kubectl get roles --all-namespaces -o yaml
Rufen Sie die im Cluster definierten Clusterrollen ab und überprüfen Sie auf Platzhalter:
kubectl get clusterroles -o yaml
Wiederherstellung
Wo möglich, ersetzen Sie die Verwendung von Platzhaltern in Clusterrollen und Rollen
durch spezifische Objekte oder Aktionen.
