KCSA β Kubernetes & Cloud Native Security Associate
β Where to Start
If you only read one section first, read this. Here's the exact order to move through this guide and the wider material so a week is enough.
Step 0 β Right now (15 min)
- Skim Exam Facts and memorize the six domain weights β they tell you where to spend time.
- Read the Kubernetes Core Refresher. Nothing about security makes sense until the architecture is second nature. If control plane vs. node components feel fuzzy, pause and solidify this first β it's the foundation everything else builds on.
Step 1 β Start with the highest-value domains
Don't study in numerical order. Study in weight order, because Domains 2 + 3 alone are 44% of the exam:
- Domain 3 β Security Fundamentals (22%) β best place to begin. RBAC, Pod Security, secrets, and NetworkPolicy are the core concepts every other domain references. Learn these and the rest gets easier.
- Domain 2 β Cluster Component Security (22%) β now that you know the pipeline (AuthNβAuthZβAdmissionβetcd), securing each component clicks into place.
- Domain 4 β Threat Model (16%) & Domain 5 β Platform Security (16%) β these reuse D2/D3 concepts as attacks & defenses.
- Domain 1 β Cloud Native Overview (14%) β mostly conceptual (the 4Cs, isolation); quick to absorb once the rest is understood.
- Domain 6 β Compliance & Frameworks (10%) β mostly memorization of names/tools; save it for last.
Step 2 β Reinforce as you go
- After each domain, use the Flashcards for that area to lock in recall.
- Keep the Tools Cheat Sheet open β knowing what each tool does is heavily tested in D5/D6.
Step 3 β Test yourself
- Once you've covered all domains, work through the 80 Practice Questions. Target β₯80% before booking.
- Anything you miss β jump back to that domain, then re-read the Quick-Reference cram.
Step 4 β Confirm the source of truth
- Download the official KCSA Curriculum.pdf from the CNCF curriculum repo and skim it β it's the authoritative sub-topic list.
- For any topic that still feels shaky, read the matching page in the Resource Links (all official kubernetes.io / CNCF docs).
π Exam Facts & Logistics
| Attribute | Detail |
|---|---|
| Format | Online, remotely proctored, multiple-choice (not hands-on β unlike CKA/CKS) |
| Duration | 90 minutes |
| Passing score | 75% (per LF multiple-choice exam policy) |
| Question count | 60 multiple-choice questions (CNCF does not print this on the exam page, but it is widely and consistently reported) |
| Level | Beginner / Associate β conceptual knowledge, no live cluster |
| Price | $250 standalone (or $495 bundled with a THRIVE annual subscription); includes one free retake |
| Eligibility window | 12 months to schedule after purchase |
| Validity | 2 years |
| Prerequisites | None (KCNA knowledge strongly recommended) |
| Proctoring | Online, proctored via PSI "Bridge" platform with the PSI Secure Browser; government photo ID, clean workspace, webcam + mic required |
Domain Weights (memorize these)
ποΈ 7-Day Study Plan
| Day | Focus | Deliverable |
|---|---|---|
| 1 | Kubernetes core refresher + Domain 1 (Cloud Native Overview, 4Cs) | Understand architecture & the 4C model |
| 2 | Domain 2 β Cluster Component Security (control plane, kubelet, etcd) | Can name every component & its threat |
| 3 | Domain 3 β Security Fundamentals (RBAC, Pod Security, secrets) | Draw the AuthNβAuthZβAdmission flow |
| 4 | Domain 4 β Threat Model + Domain 5 β Platform Security | Map STRIDE + supply chain concepts |
| 5 | Domain 6 β Compliance/Frameworks + Tools cheat sheet | Know each tool's purpose |
| 6 | Practice questions (all 80) + review weak areas | Score β₯80% on practice |
| 7 | Quick-reference review, re-read callouts, light revision | Take exam confident |
βοΈ Kubernetes Core Refresher
You must be fluent in the architecture before security makes sense. A Kubernetes cluster = Control Plane + Worker Nodes.
Control Plane components
kube-apiserverβ front door; the only component that talks to etcd. All requests flow through it.etcdβ key-value store; holds all cluster state & secrets.kube-schedulerβ assigns Pods to nodes.kube-controller-managerβ runs control loops (node, replication, endpointsβ¦).cloud-controller-managerβ integrates with cloud provider APIs.
Node components
kubeletβ agent on each node; starts/stops containers, reports status.kube-proxyβ maintains network rules (iptables/IPVS) for Services.- Container runtime β containerd / CRI-O; runs containers via CRI.
Add-ons
- CoreDNS, CNI plugin, metrics-server, ingress controller.
Domain 1 β Overview of Cloud Native Security (14%)
The 4Cs of Cloud Native Security
Defense-in-depth layered model. Each outer layer's security depends on the layers inside it; you cannot secure inner layers by only securing outer ones.
| Layer | Scope | Example controls |
|---|---|---|
| Cloud (outermost) | The physical infra / cloud provider / datacenter / network | Provider IAM, network security, physical security, encryption at rest |
| Cluster | Kubernetes cluster components | RBAC, network policies, authentication, component TLS, etcd encryption |
| Container | Container images & runtime | Image scanning, signed images, least-privilege, no root, trusted registries |
| Code (innermost) | Your application code | TLS in app, secure coding, dependency scanning, static analysis (SAST/DAST) |
Cloud Provider & Infrastructure Security
- Shared Responsibility Model β the provider secures the cloud infrastructure; you secure what you run in it (workloads, config, IAM, data).
- Use provider IAM with least privilege; avoid long-lived static credentials β prefer workload identity / IRSA / instance roles.
- Restrict access to node metadata endpoints (e.g.,
169.254.169.254) β a classic SSRF/credential-theft target. - Encrypt data at rest and in transit; isolate the cluster network (private nodes, restricted control-plane endpoint).
Controls & Frameworks
Security controls are grouped as preventive, detective, and corrective/responsive. Kubernetes-relevant frameworks:
- CIS Kubernetes Benchmark β hardening checklist for cluster components (checked by kube-bench).
- NIST SP 800-190 (container security) & the Cybersecurity Framework (Identify, Protect, Detect, Respond, Recover).
- MITRE ATT&CK for Containers β adversary tactics/techniques mapped to containers/K8s.
Isolation Techniques
| Technique | What it isolates |
|---|---|
| Namespaces (K8s) | Logical grouping of resources; scope for RBAC, quotas, network policy β not a hard security boundary by itself |
| Linux namespaces (kernel) | PID, net, mount, IPC, UTS, user β the basis of container isolation |
| cgroups | Limit/meter CPU, memory, I/O per container |
| Network policies | Restrict pod-to-pod / pod-to-external traffic (needs a supporting CNI) |
| RBAC | Restrict who can do what on which API resources |
| Sandboxing | Stronger runtime isolation: gVisor (user-space kernel), Kata Containers (lightweight VMs), Firecracker microVMs |
| Node isolation | Dedicate nodes to workloads via taints/tolerations, node selectors |
Artifact Repository & Image Security
- Pull only from trusted registries; use private registries with authentication.
- Scan images for vulnerabilities (Trivy, Clair, Grype) β pre-deploy and continuously.
- Sign & verify images (Sigstore/cosign, Notary/TUF) to guarantee provenance and integrity.
- Use minimal base images (distroless, Alpine) β smaller attack surface.
- Pin images by digest (
@sha256:β¦), not just mutable:latesttags. - Enforce at admission (only allow signed/scanned images) via admission controllers / OPA / Kyverno.
Workload & Application Code Security
- SAST (static analysis of source), DAST (dynamic testing of running app), SCA (dependency/CVE scanning).
- Never hard-code secrets in code or images; encrypt communications (TLS/mTLS).
- Follow least privilege in the app; validate all input; manage dependencies.
Domain 2 β Kubernetes Cluster Component Security (22%)
The biggest domain (tied with D3). Know each component, the threat it faces, and how to harden it.
API Server
- The central management point; every request is Authenticated β Authorized β passed through Admission Controllers β validated/persisted.
- Harden: enable TLS everywhere; disable anonymous auth (
--anonymous-auth=false); use strong AuthN (certs/OIDC); enable RBAC (--authorization-mode=Node,RBAC); enable audit logging; restrict who can reach it (network/firewall). - Never expose the API server publicly without restriction; avoid the insecure port (removed in modern versions).
Controller Manager & Scheduler
- kube-controller-manager runs reconciliation loops; secure with
--use-service-account-credentials=true, bind to localhost, TLS. - kube-scheduler places Pods; secure its endpoint (bind to localhost, disable profiling in prod). Neither should be exposed externally.
- Both authenticate to the API server with their own certificates/kubeconfig.
Kubelet
- Node agent β powerful: it can run containers and expose pod data. A high-value attack target.
- Harden:
--anonymous-auth=false; require authN (--authorization-mode=Webhook, notAlwaysAllow); rotate certificates (--rotate-certificates); protect the read-only port (10255, should be disabled) and the authenticated port (10250). - Use NodeRestriction admission plugin so a kubelet can only modify its own node/pods.
Container Runtime & kube-proxy
- Runtime (containerd/CRI-O via CRI) β keep patched; use seccomp, AppArmor/SELinux, read-only rootfs, drop capabilities. Consider gVisor/Kata for stronger isolation.
- kube-proxy β programs iptables/IPVS for Services. Secure its config; it should not run with more privilege than needed.
Pod Security
- Use
securityContext:runAsNonRoot: true,readOnlyRootFilesystem: true,allowPrivilegeEscalation: false, drop all capabilities then add only what's needed. runAsUser: 0means the container runs as root (UID 0) β avoid it; set a non-zero UID orrunAsNonRoot: true.- Avoid
privileged: true,hostNetwork,hostPID,hostIPC, andhostPathmounts β these break isolation. - Apply seccomp profiles (
RuntimeDefault) and AppArmor.
etcd
- Enable TLS for client-to-server and peer-to-peer communication.
- Enable encryption at rest for secrets (EncryptionConfiguration; ideally with a KMS provider).
- Restrict access: only the API server should talk to etcd; firewall its ports (2379/2380).
- Back up etcd regularly and secure the backups.
Container Networking, Client Security & Storage
- Networking (CNI) β the CNI plugin implements pod networking; NetworkPolicy enforcement requires a policy-capable CNI (Calico, Cilium). Encrypt pod traffic where needed (WireGuard/IPsec/mTLS).
- Client security β protect
kubeconfigfiles and client certs; use short-lived credentials/OIDC; never share admin kubeconfig. - Storage β encrypt volumes at rest; control access with StorageClasses; be wary of
hostPath(host filesystem access = escape risk).
Domain 3 β Kubernetes Security Fundamentals (22%)
Pod Security Standards (PSS) & Pod Security Admission (PSA)
PSS replaced the deprecated PodSecurityPolicy (PSP) (removed in v1.25). Three cumulative profiles:
| Profile | Meaning |
|---|---|
| Privileged | Unrestricted β wide open; for trusted/system workloads |
| Baseline | Minimally restrictive; blocks known privilege escalations (no hostNetwork, no privileged, etc.) |
| Restricted | Heavily restricted, hardening best-practice: runAsNonRoot, drop ALL caps, seccomp RuntimeDefault, no privilege escalation |
Pod Security Admission is the built-in admission controller (v1.25+) that enforces PSS at the namespace level via labels, in three modes:
enforceβ reject violating pods.auditβ allow but log violations to the audit log.warnβ allow but return a user-facing warning.
apiVersion: v1
kind: Namespace
metadata:
name: my-app
labels:
pod-security.kubernetes.io/enforce: restricted
pod-security.kubernetes.io/warn: restricted
pod-security.kubernetes.io/audit: restricted
Authentication (AuthN)
"Who are you?" Kubernetes has no user objects β users are external. Methods:
- X.509 client certificates β CN (Common Name) = username, O (Organization) = group. A cert with
O=system:mastersgrants full cluster-admin access β this group is hard-wired to the built-incluster-adminsuperuser, so protecting the cluster CA is critical. - Bearer tokens β ServiceAccount tokens (JWTs, for in-cluster workloads), static tokens (discouraged).
- OIDC β integrate with external identity providers (Okta, Azure AD, Google).
- Authentication webhooks / proxies.
ServiceAccounts = identity for Pods/processes. Every namespace has a default SA; disable auto-mount when not needed (automountServiceAccountToken: false). Modern tokens are short-lived & audience-bound (projected tokens).
Authorization (AuthZ)
"What are you allowed to do?" Modes: RBAC (default/most common), ABAC, Node, Webhook. Checked after AuthN.
RBAC objects
| Object | Scope | Purpose |
|---|---|---|
Role | Namespace | Set of permissions (verbs on resources) within one namespace |
ClusterRole | Cluster-wide | Permissions across all namespaces or cluster-scoped resources |
RoleBinding | Namespace | Grants a Role (or ClusterRole) to subjects in a namespace |
ClusterRoleBinding | Cluster-wide | Grants a ClusterRole to subjects across the whole cluster |
Subjects = Users, Groups, ServiceAccounts. Verbs = get, list, watch, create, update, patch, delete. RBAC is additive/allow-only β there are no deny rules; a request is denied unless explicitly allowed.
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata: { namespace: dev, name: pod-reader }
rules:
- apiGroups: [""]
resources: ["pods"]
verbs: ["get", "list", "watch"]
cluster-admin bindings and wildcard (*) verbs/resources. Never bind broad roles to the system:authenticated or default ServiceAccount. Auditing over-permissive RBAC is a favorite exam theme.The full request pipeline
Request β [Authentication] β [Authorization (RBAC)] β [Admission Controllers
(Mutating β Validating)] β [Object persisted to etcd]
Secrets
- Secrets store sensitive data; by default only base64-encoded in etcd β encoding β encryption.
- Enable encryption at rest (EncryptionConfiguration, ideally KMS-backed).
- Limit access via RBAC (few subjects should
get/listsecrets). - Prefer mounting as files over env vars (env vars leak into logs/child processes).
- Consider external secret managers (Vault, AWS Secrets Manager, External Secrets Operator).
Isolation & Segmentation
Combine namespaces + RBAC + NetworkPolicy + ResourceQuota/LimitRange + node isolation (taints/tolerations) + runtime sandboxing for multi-tenancy.
Audit Logging
- API server audit logs record who did what, when, and the result β essential for detection & forensics.
- Configured via an audit policy with levels:
None,Metadata,Request,RequestResponse. - Stages: RequestReceived, ResponseStarted, ResponseComplete, Panic.
Network Policy
- Namespaced resource controlling ingress and egress at L3/L4 (IP/port), by pod/namespace selectors.
- Default: all traffic is allowed. Once any NetworkPolicy selects a pod, that pod becomes default-deny for the direction(s) specified β only explicitly allowed traffic passes.
- Requires a CNI that enforces policy (Calico, Cilium, Weave). Best practice: apply a default-deny-all policy, then allow needed flows.
# Default deny all ingress in a namespace
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata: { name: default-deny-ingress, namespace: prod }
spec:
podSelector: {} # selects all pods
policyTypes: ["Ingress"] # no ingress rules = deny all ingress
podSelector: {} selects all pods, and a policy with no rules for a direction denies that direction.Domain 4 β Kubernetes Threat Model (16%)
Based on the CNCF/K8s threat model and STRIDE thinking. Know the trust boundaries and each attack category.
Trust Boundaries & Data Flow
Key boundaries: internet β API server; API server β etcd; control plane β nodes; node β pod; container β host; pod β pod. Data crossing a boundary is where controls (authN, TLS, RBAC, policy) must sit.
STRIDE mapped to Kubernetes
| STRIDE | Threat | K8s example / mitigation |
|---|---|---|
| Spoofing | Impersonating identity | Weak/anonymous auth β enforce strong AuthN, mTLS, disable anonymous |
| Tampering | Modifying data/config | Unsigned images, mutable configs β image signing, RBAC, admission control |
| Repudiation | Denying an action | No logs β enable audit logging |
| Info disclosure | Leaking sensitive data | Unencrypted etcd/secrets β encrypt at rest, RBAC on secrets |
| Denial of Service | Exhausting resources | No limits β ResourceQuota, LimitRange, rate limiting |
| Elevation of privilege | Gaining more rights | privileged pods, over-broad RBAC β Pod Security, least-privilege RBAC |
The main threat categories (from the K8s threat model)
- Persistence β attacker maintains foothold: backdoor DaemonSets, cronjobs, malicious admission webhooks, added credentials. Mitigate with monitoring, immutable infra, admission control.
- Denial of Service β resource exhaustion of nodes/control plane/etcd. Mitigate with quotas, limits, API priority & fairness.
- Malicious code execution & compromised containers β RCE, cryptomining, container escape. Mitigate with image scanning, runtime security (Falco), seccomp/AppArmor, non-root, read-only FS.
- Attacker on the network β lateral movement, sniffing, MITM. Mitigate with NetworkPolicy (default-deny), mTLS/service mesh, encryption.
- Access to sensitive data β stealing secrets/etcd/tokens. Mitigate with encryption at rest, RBAC, disabling SA token auto-mount, secret managers.
- Privilege escalation β podβnodeβcluster. Mitigate with Pod Security Standards, drop capabilities, no privileged containers, NodeRestriction.
Domain 5 β Platform Security (16%)
Supply Chain Security
Securing everything from source code β build β artifact β deploy.
- SLSA (Supply-chain Levels for Software Artifacts) β framework of increasing integrity guarantees for the build pipeline.
- SBOM (Software Bill of Materials) β inventory of components/dependencies (SPDX, CycloneDX). Enables CVE tracking.
- Provenance & signing β Sigstore/cosign sign artifacts; in-toto attestations record how they were built.
- Verify at admission β only deploy signed, attested, scanned images.
Image Repository
Use trusted, access-controlled registries; scan on push; sign images; enforce immutability; apply retention/quarantine policies for vulnerable images.
Observability
- Logs (audit + app), metrics, traces β the three pillars. Common CNCF stack: Prometheus (metrics), Loki (logs), Jaeger (traces); Grafana visualizes.
- Runtime security monitoring β Falco (detects anomalous syscalls/behavior via eBPF/kernel), Tetragon.
- Centralize and alert; monitoring is a detective control.
Service Mesh
- Adds a sidecar proxy (Envoy) layer for mTLS, traffic management, and fine-grained authZ between services β zero-trust networking.
- Examples: Istio, Linkerd. Provides encryption in transit, identity-based policy, and observability without changing app code.
PKI & Certificates
- Kubernetes runs its own PKI/CA: components authenticate with X.509 certs signed by the cluster CA.
- etcd, kubelet, API server, controller-manager, scheduler all use TLS certs.
- Rotate certs regularly; protect the CA key; the CertificateSigningRequest (CSR) API issues certs. cert-manager automates certificate lifecycle.
Connectivity
Encrypt all traffic (TLS/mTLS), use NetworkPolicy for segmentation, secure ingress (WAF, TLS termination), and control egress to prevent data exfiltration.
Admission Control
- Admission controllers intercept requests after authN/authZ, before persistence. Two types: Mutating (modify) then Validating (accept/reject).
- Built-in examples:
NodeRestriction,PodSecurity,ResourceQuota,AlwaysPullImages,LimitRanger. - Extensible via webhooks: policy engines OPA/Gatekeeper and Kyverno enforce custom policies (e.g., "no :latest tag", "must have resource limits", "only signed images").
Domain 6 β Compliance & Security Frameworks (10%)
Compliance Frameworks
| Framework | Purpose |
|---|---|
| CIS Kubernetes Benchmark | Consensus hardening config checklist; validated by kube-bench |
| NIST SP 800-190 | Application container security guide |
| NIST CSF | Identify Β· Protect Β· Detect Β· Respond Β· Recover |
| PCI-DSS / HIPAA / SOC 2 / GDPR / FedRAMP / ISO 27001 | Regulatory/industry compliance regimes your workloads may need to meet |
Threat-Modelling Frameworks
- STRIDE β Spoofing, Tampering, Repudiation, Info disclosure, DoS, Elevation of privilege (Microsoft; per-threat-type).
- MITRE ATT&CK for Containers β real-world adversary tactics & techniques.
- OWASP Kubernetes Top Ten β the ten most common/impactful Kubernetes security risks (e.g. insecure workload configs, supply-chain vulns, over-permissive RBAC, missing network segmentation); a handy prioritization checklist.
- OCTAVE β risk-based, organization-focused threat assessment methodology.
- PASTA, DREAD, Attack Trees β other modelling approaches (recognize the names).
Supply-Chain Compliance
SLSA levels, SBOM generation/verification, provenance attestations, and signing (Sigstore) demonstrate a trustworthy software supply chain β increasingly required for compliance.
Automation & Tooling
Compliance is enforced continuously, not manually:
- kube-bench β CIS Benchmark checks.
- kube-hunter β penetration-testing / attack-surface discovery.
- Trivy / Grype / Clair β image & config vulnerability scanning.
- OPA/Gatekeeper, Kyverno β policy-as-code enforcement.
- Falco β runtime threat detection.
- Checkov / kubescape / kubeaudit β IaC & manifest security scanning.
π§° Security Tools Cheat Sheet
| Tool | Category | What it does |
|---|---|---|
| Trivy | Scanning | All-in-one vuln/misconfig/secret/SBOM scanner (images, IaC, filesystems) |
| Clair / Grype | Scanning | Container image vulnerability scanners |
| SonarQube | Code (SAST) | Static source-code analysis for quality & security defects |
| kube-bench | Compliance | Checks cluster against the CIS Kubernetes Benchmark |
| kube-hunter | Pen-test | Hunts for security weaknesses / attack surface in clusters |
| kubescape / kubeaudit | Posture | Scans manifests/clusters against frameworks (NSA, MITRE, CIS) |
| Falco | Runtime detection | Detects abnormal runtime behavior via syscalls/eBPF (CNCF) |
| Tetragon | Runtime detection | eBPF-based runtime security observability & enforcement |
| OPA / Gatekeeper | Policy | Policy-as-code (Rego) enforced via validating admission webhook |
| Kyverno | Policy | Kubernetes-native policy engine (YAML policies; validate/mutate/generate) |
| cosign / Sigstore | Supply chain | Sign & verify container images and artifacts |
| Notary / TUF | Supply chain | Content trust / signing framework |
| cert-manager | PKI | Automates issuing/renewing TLS certificates in K8s |
| Vault / External Secrets Operator | Secrets | External secret storage & injection |
| Calico / Cilium | Networking | CNIs that enforce NetworkPolicy (Cilium is eBPF-based) |
| gVisor / Kata / Firecracker | Sandboxing | Stronger workload isolation (user-space kernel / microVMs) |
| Istio / Linkerd | Service mesh | mTLS, traffic policy, observability between services |
π Flashcards
--authorization-mode=Node,RBAC).podSelector: {} mean?automountServiceAccountToken: false on the SA or Pod spec.O=system:masters grant?runAsUser: 0 mean?runAsNonRoot: true.π 80 Practice Questions
Domain 1 β Cloud Native Security Overview
1. What are the 4Cs of Cloud Native Security, from outermost to innermost?
2. In the shared responsibility model, who secures the underlying cloud infrastructure?
3. Is a Kubernetes namespace a strong security boundary?
4. Which technology provides stronger isolation than standard containers by running a user-space kernel?
5. Why pin container images by digest (@sha256:...) instead of a tag like :latest?
:latest can point to a different (possibly malicious) image over time. A digest is immutable and guarantees you run the exact image you vetted.6. What does image signing (e.g., cosign) provide?
7. Which Linux kernel features underpin container isolation?
8. What is the difference between SAST and DAST?
9. Which cloud metadata endpoint is a common credential-theft target and should be restricted?
10. What benefit do distroless/minimal base images provide?
Domain 2 β Cluster Component Security
11. Which component is the only one that communicates directly with etcd?
12. Where are Kubernetes Secrets stored, and are they encrypted by default?
13. What flag disables anonymous authentication on the API server?
--anonymous-auth=false. Anonymous access should be disabled to prevent unauthenticated requests.14. Which admission plugin restricts a kubelet to only modifying its own node and pods?
15. Which kubelet port is the read-only port that should be disabled?
16. Why is the kubelet a high-value attack target?
17. What ports does etcd use, and who should reach it?
18. What does kube-proxy do?
19. Which authorization mode should the kubelet use instead of AlwaysAllow?
--authorization-mode=Webhook), so the API server authorizes kubelet requests. AlwaysAllow is insecure.20. What is the recommended authorization mode combination for the API server?
--authorization-mode=Node,RBAC).21. Why is hostPath volume mounting a security risk?
22. Which container runtimes implement the CRI?
23. How should the controller-manager and scheduler be exposed?
24. What securityContext settings harden a pod against escape?
runAsNonRoot: true, readOnlyRootFilesystem: true, allowPrivilegeEscalation: false, drop ALL capabilities, and a seccomp RuntimeDefault profile.25. What is required for NetworkPolicy to actually be enforced?
Domain 3 β Security Fundamentals
26. What replaced PodSecurityPolicy (PSP), and in which version was PSP removed?
27. Name the three Pod Security Standard profiles.
28. Name the three Pod Security Admission modes.
29. Does RBAC support deny rules?
30. What is the difference between a Role and a ClusterRole?
31. What are the valid RBAC subjects?
32. What happens if you bind a ClusterRole with a RoleBinding?
33. Correct order of the API request pipeline?
34. Does Kubernetes have built-in User objects?
35. What is a ServiceAccount used for?
default SA.36. How do you stop a pod from automatically mounting its ServiceAccount token?
automountServiceAccountToken: false on the ServiceAccount or Pod spec.37. Is base64 encoding of a Secret the same as encryption?
38. Why prefer mounting secrets as files over environment variables?
39. What is the default network behavior between pods in Kubernetes?
40. What does an empty podSelector ({}) in a NetworkPolicy mean?
policyTypes: [Ingress], it becomes default-deny-ingress.41. What audit policy levels exist, from least to most detail?
42. Which authorization modes does Kubernetes support?
43. What tool would you use for policies more complex than PSS can express?
44. Which RBAC binding should almost never be granted broadly?
system:authenticated or default ServiceAccounts.Domain 4 β Threat Model
45. What does STRIDE stand for?
46. Which STRIDE category maps to enabling audit logging?
47. Which threat category covers backdoor DaemonSets and malicious admission webhooks?
48. Give an example of a Denial of Service mitigation in Kubernetes.
49. Describe a typical container-escape-to-cluster attack chain.
50. What mitigates "attacker on the network" / lateral movement?
51. What is a trust boundary? Give a Kubernetes example.
52. Which tool detects malicious runtime behavior via syscalls?
53. What mitigates privilege escalation from a pod?
54. Cryptomining inside a compromised container falls under which threat category?
Domain 5 β Platform Security
55. What is SLSA?
56. What is an SBOM and why does it matter?
57. What are the two types of admission webhooks and which runs first?
58. What does a service mesh provide for security?
59. Name three built-in admission controllers relevant to security.
60. What are the three pillars of observability?
61. What manages Kubernetes component authentication certificates?
62. What does the AlwaysPullImages admission controller do?
63. What is Kyverno?
64. How does a mutating webhook differ in effect from a validating one?
65. What is cosign used for?
Domain 6 β Compliance & Frameworks
66. Which tool checks a cluster against the CIS Kubernetes Benchmark?
67. What is kube-hunter used for?
68. What are the five functions of the NIST Cybersecurity Framework?
69. Which NIST publication specifically covers container security?
70. What is MITRE ATT&CK for Containers?
71. Name three regulatory/industry compliance regimes.
72. What does policy-as-code enable for compliance?
73. Which tool provides all-in-one scanning for vulns, misconfig, secrets, and SBOM?
Mixed / Scenario
74. A pod needs to read secrets from the API. What's the least-privilege approach?
get on the specific secret(s), and a RoleBinding β not cluster-admin or wildcard permissions.75. You discover the kubelet allows anonymous authenticated requests. What's the fix?
--anonymous-auth=false and use --authorization-mode=Webhook on the kubelet.76. How do you make a namespace enforce the Restricted Pod Security Standard?
pod-security.kubernetes.io/enforce: restricted (and optionally warn/audit labels).77. Traffic between two microservices must be encrypted without changing app code. What do you use?
78. An image with :latest tag was replaced by a malicious version. Which two controls would have prevented this?
79. You must prevent any pod without resource limits from being created. What mechanism?
80. An attacker with etcd access β what's the impact?
π¦ Mock Question Bank β 206 Questions (Interactive Quiz)
β‘ Final Quick-Reference (last-minute cram)
- 4Cs: Cloud β Cluster β Container β Code.
- API server = only thing that talks to etcd; pipeline = AuthN β AuthZ β Admission β etcd.
- etcd = all state + all secrets (base64, not encrypted by default). TLS + encryption at rest + isolate.
- Secrets: base64 β encryption. Encrypt at rest, RBAC-limit, prefer file mounts.
- RBAC: allow-only, no deny. Role/RoleBinding (namespaced) vs ClusterRole/ClusterRoleBinding (cluster). Subjects = User/Group/ServiceAccount.
- Certs: X.509 CN=user, O=group.
O=system:masters= cluster-admin.runAsUser: 0= root. - PSS profiles: Privileged / Baseline / Restricted. PSA modes: enforce / audit / warn. PSP removed in 1.25.
- NetworkPolicy: default allow-all; selecting a pod β default-deny for that direction; needs Calico/Cilium.
- Admission: Mutating (first, modifies) β Validating (approve/deny). Engines: OPA/Gatekeeper, Kyverno.
- kubelet: disable anonymous, use Webhook authZ, rotate certs, NodeRestriction, kill port 10255.
- STRIDE: Spoofing, Tampering, Repudiation, Info disclosure, DoS, Elevation of privilege.
- Threats: Persistence Β· DoS Β· Malicious code/compromised container Β· Attacker on network Β· Sensitive data access Β· Privilege escalation.
- Supply chain: SLSA (levels), SBOM (inventory), Sigstore/cosign (signing), scan images (Trivy).
- Tools: kube-bench (CIS), kube-hunter (pentest), Falco (runtime), Trivy (scan), OPA/Kyverno (policy).
- Isolation: namespaces (scoping, not a boundary) Β· RBAC Β· NetworkPolicy Β· sandboxing (gVisor/Kata).
- Frameworks: CIS Benchmark, NIST 800-190 & CSF (Identify/Protect/Detect/Respond/Recover), MITRE ATT&CK.
π Authoritative Resource Links
KCSA Study Guide Β· Single-file HTML Β· Good luck on your exam! π
Save this file anywhere and open in any browser β works fully offline.