For the complete documentation index, see llms.txt. This page is also available as Markdown.
Cortex CloudApplication Security

The --etcd-certfile and --etcd-keyfile arguments are not set appropriately misconfiguration detected

Rule Details

Cortex AppSec Rule ID

APPSEC_K8S_99

Category - Subcategory

Kubernetes - Native Security Controls

Provider

OTHER

Severity

HIGH

Framework

Helm, Kubernetes, Kustomize

Impact

etcd should be configured to make use of TLS encryption for client connections. etcd is a highly-available key value store used by Kubernetes deployments for persistent storage of all of its REST API objects. These objects are sensitive in nature and should be protected by client authentication. This requires the API server to identify itself to the etcd server using a client certificate and key.

How to Fix

Kind: Pod [source,go]

{ "apiVersion: v1 kind: Pod metadata: creationTimestamp: null labels: component: kube-apiserver tier: control-plane name: kube-apiserver namespace: kube-system spec: containers:

  • command:

  • kube-apiserver

  • --etcd-certfile=/path/to/cert

  • --etcd-keyfile=/path/to/key image: gcr.io/google_containers/kube-apiserver-amd64:v1.6.0 livenessProbe: failureThreshold: 8 httpGet: host: 127.0.0.1 path: /healthz port: 6443 scheme: HTTPS initialDelaySeconds: 15 timeoutSeconds: 15 name: kube-apiserver-should-pass resources: requests: cpu: 250m volumeMounts:

  • mountPath: /etc/kubernetes/ name: k8s readOnly: true

  • mountPath: /etc/ssl/certs name: certs

  • mountPath: /etc/pki name: pki hostNetwork: true volumes:

  • hostPath: path: /etc/kubernetes name: k8s

  • hostPath: path: /etc/ssl/certs name: certs

  • hostPath: path: /etc/pki name: pki ", }


Last updated

Was this helpful?