More Info:
Do not generally permit containers to be run with the securityContext.privileged flag set to true.Risk Level
CriticalAddress
SecurityCompliance Standards
- APRA CPS 234 (Australia)
- BSI C5 (Germany)
- Brazil LGPD
- CCPA / CPRA (California)
- CIS Critical Security Controls v8
- CIS EKS
- CMMC 2.0
- CSA Cloud Controls Matrix v4
- DPDPA
- Digital Operational Resilience Act (EU)
- Essential 8
- ISO/IEC 27017
- ISO/IEC 27018
- ISO/IEC 27701
- KSA PDPL
- MAS Technology Risk Management (Singapore)
- MITRE ATT&CK (Cloud)
- NIS2 Directive
- NIST SP 800-171
- NYDFS 23 NYCRR 500
- SWIFT Customer Security Controls Framework
- Sarbanes-Oxley IT General Controls
- UK NCSC Cyber Assessment Framework
Triage and Remediation
- Remediation
Remediation
Manual Steps
Manual Steps
-
Identify namespaces that should host only non-privileged workloads (typically all user workload namespaces; exclude system namespaces like
kube-system,kube-public,kube-node-leaseif needed). On any machine with kubectl access: -
For each target namespace, enforce the Restricted Pod Security Admission policy to block privileged containers. Replace
NAMESPACEwith the actual namespace name. On any machine with kubectl access: -
(Optional but recommended) Configure a cluster-wide warning for less strict baseline violations on all namespaces to help discover workloads that would be affected if you tighten policies further. On any machine with kubectl access:
-
Attempt to create a privileged pod in a Restricted namespace to confirm admission is blocked. On any machine with kubectl access, replace
NAMESPACEas appropriate:You should see an admission error indicating the pod is not allowed due to Pod Security restrictions. -
Clean up the test pod (if it was created) from the test namespace. On any machine with kubectl access:
-
Verification (cluster-wide): confirm no currently running containers are privileged. On any machine with kubectl access:
The output should be:
Using kubectl
Using kubectl
On any machine with kubectl access:
-
Identify namespaces with user workloads (example:
team-a,team-b,prod-apps). Adjust the list below to your cluster. -
Enforce
restrictedPod Security Admission (PSA) on those namespaces (blocks privileged pods):
- (Optional) Set a cluster‑wide warning level so you see PSA warnings everywhere without blocking:
- Verify labels are in place:
- Verify no privileged containers remain (same as audit):
Automation
Automation

