# Cis K8S V1120 4.1.9

> If the kubelet config.yaml configuration file is being used validate permissions set to 600 or more restrictive (Automated)

- Skill: `cyberstrikeus/cis-k8s-v1120-4-1-9` (Agent Skill)
- Install (CLI): `npx skillmds@latest add cyberstrikeus/cis-k8s-v1120-4-1-9`
- Raw SKILL.md: https://api.skillmd.com/api/skills/cyberstrikeus/cis-k8s-v1120-4-1-9/raw
- Safety review: PASS (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: DevOps & Infra
- Author: cyberstrikeus (https://skillmd.com/u/cyberstrikeus)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/cyberstrikeus/cis-k8s-v1120-4-1-9

---


# CIS Kubernetes Benchmark v1.12.0 - Control 4.1.9

## Description

Ensure that if the kubelet refers to a configuration file with the `--config` argument, that file has permissions of 600 or more restrictive.

## Rationale

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.

## Impact

None

## Audit Procedure

### Step 1: Set the kubelet config yaml variable

Automated AAC auditing has been modified to allow CIS-CAT to input a variable for the `<PATH>/<FILENAME>` of the kubelet config yaml file.

Please set `$kubelet_config_yaml=<PATH>` based on the file location on your system.

For example:

```bash
export kubelet_config_yaml=/var/lib/kubelet/config.yaml
```

### Step 2: Verify file permissions

To perform the audit manually: Run the below command (based on the file location on your system) on the each worker node. For example,

```bash
stat -c %a /var/lib/kubelet/config.yaml
```

Verify that the permissions are `600` or more restrictive.

## Remediation

Run the following command (using the config file location identified in the Audit step):

```bash
chmod 600 /var/lib/kubelet/config.yaml
```

## Default Value

By default, the /var/lib/kubelet/config.yaml file as set up by `kubeadm` has permissions of 600.

## References

1. https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/

## CIS Controls

| Controls Version | Control                                                                                                                                                                                                                                          | IG 1 | IG 2 | IG 3 |
| ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---- | ---- | ---- |
| v8               | 3.3 Configure Data Access Control Lists<br>Configure data access control lists based on a user's need to know. Apply data access control lists, also known as access permissions, to local and remote file systems, databases, and applications. | ●    | ●    | ●    |
| v7               | 14.6 Protect Information through Access Control Lists<br>Protect all information stored on systems with file system, network share, claims, application, or database specific access control lists.                                              | ●    | ●    | ●    |

## Profile Applicability

- Level 1 - Worker Node

## Assessment Status

Automated

