Overview

FieldValue
ID1048
NameCreate ServiceAccount Tokens (ClusterRole for any SA in any namespace)
Risk CategorySpoofing
Risk LevelCritical
Role TypeClusterRole
API Groupsauthentication.k8s.io
Resourcesserviceaccounts/token
Verbscreate
TagsCredentialAccess Impersonation PrivilegeEscalation Spoofing TokenCreation

Description

Permits creating tokens for any ServiceAccount in any namespace. This is highly critical as it allows an attacker to generate tokens for highly privileged ServiceAccounts (e.g., those bound to cluster-admin), leading to impersonation, credential access, and full privilege escalation.

Abuse Scenarios

  1. Create a new service account token for any service account in any namespace.
kubectl create token <serviceaccount-name> -n <namespace>
# Example: kubectl create token default -n kube-system
  1. Create a new service account token for a privileged service account (e.g., ‘kube-controller-manager’).
kubectl create token kube-controller-manager -n kube-system