Key takeaways
- CKS requires a passed CKA; under the CARE program a CKS pass on or after 18 June 2026 also extends your CKA.
- Three domains carry 20% each: microservice vulnerabilities, supply chain security, and monitoring, logging and runtime security.
- The allowed documentation includes Falco, bom, etcd, ingress-nginx, Cilium and Istio docs besides kubernetes.io.
- The curriculum names AppArmor, seccomp, the CIS benchmark, Kubesec and KubeLinter; other scanners appear only if a task provides them.
- Practise each control until you can configure it and prove it works, not just describe it.
On this page
- CKS in numbers
- What the official pages say about tools
- Cluster setup and cluster hardening
- System hardening
- Microservice vulnerabilities and supply chain security
- Monitoring, logging and runtime security
- A six-week CKS plan after CKA
- Exam-day habits that matter more on CKS
- Editing control-plane files safely
- Frequently asked questions
CKS in numbers
The exam is 15-20 performance-based tasks in 120 minutes. The pass mark is 67%, the list price is $445 and the certification is valid for 2 years. Results arrive by email within 24 hours. Like CKA, each task names a host to ssh to, and the base node must not be rebooted.
| Domain | Weight |
|---|---|
| Cluster Setup | 15% |
| Cluster Hardening | 15% |
| System Hardening | 10% |
| Minimize Microservice Vulnerabilities | 20% |
| Supply Chain Security | 20% |
| Monitoring, Logging and Runtime Security | 20% |
What the official pages say about tools
Three official sources describe the environment, and none of them is a complete tool list. The candidate instructions list what every SSH host has. The resources-allowed page lists the documentation you may open, which hints at the projects tasks can involve. The curriculum PDF names tools inside its competencies. Anything beyond these three is someone’s guess, however confidently it is written.
| Source | What it names |
|---|---|
| Candidate instructions | kubectl with k alias and Bash completion, yq, curl, wget, man pages on every SSH host |
| Resources allowed | kubernetes.io docs and blog, Falco, bom, etcd, ingress-nginx, Cilium and Istio documentation, task Quick Reference links |
| Curriculum PDF | CIS benchmark, AppArmor, seccomp, Kubesec, KubeLinter, Cilium and Istio (Pod-to-Pod encryption), SBOM |
Cluster setup and cluster hardening
Cluster Setup (15%) is about the perimeter of the cluster: NetworkPolicies to restrict access, reviewing component configuration against the CIS benchmark, Ingress with TLS, protecting node metadata and endpoints, and verifying platform binaries before you deploy them. Cluster Hardening (15%) is about access inside it: RBAC with least privilege, careful use of ServiceAccounts, restricting access to the API, and upgrading Kubernetes to avoid known vulnerabilities.
- Write a default-deny NetworkPolicy and the allow rules a workload needs, then prove both with a test Pod.
- Compare kubelet and API server flags with a benchmark recommendation and fix what differs.
- Verify a binary against its published checksum before installing it.
- Disable automounting of ServiceAccount tokens where a Pod does not need the API, and scope Roles narrowly.
System hardening
System Hardening is the smallest domain at 10%, but it is where kernel features appear. The curriculum asks you to minimise the host OS footprint, use least-privilege identity and access management, minimise external network access, and appropriately use kernel hardening tools such as AppArmor and seccomp. In practice that means loading an AppArmor profile on a node and referencing it from a Pod, and applying a seccomp profile through the Pod or container securityContext.
- AppArmor: check that the profile is loaded on the node where the Pod runs, then reference it in the securityContext.
- seccomp: the RuntimeDefault profile and a custom profile placed in the kubelet’s seccomp directory.
- Reduce what runs on the node: unneeded services, packages and open ports.
Microservice vulnerabilities and supply chain security
Minimize Microservice Vulnerabilities (20%) covers Pod Security Standards, managing Secrets, isolation such as multi-tenancy and sandboxed containers, and Pod-to-Pod encryption with Cilium or Istio. Supply Chain Security (20%) covers minimal base images, understanding the supply chain (SBOM, CI/CD, artifact repositories), securing it with permitted registries and signed artifacts, and static analysis of workloads and images, with Kubesec and KubeLinter named as examples.
- Enforce a Pod Security Standard on a namespace with Pod Security Admission labels, and fix a Pod that violates it.
- Encrypt Secrets at rest with an EncryptionConfiguration and confirm the stored value is no longer plain.
- Run a workload with a RuntimeClass for a sandboxed runtime when a task asks for isolation.
- Restrict images to a permitted registry with an admission control and generate an SBOM for an image.
Monitoring, logging and runtime security
This domain is 20%. The curriculum asks you to perform behavioural analytics to detect malicious activity, detect threats across infrastructure, applications, networks, data and users, investigate phases of an attack, keep containers immutable at runtime, and use Kubernetes audit logs to monitor access. Falco's documentation is on the allowed list, which tells you behavioural detection is in scope; audit logging is configured on the API server itself.
- Write or adjust a rule for a runtime detection tool and find the event it produces.
- Enable an audit policy on the API server, then read the log to answer who changed what.
- Make a container immutable: a read-only root filesystem, no privilege escalation, no shell where possible.
A six-week CKS plan after CKA
The plan assumes you passed CKA recently and still have the kubectl speed. It spends most time on the three large domains and uses the two included simulator sessions in the last two weeks. Keep a cluster on the exam’s minor version so admission plugins and API fields behave as they will on the day.
| Week | Focus |
|---|---|
| 1 | Cluster Setup: NetworkPolicies, CIS benchmark review, Ingress TLS, binary verification |
| 2 | Cluster Hardening and System Hardening: RBAC, ServiceAccounts, API access, AppArmor, seccomp |
| 3 | Microservice vulnerabilities: Pod Security Admission, Secrets encryption, RuntimeClass, mTLS |
| 4 | Supply chain: minimal images, registries, signing, SBOM, static analysis |
| 5 | Runtime security: behavioural rules, audit logs, immutability; first simulator session |
| 6 | Redo missed tasks timed, second simulator session; sit CKS |
Exam-day habits that matter more on CKS
Security tasks often change components that other things depend on, and a broken API server costs you every remaining task. Before editing a static Pod manifest, copy it. After editing, watch the component come back before moving on. Verify every control by testing it: a NetworkPolicy that you have not probed, or an AppArmor profile you have not seen enforced, is a guess.
- Back up any file under /etc/kubernetes before editing it.
- After a control plane change, wait until kubectl answers again before continuing.
- Test each control with a request that should fail and one that should succeed.
- Return to the base node after each task, as the instructions require.
Editing control-plane files safely
Several CKS domains end with a change to a control-plane component: an API server flag for audit logging or admission, an encryption configuration, a kubelet setting. On a kubeadm cluster the API server runs as a static Pod defined in /etc/kubernetes/manifests, and the kubelet recreates it whenever that file changes. A typo there takes the API server down, and every later task that needs kubectl waits for you to fix it. A fixed routine keeps that risk small.
- Copy the manifest to a backup location outside /etc/kubernetes/manifests before editing; the kubelet tries to run manifest files it finds in that directory.
- Make one change at a time, and add any file the flag refers to, such as an audit policy, plus the matching volume and volumeMount.
- Wait for the API server to return, checking with kubectl get nodes or the container runtime on the node.
- If it does not come back within a minute or two, read its logs under /var/log/pods or with the container runtime, then fix or restore the backup.
- Confirm the change took effect, for example that audit entries are being written, before you move on.
Frequently asked questions
Do I need CKA before CKS?
Yes. The CKS prerequisites field reads: Must have taken and passed the Certified Kubernetes Administrator (CKA) exam. The CKA, CKAD and CKS FAQ repeats that candidates must have taken and passed CKA before attempting CKS.
Which tools are on the CKS exam?
The Linux Foundation does not publish a full tool list. The SSH hosts have kubectl (with the k alias and completion), yq, curl, wget and man pages. The curriculum names AppArmor, seccomp, the CIS benchmark, Kubesec, KubeLinter, Cilium and Istio, and the allowed-documentation list adds Falco, bom, etcd and ingress-nginx. Treat any longer list from third parties as unofficial.
Are Trivy and kube-bench on the CKS exam?
Neither is named on the CKS pages we read: the curriculum, the candidate instructions and the resources-allowed list. The curriculum asks you to use the CIS benchmark to review component configuration and to perform static analysis of workloads and images, and those tools are common ways to do it. Learn the task, and be ready to use whatever tool a task provides with its own help output.
Which Kubernetes version does CKS use?
The instructions say the CKS environment currently runs Kubernetes v1.35, while CKA and CKAD run v1.37; the FAQ says the environments are aligned with the newest minor within approximately 4 to 8 weeks of its release. The published curriculum PDF is labelled v1.34, so the content outline and the environment are one minor apart.
Does passing CKS renew KCSA or CKA?
Both, under the CARE program: the multiple-choice FAQ says passing CKS renews KCSA, and the CKA, CKAD and CKS FAQ says earning or recertifying CKS on or after 18 June 2026 extends your CKA to the new CKS expiry date.
Is CKS harder than CKA?
Most candidates find it harder, because each task combines Kubernetes administration with a security tool or kernel feature, and the pass mark is slightly higher. The official pages do not rank difficulty, so treat that as experience, not fact.
Sources
Every exam fact on this page comes from these pages, read on the date shown.
- Linux Foundation: Certified Kubernetes Security Specialist (CKS) certification page, checked
- CNCF curriculum: CKS Curriculum v1.34 (PDF), checked
- Important instructions: CKS, Linux Foundation certification docs, checked
- FAQ: CKA, CKAD and CKS, Linux Foundation certification docs, checked
- Resources allowed during the exam, Linux Foundation certification docs, checked
- Multiple-choice exam FAQ, Linux Foundation certification docs, checked