C-0235 - Ensure that the kubelet configuration file has permissions set to 644 or more restrictive
Ensure that the kubelet configuration file has permissions set to 644 or more restrictive
Note: to enable this control run Kubescape with host sensor (see here)
Description of the the issue
The kubelet reads various parameters, including security settings, from a config file specified by the
--config argument. If this file is specified you should restrict its file permissions to maintain the integrity of the file. The file should be writable by only the administrators on the system.
What does this control test
Ensure that if the kubelet refers to a configuration file with the
--config argument, that file has permissions of 644 or more restrictive.
How to check it manually
First, SSH to the relevant worker node:
To check to see if the Kubelet Service is running:
sudo systemctl status kubelet
The output should return
Active: active (running) since..
Run the following command on each node to find the appropriate Kubelet config file:
ps -ef | grep kubelet
The output of the above command should return something similar to
--config /etc/kubernetes/kubelet/kubelet-config.json which is the location of the Kubelet config file.
Run the following command:
stat -c %a /etc/kubernetes/kubelet/kubelet-config.json
The output of the above command is the Kubelet config file's permissions. Verify that the permissions are
644 or more restrictive.
Run the following command (using the config file location identified in the Audit step)
chmod 644 /etc/kubernetes/kubelet/kubelet-config.json
See the AWS EKS documentation for the default value.
Updated about 1 month ago