Veröffentlicht am

CKS Prüfung: Kubernetes Security Specialist werden

Teilen:
Authors

TL;DR

  • Die CKS-Pruefung 2026 dauert 2 Stunden, umfasst 15-20 Aufgaben und erfordert 67% zum Bestehen.
  • Zwingende Voraussetzung: Eine gueltige CKA-Zertifizierung zum Zeitpunkt der Pruefung.
  • Die drei schwersten Domains (je 20%): Minimize Vulnerabilities, Supply Chain Security, Monitoring/Runtime Security.
  • Ihr muesst Trivy, Falco, AppArmor, Seccomp, kube-bench und OPA/Gatekeeper praktisch bedienen koennen.
  • Empfohlene Vorbereitungszeit: 4-6 Wochen nach bestandener CKA.

CKS vs. CKA: Der Unterschied

Die CKA prueft, ob ihr einen Cluster administrieren koennt. Die CKS prueft, ob ihr ihn absichern koennt. In der CKS-Pruefung 2026 muesst ihr Schwachstellen erkennen, Security-Tools konfigurieren, RBAC nach Least-Privilege einrichten, Images scannen und Runtime-Anomalien mit Falco erkennen. Die Bestehensquote liegt bei ca. 50%.

Falls ihr die CKA noch nicht habt, startet mit unserem CKA Lernplan fuer 8 Wochen.


Pruefungsformat

DetailWert
Dauer2 Stunden
Aufgaben15-20
Bestehensgrenze67%
FormatPraxisaufgaben im Browser-Terminal (PSI Secure Browser)
VoraussetzungGueltige CKA
Kosten395 USD (inkl. 1 Retake und killer.sh)
Gueltigkeit2 Jahre
Hilfsmittelkubernetes.io/docs erlaubt

CKS Domains und Gewichtung

DomainGewichtungSchwerpunkte
Cluster Setup10%CIS Benchmarks, NetworkPolicies, Ingress Security
Cluster Hardening15%RBAC, ServiceAccounts, Admission Controller
System Hardening15%AppArmor, Seccomp, Host-OS Hardening
Minimize Microservice Vulnerabilities20%SecurityContexts, Pod Security Standards, OPA/Gatekeeper
Supply Chain Security20%Image Scanning (Trivy), Image Signing, Registry Allowlisting
Monitoring, Logging and Runtime Security20%Audit Logging, Falco, Immutable Containers

Die drei 20%-Domains machen zusammen 60% der Pruefung aus. Hier entscheidet sich, ob ihr besteht.


Domain 1-2: Cluster Setup und Hardening (25%)

# kube-bench: CIS Kubernetes Benchmark pruefen
kubectl apply -f https://raw.githubusercontent.com/aquasecurity/kube-bench/main/job.yaml
kubectl logs job/kube-bench
# Typischer Fix: --profiling=false in kube-apiserver.yaml

# RBAC testen
kubectl auth can-i create deployments \
  --as=system:serviceaccount:production:deploy-sa -n production

# Default-ServiceAccount einschraenken
kubectl patch serviceaccount default -n production \
  -p '{"automountServiceAccountToken": false}'
# Least-Privilege Role
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  name: deployment-manager
  namespace: production
rules:
  - apiGroups: ["apps"]
    resources: ["deployments"]
    verbs: ["get", "list", "watch", "update", "patch"]
  - apiGroups: [""]
    resources: ["pods"]
    verbs: ["get", "list", "watch"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
  name: deployment-manager-binding
  namespace: production
subjects:
  - kind: ServiceAccount
    name: deploy-sa
    namespace: production
roleRef:
  kind: Role
  name: deployment-manager
  apiGroup: rbac.authorization.k8s.io

Pruefungstipp: Vermeidet verbs: ["*"] oder resources: ["*"]. Jede ueberfluessige Berechtigung kostet Punkte.


Domain 3: System Hardening (15%)

AppArmor und Seccomp sind Pflichtthemen. Ihr muesst Profile laden, anwenden und die Auswirkungen verstehen.

# Pod mit AppArmor-Profil
apiVersion: v1
kind: Pod
metadata:
  name: apparmor-pod
  annotations:
    container.apparmor.security.beta.kubernetes.io/app: localhost/k8s-restricted
spec:
  containers:
    - name: app
      image: nginx:1.27
---
# Pod mit Seccomp und gehaertetem SecurityContext
apiVersion: v1
kind: Pod
metadata:
  name: hardened-pod
spec:
  securityContext:
    seccompProfile:
      type: RuntimeDefault
  containers:
    - name: app
      image: nginx:1.27
      securityContext:
        allowPrivilegeEscalation: false
        readOnlyRootFilesystem: true
        runAsNonRoot: true
        runAsUser: 10000
        capabilities:
          drop:
            - ALL
      volumeMounts:
        - name: tmp
          mountPath: /tmp
  volumes:
    - name: tmp
      emptyDir: {}
# AppArmor-Profil auf dem Node laden
apparmor_parser -q /etc/apparmor.d/k8s-restricted
aa-status  # aktive Profile anzeigen

Mehr zu Kubernetes-Security-Konzepten in unserem Artikel zur Kubernetes Security Hardening.


Domain 4: Minimize Vulnerabilities (20%)

Pod Security Standards und OPA/Gatekeeper sind zentrale Themen.

# Namespace mit Pod Security Standard (restricted)
apiVersion: v1
kind: Namespace
metadata:
  name: secure-apps
  labels:
    pod-security.kubernetes.io/enforce: restricted
    pod-security.kubernetes.io/audit: restricted
    pod-security.kubernetes.io/warn: restricted
# OPA Gatekeeper: Image-Allowlist erzwingen
apiVersion: templates.gatekeeper.sh/v1
kind: ConstraintTemplate
metadata:
  name: k8sallowedrepos
spec:
  crd:
    spec:
      names:
        kind: K8sAllowedRepos
      validation:
        openAPIV3Schema:
          type: object
          properties:
            repos:
              type: array
              items:
                type: string
  targets:
    - target: admission.k8s.gatekeeper.sh
      rego: |
        package k8sallowedrepos
        violation[{"msg": msg}] {
          container := input.review.object.spec.containers[_]
          satisfied := [good | repo = input.parameters.repos[_] ; good = startswith(container.image, repo)]
          not any(satisfied)
          msg := sprintf("image <%v> not from allowed repo", [container.image])
        }

Domain 5: Supply Chain Security (20%)

Trivy ist das zentrale Tool fuer Image-Scanning in der Pruefung.

# Image scannen
trivy image nginx:1.27

# Nur kritische und hohe Schwachstellen
trivy image --severity CRITICAL,HIGH nginx:1.27

# Filesystem scannen
trivy fs /path/to/project

# Kubernetes-Cluster scannen
trivy k8s --report summary cluster

Pruefungstipp: Trivy-Output lesen und die richtigen Schlussfolgerungen ziehen gehoert zu den haeufigsten Aufgaben. Uebt, CVE-Findings zu interpretieren.


Domain 6: Monitoring, Logging und Runtime Security (20%)

Falco und Audit Policies sind hier die Kernthemen.

# Kubernetes Audit Policy
apiVersion: audit.k8s.io/v1
kind: Policy
rules:
  - level: RequestResponse
    resources:
      - group: ""
        resources: ["secrets"]
  - level: Metadata
    resources:
      - group: ""
        resources: ["pods", "services"]
  - level: None
    nonResourceURLs:
      - "/healthz*"
      - "/readyz*"
# Audit Policy aktivieren (kube-apiserver.yaml):
# --audit-policy-file=/etc/kubernetes/audit/policy.yaml
# --audit-log-path=/var/log/kubernetes/audit/audit.log
# --audit-log-maxage=30

# Falco-Output pruefen
journalctl -u falco -f

# Verdaechtige Prozesse in Containern finden
kubectl exec suspect-pod -- ps aux
crictl ps
crictl inspect CONTAINER_ID

Vorbereitungsstrategie: 4-6 Wochen nach der CKA

WocheFokus
1RBAC vertiefen, kube-bench, ServiceAccounts einschraenken
2AppArmor, Seccomp, Pod Security Standards
3Trivy, OPA/Gatekeeper, Supply Chain Security
4Falco, Audit Policies, Runtime Security
5-6killer.sh Sessions, Fehleranalyse, Wiederholung

Tools-Checkliste

ToolEinsatzbereichPruefungsrelevanz
TrivyImage ScanningScans ausfuehren, Output interpretieren
FalcoRuntime SecurityRegeln lesen, anpassen, Output deuten
AppArmorSystem HardeningProfile laden, auf Pods anwenden
SeccompSyscall FilteringProfile erstellen, in Pod-Spec einbinden
kube-benchCIS BenchmarksScans ausfuehren, Findings beheben
OPA/GatekeeperPolicy EnforcementConstraintTemplates schreiben

Haeufige Fehler in der CKS-Pruefung

  1. RBAC zu breit: verbs: ["*"] ist in der CKS ein Pruefungsfehler. Immer Least Privilege.
  2. Falco nur installiert: Ihr muesst Regeln lesen, verstehen und anpassen koennen.
  3. AppArmor-Profil nicht geladen: Das Profil muss mit apparmor_parser auf dem Node aktiv sein.
  4. Audit-Levels verwechselt: None, Metadata, Request, RequestResponse -- kennt den Unterschied.
  5. Secrets als Env-Vars: Volume-Mounts sind sicherer, weil sie nicht in Prozess-Listings auftauchen.

CKA + CKS: Die Kombination die zaehlt

Wer beide Zertifikate haelt, zeigt, dass er Kubernetes-Cluster sowohl betreiben als auch absichern kann. In Deutschland ist diese Kombination besonders gefragt im Finanzsektor, Healthcare, oeffentlicher Verwaltung und bei Consulting-Unternehmen.

Fuer praktische Tipps zur CKA-Pruefung lest CKA Pruefung bestehen: 10 Tipps.


Fazit

Die CKS-Pruefung 2026 ist die anspruchsvollste Kubernetes-Zertifizierung. Mit 4-6 Wochen strukturierter Vorbereitung nach der CKA, konsequentem Hands-on-Training mit Trivy, Falco und AppArmor und realistischen Mock Exams mit killer.sh habt ihr die besten Chancen, beim ersten Anlauf zu bestehen.


Verwandte Artikel


Ihr wollt eure Kubernetes-Umgebung absichern oder euer Team auf die CKS vorbereiten? Kontaktiert uns unter /kontakt.

Kubernetes-Beratung gesucht?

Wir helfen deutschen Unternehmen bei der Kubernetes-Implementierung, Migration und Optimierung. DSGVO-konform und praxiserprobt.

📖 Verwandte Artikel

Weitere interessante Beiträge zu ähnlichen Themen