Check: CNTR-K8-001510
Kubernetes STIG:
CNTR-K8-001510
(in versions v2 r2 through v1 r11)
Title
Kubernetes etcd must have the SSL Certificate Authority set. (Cat II impact)
Discussion
Kubernetes stores configuration and state information in a distributed key-value store called etcd. Anyone who can write to etcd can effectively control a Kubernetes cluster. Even just reading the contents of etcd could easily provide helpful hints to a would-be attacker. Using authenticity protection, the communication can be protected against man-in-the-middle attacks/session hijacking and the insertion of false information into sessions. The communication session is protected by utilizing transport encryption protocols, such as TLS. TLS provides the Kubernetes API Server and etcd with a means to be able to authenticate sessions and encrypt traffic. To enable encrypted communication for etcd, the parameter "--etcd-cafile" must be set. This parameter gives the location of the SSL Certificate Authority file used to secure etcd communication.
Check Content
Change to the /etc/kubernetes/manifests directory on the Kubernetes Control Plane. Run the command: grep -i etcd-cafile * If the setting "--etcd-cafile" is not configured 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 value of "--etcd-cafile" to the Certificate Authority for etcd.
Additional Identifiers
Rule ID: SV-242429r961110_rule
Vulnerability ID: V-242429
Group Title: SRG-APP-000219-CTR-000550
Expert Comments
CCIs
Number | Definition |
---|---|
CCI-001184 |
Protect the authenticity of communications sessions. |
Controls
Number | Title |
---|---|
SC-23 |
Session Authenticity |