Ansichten:
Profilanwendbarkeit: Stufe 1
Die Kubernetes-API speichert Geheimnisse, die Dienstkontotoken für die Kubernetes-API oder Anmeldeinformationen sein können, die von Workloads im Cluster verwendet werden. Der Zugriff auf diese Geheimnisse sollte auf die kleinstmögliche Benutzergruppe beschränkt werden, um das Risiko einer Rechteausweitung zu verringern.
Unangemessener Zugriff auf Geheimnisse, die im Kubernetes-Cluster gespeichert sind, kann einem Angreifer zusätzlichen Zugriff auf den Kubernetes-Cluster oder externe Ressourcen ermöglichen, deren Anmeldedaten als Geheimnisse gespeichert sind.
Standardwert:
CLUSTERROLEBINDING                              SUBJECT 
TYPE             SA-NAMESPACE 
cluster-admin                                            system:masters 
Group 
system:controller:clusterrole-aggregation-controller     clusterrole-
aggregation-controller   ServiceAccount   kube-system 
system:controller:expand-controller                      expand-controller 
ServiceAccount   kube-system 
system:controller:generic-garbage-collector              generic-garbage-
collector          ServiceAccount      kube-system 
system:controller:namespace-controller                   namespace-controller 
ServiceAccount   kube-system 
system:controller:persistent-volume-binder               persistent-volume-
binder             ServiceAccount      kube-system 
system:kube-controller-manager                           system:kube-controller-
manager    User

Auswirkung

Es sollte darauf geachtet werden, den Zugriff auf Geheimnisse für Systemkomponenten, die diesen für ihren Betrieb benötigen, nicht zu entfernen.

Prüfung

Überprüfen Sie die Benutzer, die get, list oder watch Zugriff auf secrets-Objekte in der Kubernetes-API haben.

Wiederherstellung

Wo möglich, entfernen Sie den Zugriff von get, list und watch auf secret-Objekte im Cluster.