Home

Awesome

CKS Exam Preparation

Intro

In order to take the CKS exam, you must have Valid CKA certification to demonstrate you possess sufficient Kubernetes expertise. If you do not have passed CKA exam, here you find my learn path for that: CKALearn As firt to understand are you for that exam or not plese try to do that tas: Securing a Cluster of the official K8s documentation.

Usefull courses

General security-related docs

Cirriclium Topics

Cluster Setup – 10%

Use Network security policies to restrict cluster level access

<details> <summary>3rd Party:</summary> </details>

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

<details> <summary>3rd Party:</summary> </details>

Properly set up Ingress objects with security control

Protect node metadata and endpoints

<details>   <summary>3rd Party:</summary> </details>

Minimize use of, and access to, GUI elements

<details>   <summary>3rd Party:</summary> </details>

Verify platform binaries before deploying

<details>   <summary>3rd Party:</summary> </details>

Cluster Hardening – 15%

Main doc (and beyond): https://kubernetes.io/docs/reference/access-authn-authz/

<details>   <summary>3rd Party:</summary> </details>

Restrict access to Kubernetes API

<details>   <summary>3rd Party:</summary> </details>

Use Role Based Access Controls to minimize exposure

<details>   <summary>3rd Party:</summary> </details>

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

<details>   <summary>3rd Party:</summary> </details>

Update Kubernetes frequently

System Hardening – 15%

Minimize host OS footprint (reduce attack surface)

<details>   <summary>3rd Party:</summary> </details>

Minimize IAM roles

<details>   <summary>3rd Party:</summary> </details>

Minimize external access to the network

<details>   <summary>3rd Party:</summary> </details>

Appropriately use kernel hardening tools such as AppArmor, seccomp

Minimize Microservice Vulnerabilities – 20%

Setup appropriate OS level security domains e.g. using PSP, OPA, security contexts

<details>   <summary>3rd Party:</summary> </details>

Manage Kubernetes secrets

<details>   <summary>3rd Party:</summary> </details>

Use container runtime sandboxes in multi-tenant environments (e.g. gvisor, kata containers)

<details>   <summary>3rd Party:</summary> </details>

Implement pod to pod encryption by use of mTLS

<details>   <summary>3rd Party:</summary> </details>

Supply Chain Security – 20%

Minimize base image footprint

<details>   <summary>3rd Party:</summary> </details>

Secure your supply chain: whitelist allowed registries, sign and validate images

<details>   <summary>3rd Party:</summary> </details>

Use static analysis of user workloads (e.g.Kubernetes resources, Docker files)

<details>   <summary>3rd Party:</summary> </details>

Scan images for known vulnerabilities

<details>   <summary>3rd Party:</summary> </details>

Monitoring, Logging and Runtime Security – 20%

Perform behavioral analytics of syscall process and file activities at the host and container level to detect malicious activities

<details>   <summary>3rd Party:</summary> </details>

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

<details>   <summary>3rd Party:</summary> </details>

Detect all phases of attack regardless where it occurs and how it spreads

<details>   <summary>3rd Party:</summary> </details>

Perform deep analytical investigation and identification of bad actors within environment

<details>   <summary>3rd Party:</summary> </details>

Ensure immutability of containers at runtime

<details>   <summary>3rd Party:</summary> </details>

Use Audit Logs to monitor access

<details>   <summary>3rd Party:</summary> </details>

Uncategorized and questions

Related links