Kubernetes Security Technical Implementation Guide
Rules, Groups, and Values defined within the XCCDF Benchmark
-
The Kubernetes Kube Proxy kubeconfig must be owned by root.
The Kubernetes Kube Proxy kubeconfig contain the argument and setting for the Control Planes. These settings contain network rules for restricting network communication between pods, clusters, and ...Rule Medium Severity -
SRG-APP-000516-CTR-001325
Group -
SRG-APP-000219-CTR-000550
Group -
Kubernetes Controller Manager must have the SSL Certificate Authority set.
The Kubernetes Controller Manager is responsible for creating service accounts and tokens for the API Server, maintaining the correct number of pods for every replication controller and provides no...Rule Medium Severity -
SRG-APP-000219-CTR-000550
Group -
Kubernetes API Server must have a certificate for communication.
Kubernetes control plane and external communication is managed by API Server. The main implementation of the API Server is to manage hardware resources for pods and container using horizontal or ve...Rule Medium Severity -
SRG-APP-000219-CTR-000550
Group -
Kubernetes etcd must enable client authentication to secure service.
Kubernetes container and pod configuration are maintained by Kubelet. Kubelet agents register nodes with the API Server, mount volume storage, and perform health checks for containers and pods. Any...Rule Medium Severity -
SRG-APP-000219-CTR-000550
Group -
The Kubernetes kubeadm.conf must have file permissions set to 644 or more restrictive.
The Kubernetes kubeadm.conf contains sensitive information regarding the cluster nodes configuration. If this file can be modified, the Kubernetes Platform Plane would be degraded or compromised fo...Rule Medium Severity -
SRG-APP-000516-CTR-001330
Group -
SRG-APP-000219-CTR-000550
Group -
Kubernetes Kubelet must enable tlsCertFile for client authentication to secure service.
Kubernetes container and pod configuration are maintained by Kubelet. Kubelet agents register nodes with the API Server, mount volume storage, and perform health checks for containers and pods. Any...Rule Medium Severity -
SRG-APP-000219-CTR-000550
Group -
SRG-APP-000219-CTR-000550
Group -
Kubernetes etcd must have a key file for secure communication.
Kubernetes stores configuration and state information in a distributed key-value store called etcd. Anyone who can write to etcd can effectively control the Kubernetes cluster. Even just reading th...Rule Medium Severity -
SRG-APP-000219-CTR-000550
Group -
SRG-APP-000219-CTR-000550
Group -
Kubernetes etcd must have the SSL Certificate Authority set.
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 ...Rule Medium Severity -
SRG-APP-000219-CTR-000550
Group -
Kubernetes etcd must have a certificate for communication.
Kubernetes stores configuration and state information in a distributed key-value store called etcd. Anyone who can write to etcd can effectively control the Kubernetes cluster. Even just reading th...Rule Medium Severity -
SRG-APP-000219-CTR-000550
Group -
Kubernetes etcd must have a key file for secure communication.
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 ...Rule Medium Severity -
SRG-APP-000219-CTR-000550
Group -
The Kubernetes Kube Proxy kubeconfig must have file permissions set to 644 or more restrictive.
The Kubernetes Kube Proxy kubeconfig contain the argument and setting for the Control Planes. These settings contain network rules for restricting network communication between pods, clusters, and ...Rule Medium Severity -
SRG-APP-000219-CTR-000550
Group -
Kubernetes etcd must have a peer-key-file set for secure communication.
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 ...Rule Medium Severity -
SRG-APP-000233-CTR-000585
Group -
Kubernetes Kubelet must enable kernel protection.
System kernel is responsible for memory, disk, and task management. The kernel provides a gateway between the system hardware and software. Kubernetes requires kernel access to allocate resources t...Rule High Severity -
SRG-APP-000342-CTR-000775
Group -
The Kubernetes API server must have the ValidatingAdmissionWebhook enabled.
Enabling the admissions webhook allows for Kubernetes to apply policies against objects that are to be created, read, updated, or deleted. By applying a pod security policy, control can be given to...Rule High Severity -
SRG-APP-000342-CTR-000775
Group -
Kubernetes must have a pod security policy set.
Enabling the admissions webhook allows for Kubernetes to apply policies against objects that are to be created, read, updated, or deleted. By applying a pod security policy, control can be given to...Rule High Severity -
SRG-APP-000435-CTR-001070
Group -
SRG-APP-000516-CTR-001325
Group -
SRG-APP-000454-CTR-001110
Group -
Kubernetes must remove old components after updated versions have been installed.
Previous versions of Kubernetes components that are not removed after updates have been installed may be exploited by adversaries by allowing the vulnerabilities to still exist within the cluster. ...Rule Medium Severity -
SRG-APP-000456-CTR-001125
Group -
SRG-APP-000516-CTR-001325
Group -
The Kubernetes component manifests must be owned by root.
The Kubernetes manifests are those files that contain the arguments and settings for the Control Plane services. These services are etcd, the api server, controller, proxy, and scheduler. If these ...Rule Medium Severity -
SRG-APP-000516-CTR-001325
Group -
The Kubernetes component etcd must be owned by etcd.
The Kubernetes etcd key-value store provides a way to store data to the Control Plane. If these files can be changed, data to API object and the Control Plane would be compromised. The scheduler wi...Rule Medium Severity -
SRG-APP-000516-CTR-001325
Group -
The Kubernetes conf files must be owned by root.
The Kubernetes conf files contain the arguments and settings for the Control Plane services. These services are controller and scheduler. If these files can be changed, the scheduler will be implem...Rule Medium Severity -
SRG-APP-000516-CTR-001325
Group -
The Kubernetes kubelet config must have file permissions set to 644 or more restrictive.
The Kubernetes kubelet agent registers nodes with the API server and performs health checks to containers within pods. If this file can be modified, the information system would be unaware of pod o...Rule Medium Severity -
SRG-APP-000516-CTR-001330
Group -
The Kubernetes kubelet config must be owned by root.
The Kubernetes kubelet agent registers nodes with the API Server and performs health checks to containers within pods. If this file can be modified, the information system would be unaware of pod o...Rule Medium Severity -
SRG-APP-000516-CTR-001335
Group -
SRG-APP-000516-CTR-001325
Group
Node 2
The content of the drawer really is up to you. It could have form fields, definition lists, text lists, labels, charts, progress bars, etc. Spacing recommendation is 24px margins. You can put tabs in here, and can also make the drawer scrollable.