Kokil Thapa - Professional Web Developer in Nepal
Freelancer Web Developer in Nepal with 15+ Years of Experience

Kokil Thapa is an experienced full-stack web developer focused on building fast, secure, and scalable web applications. He helps businesses and individuals create SEO-friendly, user-focused digital platforms designed for long-term growth.

CKS: Kubernetes Security Exam Guide

By Kokil Thapa | Last reviewed: September 2026

The CKS: Kubernetes Security Exam Guide you need is not a list of flashcards. The Certified Kubernetes Security Specialist exam is a two-hour, hands-on, performance-based test where you fix broken clusters under time pressure. You must harden nodes, lock down RBAC, write NetworkPolicies, and audit workloads before an attacker would. If you already passed CKA exam preparation, you know the kubectl rhythm. CKS adds a security lens to every task. This guide maps the 2026 curriculum, shows copy-paste YAML you will actually use, and gives you a study plan that matches real exam weight.

What is the CKS exam and who should take it?

The Certified Kubernetes Security Specialist (CKS) is a CNCF certification built on top of CKA. You cannot register without an active CKA credential. The exam costs USD 395 (~Rs 52,500 at typical 2026 exchange rates) and includes one free retake if taken within 12 months of purchase.

CKS suits platform engineers, DevOps leads, and security-minded developers who operate production Kubernetes. It is less about writing application manifests and more about stopping privilege escalation, container breakout, and lateral movement inside a cluster. If you maintain Kubernetes deployed with Kubespray or run workloads on managed services, the skills transfer directly.

The exam runs on Kubernetes 1.29 or 1.30 class clusters in 2026. Always check the current version on the official CNCF CKS certification page before booking. Documentation allowed during the test includes kubernetes.io, github.com/kubernetes, github.com/falcosecurity, and a handful of other whitelisted domains.

CKS Exam Domain MapCluster Setup10% weightRBAC, PSA, auditCluster Hardening15% weightAPI server, etcdSystem Hardening15% weightAppArmor, seccompMinimize Risk20% weightImages, NetworkPolicyMonitor and Detect20% weightFalco, audit logsSupply chain + runtime = 20% combined
CKS: Kubernetes Security Exam Guide — six weighted domains from the CNCF curriculum

How does CKS compare to CKA and CKAD?

All three CNCF Kubernetes exams are performance-based. CKA tests cluster administration. CKAD tests application deployment. CKS assumes both and adds defensive security. Many engineers take CKA first, skip CKAD, and go straight to CKS if security is their focus.

ExamFocusPrerequisiteDurationPass scoreTypical prep time
CKACluster ops, troubleshootingNone2 hours66%80–120 hours
CKADApp design, manifestsNone2 hours66%60–80 hours
CKSCluster and workload securityActive CKA2 hours67%60–80 hours

If you are still building kubectl muscle memory, finish CKAD exam preparation or CKA before CKS. CKS tasks assume you can create Roles, debug failing Pods, and edit manifests quickly. Speed matters because partial credit is rare.

What domains does the CKS curriculum cover?

The CNCF publishes six domain groups. Treat the percentages as study time allocation, not exact question counts. Heavier domains deserve more repetition.

  1. Cluster Setup (10%) — RBAC Roles and ClusterRoles, RoleBindings, ServiceAccount tokens, Pod Security Admission (PSA), audit policy configuration.
  2. Cluster Hardening (15%) — API server flags, etcd encryption at rest, kubelet hardening, anonymous auth disabled, NodeRestriction admission.
  3. System Hardening (15%) — AppArmor and seccomp profiles, host OS updates, minimizing host attack surface, CIS benchmark alignment.
  4. Minimize Microservice Vulnerabilities (20%) — NetworkPolicies, mTLS concepts, Ingress TLS, resource limits, distroless images for security, image scanning workflows.
  5. Supply Chain Security (20%) — Image provenance, admission controllers, OPA Gatekeeper or Kyverno policies, signed images, SBOM awareness.
  6. Monitoring, Logging, and Runtime Security (20%) — Audit log analysis, Falco runtime security for Kubernetes, detecting crypto-mining and privilege escalation.

Each domain maps to tasks you perform on a live cluster. There are no multiple-choice questions. You either produce a working configuration or you do not.

How do you harden a Kubernetes cluster for the CKS exam?

Cluster hardening is the backbone of this certification. Examiners love tasks that combine API server configuration, etcd encryption, and kubelet settings. Practice each in isolation first, then chain them together.

Encrypt etcd secrets at rest

By default, Secrets in etcd are base64-encoded, not encrypted. CKS expects you to enable encryption at rest with a KMS provider or local encryption config.

# /etc/kubernetes/encryption-config.yaml
apiVersion: apiserver.config.k8s.io/v1
kind: EncryptionConfiguration
resources:
  - resources:
      - secrets
    providers:
      - aescbc:
          keys:
            - name: key1
              secret: <base64-32-byte-key>
      - identity: {}

Mount this file on the control plane node. Then add the flag to the API server manifest:

--encryption-provider-config=/etc/kubernetes/encryption-config.yaml

Restart kube-apiserver. Verify with:

kubectl get secrets -n kube-system -o json | head
etcdctl get /registry/secrets/kube-system/<name> --prefix

The etcd value should show k8s:enc:aescbc:v1:key1 prefix when encryption is active. This pattern appears often. Memorize the file structure, not just the flag name.

Restrict kubelet and disable anonymous access

Kubelet misconfiguration is a common exam scenario. You must set --anonymous-auth=false, enable webhook authorization, and rotate certificates when asked.

# /var/lib/kubelet/config.yaml (excerpt)
authentication:
  anonymous:
    enabled: false
  webhook:
    enabled: true
authorization:
  mode: Webhook

On the control plane, verify API server flags include --anonymous-auth=false and --authorization-mode=Node,RBAC. These overlap with general Ubuntu security hardening practices I apply on production Linux servers.

Cluster Hardening PipelineRBACLeast privilegeAPI ServerFlags + auditetcdEncrypt secretsKubeletAuth webhookVerify Layerkubectl auth can-iaudit log reviewetcdctl encrypted output
Four-layer cluster hardening sequence tested in the CKS Kubernetes security exam

How do you write RBAC and NetworkPolicies under exam pressure?

RBAC and NetworkPolicy tasks appear in nearly every CKS sitting. You must create least-privilege Roles fast and verify with kubectl auth can-i. Do not over-grant verbs.

RBAC pattern for a namespace-scoped developer

apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  namespace: dev
  name: pod-reader
rules:
  - apiGroups: [""]
    resources: ["pods", "pods/log"]
    verbs: ["get", "list", "watch"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
  namespace: dev
  name: read-pods
subjects:
  - kind: ServiceAccount
    name: dev-sa
    namespace: dev
roleRef:
  kind: Role
  name: pod-reader
  apiGroup: rbac.authorization.k8s.io

Verify immediately:

kubectl auth can-i list pods --as=system:serviceaccount:dev:dev-sa -n dev

ClusterRole tasks follow the same structure with wider resource scope. Read the task wording carefully. One wrong verb loses the point.

Default-deny NetworkPolicy with selective allow

Examiners often give you a namespace with overly permissive traffic. Your job is to deny all ingress, then allow only required paths. See our deep dive on Kubernetes NetworkPolicies explained for syntax details.

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default-deny-ingress
  namespace: payments
spec:
  podSelector: {}
  policyTypes:
    - Ingress
---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: allow-frontend-to-api
  namespace: payments
spec:
  podSelector:
    matchLabels:
      app: api
  ingress:
    - from:
        - podSelector:
            matchLabels:
              app: frontend
      ports:
        - protocol: TCP
          port: 8080
  policyTypes:
    - Ingress

Confirm the CNI supports NetworkPolicy. Calico and Cilium do. Flannel alone does not. Exam clusters ship with a compatible CNI, but always check kubectl get pods -n kube-system first.

How do you prepare for Pod Security, seccomp, and supply chain tasks?

Pod Security Admission replaced PodSecurityPolicy in modern clusters. CKS expects you to label namespaces with enforce, audit, and warn levels. Know the three standards: privileged, baseline, and restricted.

kubectl label namespace production \
  pod-security.kubernetes.io/enforce=restricted \
  pod-security.kubernetes.io/audit=restricted \
  pod-security.kubernetes.io/warn=restricted

For seccomp, attach a profile via the securityContext. Our guide on seccomp syscall restriction covers local profile creation. Exam tasks often give you a broken Pod spec to fix.

securityContext:
  seccompProfile:
    type: Localhost
    localhostProfile: profiles/audit.json

Supply chain tasks focus on admission control. You may need to deploy OPA Gatekeeper or a validating webhook that rejects unsigned images. Understand image digest pinning:

containers:
  - name: app
    image: ghcr.io/org/app@sha256:abc123...
    imagePullPolicy: Always

Image scanning and SBOM topics are conceptual on the exam. You will not run a full CI pipeline. You will configure policies that enforce scan results or block latest tags. This mirrors how teams secure Laravel workloads on Kubernetes in production — pin images and restrict what reaches the cluster.

Supply Chain Security FlowBuildCI pipelineScanTrivy / GrypeSignCosign keyAdmitGatekeeperRejected at Admission:latest tag blockedunsigned image denied
Image build-to-admission pipeline — a core CKS supply chain security topic

What runtime security and monitoring skills does CKS test?

The monitoring domain separates candidates who only read docs from those who have touched Falco and audit logs. Install Falco via Helm or manifest, then create rules that detect shell spawn or sensitive file access.

- rule: Terminal shell in container
  desc: Detect shell execution
  condition: spawned_process and container and shell_procs
  output: Shell in container (user=%user.name container=%container.name)
  priority: WARNING

Audit policy configuration is equally important. Create a policy that logs Secret access at RequestResponse level:

apiVersion: audit.k8s.io/v1
kind: Policy
rules:
  - level: None
    users: ["system:kube-proxy"]
  - level: RequestResponse
    resources:
      - group: ""
        resources: ["secrets"]

Pass the policy path to the API server with --audit-policy-file and set --audit-log-path. Then grep the log for unauthorized Secret reads during troubleshooting tasks.

Runtime defense also covers rootless containers for security and detecting crypto-miners by CPU limits plus Falco rules. Know how to identify a privileged Pod:

kubectl get pods -A -o json | jq '.items[] | select(.spec.containers[].securityContext.privileged==true) | .metadata.name'

These skills parallel the API security complete checklist mindset — assume breach, log everything meaningful, and restrict blast radius.

What is the best CKS study plan for 2026?

A focused eight-week plan works for most engineers who already hold CKA. Adjust based on your weekly hours available.

  • Weeks 1–2: RBAC drills, PSA labels, audit policy. Use kubectl run imperatively to save time on simple Pods.
  • Weeks 3–4: NetworkPolicy default-deny labs, Ingress TLS, resource quotas. Pair with pod security and network policies reading.
  • Weeks 5–6: etcd encryption, kubelet hardening, AppArmor and seccomp profiles on Ubuntu nodes.
  • Week 7: Falco install, custom rules, audit log forensics. Practice parsing JSON audit entries with a JSON formatter tool locally.
  • Week 8: Two full timed mock exams. Fix every gap same day. Book the real exam only when mocks score above 75%.

Use a multi-node lab, not minikube alone. Killercoda and KodeKloud CKS courses align well with the exam style. Also spin up a cluster with kubeadm on two VMs to practice static Pod edits on the control plane.

Bookmark the Kubernetes security concepts documentation and the securing a cluster task guide. Those two pages cover half the exam surface.

8-Week CKS Study PlanWk 1-2RBAC + PSAWk 3-4NetPol + TLSWk 5-6HardeningWk 7-8Falco + MocksDaily Practice Targets15 kubectl speed drills1 YAML manifest from scratch1 verify step with auth can-iReview missed tasks same day
Recommended eight-week CKS: Kubernetes Security Exam Guide study schedule

Exam day tactics that actually help

Read every task twice before typing. Easy tasks hide strict verification steps. Use kubectl explain liberally — it is faster than scrolling docs for field names. Set aliases at the start:

alias k=kubectl
export do="--dry-run=client -o yaml"
complete -F __start_kubectl k

Flag tasks you cannot solve in five minutes. Return later. Partial clusters sometimes block downstream questions. Fix the control plane first when etcd or API server tasks fail.

PSI proctoring requires a clean desk, stable webcam, and one monitor. Close corporate VPNs that block remote desktop. I have seen engineers fail check-in over browser extensions alone.

Key Takeaways

  • CKS requires active CKA and tests hands-on security hardening, not theory — budget 60–80 lab hours minimum.
  • Master RBAC verification with kubectl auth can-i, default-deny NetworkPolicies, and etcd Secret encryption before exam day.
  • Pod Security Admission labels, seccomp profiles, and admission controllers cover roughly 40% of the curriculum combined.
  • Falco rules plus audit policy configuration are high-yield monitoring topics — practice log analysis until it feels routine.
  • Pin images by digest, block :latest, and know OPA Gatekeeper syntax for supply chain enforcement tasks.
  • Run two full timed mocks above 75% before booking; speed and verification beat memorizing every flag name.

People Also Ask

Is CKA required before taking CKS?

Yes. CNCF enforces an active CKA certification as a prerequisite. Your CKA must not be expired on exam day. CKAD does not substitute for CKA. Most candidates pass CKA first, then pursue CKS within 12 months while kubectl skills remain fresh.

How hard is the CKS exam compared to CKA?

CKS is narrower but deeper on security. CKA covers broader administration topics like etcd backup, node troubleshooting, and scheduling. CKS assumes that baseline and adds encryption, runtime detection, and policy enforcement. Candidates with CKA who skip security practice often find CKS harder than expected.

What Kubernetes version does the CKS exam use?

CNCF aligns the exam cluster with a recent stable Kubernetes release, typically within one minor version of current upstream. Check the certification page at booking time. Documentation tabs match that version. Do not study deprecated APIs like PodSecurityPolicy as active exam content.

Can you use kubectl aliases during the CKS exam?

Yes. You work in a remote Linux environment with kubectl pre-installed. You may set shell aliases and use vim or nano. You may not copy pre-written manifest files from your local machine. Only whitelisted documentation sites are available in the browser.

Build production-grade cluster security beyond the exam

Passing CKS proves you can secure a cluster under pressure. Production work extends into GitOps pipelines, ongoing patch cycles, and incident response. Teams running booking platforms like Adventure Third Pole Trek or multi-service apps need the same discipline — least privilege, encrypted secrets, and observable runtime behavior.

If your organisation needs hardened infrastructure but lacks in-house Kubernetes security expertise, structured Linux system administration and ongoing support and maintenance cover the gap between certification knowledge and day-to-day operations. For GitOps delivery after hardening, see ArgoCD GitOps for Kubernetes.

Start with one domain this week. Encrypt etcd Secrets or write a default-deny NetworkPolicy today. The CKS: Kubernetes Security Exam Guide only works if your fingers know the YAML before the clock starts. When you want help auditing a production cluster or building a secure deployment pipeline, contact us to discuss your environment.

Frequently Asked Questions

Yes. CNCF requires an active, unexpired CKA certification before you can register for CKS. CKAD does not substitute for CKA.

The CKS exam costs USD 395, roughly Rs 52,500 at typical 2026 exchange rates, and includes one free retake if taken within 12 months of purchase.

You need 67% to pass CKS. CKA and CKAD both require 66%, so CKS has a slightly higher passing threshold on the same two-hour format.

CKS is narrower but deeper on security. CKA covers broader administration like etcd backup, node troubleshooting, and scheduling. CKS assumes that baseline and adds encryption, runtime detection, and policy enforcement. Candidates who hold CKA but skip dedicated security labs often find CKS harder than expected because partial credit is rare and every task requires a working configuration under a two-hour clock.

CNCF aligns exam clusters with a recent stable release, typically Kubernetes 1.29 or 1.30 class clusters in 2026. Always verify the current version on the official CNCF certification page before booking because documentation tabs match that version. Study Pod Security Admission, not deprecated PodSecurityPolicy, since the latter is no longer active exam content.

Six CNCF domain groups drive study allocation: Cluster Setup at 10%, Cluster Hardening at 15%, System Hardening at 15%, Minimize Microservice Vulnerabilities at 20%, Supply Chain Security at 20%, and Monitoring, Logging, and Runtime Security at 20%. Treat percentages as time allocation, not exact question counts. Heavier domains like NetworkPolicies, image admission control, and Falco rule writing deserve more repetition because tasks run on live clusters with no multiple-choice fallback.

Budget 60 to 80 hours of hands-on labs on a real cluster if you already hold CKA. The article recommends an eight-week plan for most CKA holders, with two full timed mock exams in the final week. Book the real exam only when mocks score above 75%. If you are still building kubectl muscle memory, finish CKA first, which typically needs 80 to 120 hours of preparation on its own.

By default, Secrets in etcd are base64-encoded, not encrypted. CKS expects an EncryptionConfiguration file mounted on the control plane with an aescbc provider, then the API server flag encryption-provider-config pointing to that file. After restarting kube-apiserver, verify with kubectl and etcdctl; encrypted values show the k8s:enc:aescbc:v1:key1 prefix. Memorize the file structure, not just the flag name, because this pattern appears often in exam scenarios.

Create least-privilege Roles or ClusterRoles, bind them with RoleBindings, and verify immediately using kubectl auth can-i. One wrong verb typically loses the point. For NetworkPolicies, start with default-deny ingress, then add selective allow rules by podSelector and port. Confirm your CNI supports NetworkPolicy; Calico and Cilium do, Flannel alone does not. Exam clusters ship with a compatible CNI, but checking kube-system pods first is good practice before you assume policies will enforce.

Pod Security Admission replaced PodSecurityPolicy. You label namespaces with enforce, audit, and warn levels using privileged, baseline, or restricted standards. Seccomp tasks attach profiles via securityContext with type Localhost and a localhostProfile path. Exam scenarios often hand you a broken Pod spec to fix. Combined with admission controllers for supply chain enforcement, PSA and seccomp topics represent a substantial share of what you will configure on exam day under time pressure.

Expect image provenance, admission controllers such as OPA Gatekeeper or Kyverno, signed images, and SBOM awareness. Practical tasks include image digest pinning instead of tags, blocking latest tags, and configuring policies that reject unsigned images. You will not run a full CI pipeline on exam day, but you must know validating webhook and admission control syntax well enough to enforce scan results or deny non-compliant manifests before they reach the cluster.

Install Falco via Helm or manifest and write rules detecting shell spawn or sensitive file access. Configure audit policy to log Secret access at RequestResponse level, pass it with audit-policy-file, and set audit-log-path on the API server. Practice grep and JSON parsing on audit entries. You should also identify privileged Pods and understand how CPU limits plus Falco rules help catch crypto-mining workloads inside running containers.

An eight-week schedule works for most CKA holders. Weeks one and two cover RBAC, PSA labels, and audit policy. Weeks three and four focus on NetworkPolicy default-deny labs, Ingress TLS, and resource quotas. Weeks five and six drill etcd encryption, kubelet hardening, AppArmor, and seccomp on Ubuntu nodes. Week seven covers Falco install, custom rules, and audit forensics. Week eight runs two full timed mocks above 75%. Use a multi-node lab with kubeadm, Killercoda, or KodeKloud rather than minikube alone.

You work in a remote Linux environment with kubectl preinstalled and may use vim, nano, and shell aliases such as k=kubectl. Allowed documentation includes kubernetes.io, github.com/kubernetes, github.com/falcosecurity, and other CNCF-whitelisted domains. Use kubectl explain for field names instead of scrolling docs when possible. Prebuilt cheat sheets or external notes are not permitted, so bookmark the Kubernetes security concepts page and securing a cluster task guide during study because those two references cover roughly half the exam surface.

Read every task twice because easy-looking items hide strict verification steps. Flag anything you cannot solve in five minutes and return later. Fix control plane tasks first when etcd or API server configuration fails, since partial clusters can block downstream questions. Set kubectl aliases at session start. PSI proctoring requires a clean desk, stable webcam, one monitor, and closing corporate VPNs or browser extensions that interfere with check-in. Speed and verification beat memorizing every flag name because partial credit is rare.

Share this article

0 Comments

Leave a comment

Your email is not published. Comments appear once they have been read. Sign in to have your details filled in.

Quick Contact Options
Choose how you want to connect me: