Zum Hauptinhalt springen

Risiken

Auto Mounting des Default ServiceAccount Tokens in Kubernetes Pods

Standardmäßig wird jedem Pod in Kubernetes das default ServiceAccount zugewiesen, das (vor Version v1.22) ein automatisch eingebundenes Token enthält, das dem Pod Zugriff auf die Kubernetes API gewährt. Während diese Funktion die API Interaktion für Anwendungen vereinfacht, führt sie auch zu mehreren Sicherheitsrisiken, die die Integrität des Clusters gefährden können.

Übermäßige Berechtigungen

Das default ServiceAccount Token kann mehr Berechtigungen enthalten als notwendig, sodass Pods Zugriff auf die Kubernetes API erhalten – möglicherweise auch auf sensible oder kritische Cluster Ressourcen. Angreifer könnten dies ausnutzen, um unautorisierte Aktionen innerhalb des Clusters auszuführen.

Privilegieneskalation

Falls ein Angreifer einen Pod kompromittiert, kann er das default ServiceAccount Token nutzen, um mit der Kubernetes API zu interagieren, Privilegien zu eskalieren und potenziell den gesamten Cluster zu kompromittieren.

Verstoß gegen das Prinzip der minimalen Berechtigungen

Das automatische Einbinden des default ServiceAccount-Tokens verstößt gegen das Least Privilege Principle, das besagt, dass jeder Pod nur die minimal notwendigen Berechtigungen für seine spezifische Funktion haben sollte. Dadurch wird der Zugriffsumfang für jeden Pod im Cluster unnötig erweitert.

Um diese Risiken zu minimieren, sollte das automatische Einbinden des default ServiceAccount Tokens deaktiviert und stattdessen spezifische Berechtigungen für jeden Pod gezielt zugewiesen werden.


Orientieren Sie sich an folgenden Maßnahmen: