If proxy kubeconfig file exists ensure permissions are set to 600 or more restrictive (Manual)
Scanned 9/3/2026
Install to Claude Code
npx -y skills add CyberStrikeus/CyberStrike --skill cis-k8s-v1120-4.1.3 --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Cis K8s V1120 4.1.3?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/cyberstrikeus-cis-k8s-v1120-4-1-3)More formats (shields.io, HTML) on the badges page.
---
name: cis-k8s-v1120-4.1.3
description: "If proxy kubeconfig file exists ensure permissions are set to 600 or more restrictive (Manual)"
category: cis-k8s
version: "1.12.0"
author: cyberstrike-official
tags: [cis, kubernetes, worker-nodes, worker-node-config, file-permissions]
cis_id: "4.1.3"
cis_benchmark: "CIS Kubernetes Benchmark v1.12.0"
tech_stack: [kubernetes]
cwe_ids: []
chains_with: []
prerequisites: []
severity_boost: {}
---
# CIS Kubernetes Benchmark v1.12.0 - Control 4.1.3
## Description
If `kube-proxy` is running, and if it is using a file-based kubeconfig file, ensure that the proxy kubeconfig file has permissions of `600` or more restrictive.
## Rationale
The `kube-proxy` kubeconfig file controls various parameters of the `kube-proxy` service in the worker node. 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.
It is possible to run `kube-proxy` with the kubeconfig parameters configured as a Kubernetes ConfigMap instead of a file. In this case, there is no proxy kubeconfig file.
## Impact
None
## Audit Procedure
### Step 1: Find the kubeconfig file being used by kube-proxy
```bash
ps -ef | grep kube-proxy
```
If `kube-proxy` is running, get the kubeconfig file location from the `--kubeconfig` parameter.
### Step 2: Verify file permissions
Run the below command (based on the file location on your system) on the each worker node. For example,
```bash
stat -c %a <path><filename>
```
Verify that a file is specified and it exists with permissions are `600` or more restrictive.
## Remediation
Run the below command (based on the file location on your system) on the each worker node. For example,
```bash
chmod 600 <proxy kubeconfig file>
```
## Default Value
By default, proxy file has permissions of `640`.
## References
1. https://kubernetes.io/docs/admin/kube-proxy/
## 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
Manual
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!