Skip to content

rust0258/CKSS-Certified-Kubernetes-Security-Specialist

Repository files navigation

Certified Kubernetes Security Specialist - CKSS

This repository is a collection of resources to prepare for the Certified Kubernetes Security Specialist (CKSS) exam.

The given references and links below are just assumptions and ideas around the CKSS curriculum.

CKS Overview

The Kubernetes Security Specialist (CKS) certification ensure that the holder has the skills, knowledge, and competence on a broad range of best practices for securing container-based applications and Kubernetes platforms during build, deployment and runtime.

The certification is generally available to take from here as anounced during the KubeCon NA20

CKS Outline

The CKS test will be online, proctored and performance-based with 15-20 hands-on performance based tasks, and candidates have 2 hours to complete the exam tasks.

From the CKS Exam Curriculum repository, The exam will test domains and competencies including:

  1. Cluster Setup (15%): Best practice configuration to control the environment's access, rights and platform conformity.
  2. Cluster Hardening (15%): Protecting K8s API and utilize RBAC.
  3. System Hardening (10%): Improve the security of OS & Network; restrict access through IAM
  4. Minimize Microservice Vulnerabilities (20%): Utilizing on K8s various mechanisms to isolate, protect and control workload.
  5. Supply Chain Security (20%): Container oriented security, trusted resources, optimized container images, CVE scanning.
  6. Monitoring, Logging, and Runtime Security (20%): Analyse and detect threads.

CKS Exam Preparation

In order to take the CKS exam, you must have Valid CKA certification prior to attempting the CKS exam to demonstrate you possess sufficient Kubernetes expertise. A first good starting point for securing Kubernetes is the Task section Securing a Cluster of the official K8s documentation. The exam will be based on the version of Kubernetes as specified by the CKS Curriculum doc in the CNCF Curriculum repository

Allowed resources to access during the CKS exam:

According to the LF docs, during the CKS exam the candidates may:

Cluster Setup (15%)

Use Network security policies to restrict cluster level access

Allowed Ressources

3rd Party Ressources

Use CIS benchmark to review the security configuration of Kubernetes components (etcd, kubelet, kubedns, kubeapi)

3rd Party Ressources

Properly set up Ingress objects with TLS

Allowed Ressources

3rd Party Ressources

Protect node metadata and endpoints

Allowed Ressources

3rd Party Ressources

Verify platform binaries before deploying

Allowed Ressources

Cluster Hardening (15%)

Use Role Based Access Controls to minimize exposure

Allowed Ressources

3rd Party Ressources

Exercise caution in using service accounts e.g. disable defaults, minimize permissions on newly created ones

Allowed Ressources

3rd Party Ressources

Restrict access to Kubernetes API

Allowed Ressources

3rd Party Ressources

Upgrade Kubernetes to avoid vulnerabilities

Allowed Ressources

System Hardening (10%)

Minimize host OS footprint (reduce attack surface)

Allowed Ressources

3rd Party Ressources

Using least-privilege identity and access management

3rd Party Ressources

Minimize external access to the network

Allowed Ressources

3rd Party Ressources

Appropriately use kernel hardening tools such as AppArmor, seccomp

Allowed Ressources

3rd Party Ressources

Minimize Microservice Vulnerabilities (20%)

Use appropriate pod security standards

Allowed Ressources

3rd Party Ressources

Manage kubernetes secrets

Allowed Ressources

3rd Party Ressources

Understand and implement isolation techniques (multi-tenancy, sandboxed containers, etc.)

Allowed Ressources

3rd Party Ressources

Implement Pod-to-Pod encryption (Cilium, Istio)

Allowed Ressources

3rd Party Ressources

Supply Chain Security (20%)

Minimize base image footprint

3rd Party Ressources

Secure your supply chain (permitted registries, sign and validate artifacts, etc.)

Allowed Ressources

3rd Party Ressources

Perform static analysis of user workloads and container images (e.g. Kubesec, KubeLinter)

Allowed Ressources

3rd Party Ressources

Understand your supply chain (e.g. SBOM, CI/CD, artifact repositories)

Allowed Ressources

3rd Party Ressources

Monitoring, Logging and Runtime Security (20%)

Perform behavioral analytics to detect malicious activities

Allowed Ressources

3rd Party Ressources

Detect threats within physical infrastructure, apps, networks, data, users and workloads

3rd Party Ressources

Investigate and identify phases of attack and bad actors within the environment

3rd Party Ressources

Ensure immutability of containers at runtime

Allowed Ressources

3rd Party Ressources

Use Kubernetes audit logs to monitor access

Allowed Ressources

3rd Party Ressources

Related Kubernetes security resources

White Papers

Keep Updating

  • LIVING DOCUMENT - I WILL UPDATE IT FREQUENTLY WHEN I HAVE NEW INFORMATIONS
  • PRs are always welcome so star, fork and contribute
    • please make a pull request if you would like to add or update

Ibrahim Jelliti © 2020

Packages

 
 
 

Contributors

Languages