Check: CNTR-K8-000360
Kubernetes STIG:
CNTR-K8-000360
(in versions v1 r10 through v1 r7)
Title
The Kubernetes API server must have anonymous authentication disabled. (Cat I impact)
Discussion
The Kubernetes API Server controls Kubernetes via an API interface. A user who has access to the API essentially has root access to the entire Kubernetes cluster. To control access, users must be authenticated and authorized. By allowing anonymous connections, the controls put in place to secure the API can be bypassed. Setting anonymous authentication to "false" also disables unauthenticated requests from kubelets. While there are instances where anonymous connections may be needed (e.g., health checks) and Role-Based Access Controls (RBAC) are in place to limit the anonymous access, this access should be disabled, and only enabled when necessary.
Check Content
Change to the /etc/kubernetes/manifests directory on the Kubernetes Control Plane. Run the command: grep -i anonymous-auth * If the setting anonymous-auth is set to "true" in the Kubernetes API Server manifest file, this is a finding.
Fix Text
Edit the Kubernetes API Server manifest file in the /etc/kubernetes/manifests directory on the Kubernetes Control Plane. Set the argument --anonymous-auth to "false".
Additional Identifiers
Rule ID: SV-242390r879530_rule
Vulnerability ID: V-242390
Group Title: SRG-APP-000033-CTR-000100
Expert Comments
CCIs
Number | Definition |
---|---|
CCI-000213 |
Enforce approved authorizations for logical access to information and system resources in accordance with applicable access control policies. |
Controls
Number | Title |
---|---|
AC-3 |
Access Enforcement |