Safeguard
Security Guides•

Should Kubernetes admission control block images with critical CVEs?

Blocking at admission stops known-bad images but can also block a hotfix. A decision guide for when to deny, when to warn, and what to exempt.

Safeguard Security Team
3 min read

Block at admission only when the rule is narrow, the data is fresh and an exception path exists. A blanket deny on every critical CVE will eventually stop an urgent fix. Start in warn and audit mode, then enforce for new images with fixable, exploited findings, and keep a time-limited override.

What admission control can and cannot do

The Kubernetes documentation describes an admission controller as code that intercepts requests to the API server after authentication and authorization but before the object is stored. Mutating controllers run first, then validating ones, and any rejection fails the whole request. Admission does not apply to reads.

This has two consequences. It can stop a new pod from being created with a bad image. It does not touch pods already running. Existing workloads need rescans and rebuilds, not admission.

Decision table

SituationSuggested action
New image, critical finding, fix available, known exploitedDeny
New image, critical finding, no fix availableWarn, require owner acknowledgment
Image has no scan result at allDeny in production, warn elsewhere
Image from an unapproved registryDeny
Emergency fix for an outageAllow through a logged, expiring exception
Running pod restarts or reschedulesEvaluate the same rule, but test for surprises first

The last row catches teams out. A pod that was fine when deployed can be rescheduled onto a new node, and the policy then evaluates it again. If your scan data changed since, the pod may be refused during an incident.

Rollout steps

  1. Write the rule and apply it with Audit and Warn actions only. ValidatingAdmissionPolicy, stable since Kubernetes 1.30, lets you set validationActions of Deny, Warn or Audit on the binding.
  2. Watch the audit log for two weeks. Count how many deployments would have been refused.
  3. Fix the common causes or tune the rule.
  4. Enforce in a non-production namespace first.
  5. Enforce in production with a documented exception process and a named approver.

Do not make the gate depend on a live scanner call

If a webhook calls a scanner and the scanner is down, your failure policy decides whether the cluster stops deploying. Prefer checking a stored attestation or a scan result keyed by image digest. See webhook timeouts and failure policy for the tradeoffs.

Try it yourself

Click through it at your own pace, or open it full screen.

See how a gate decides pass or fail from a policy, and try to think of the exception it would need.

Safeguard lets you define policies and gates on scan results, including a free scan at gold.safeguard.sh/scan to see what your images would trigger.

Quick check

Does admission control fix running pods?

No. It evaluates create and update requests. Running pods need a rescan, rebuild and redeploy.

Is warn mode useful?

Yes. It shows developers the message at deploy time and lets you measure impact before you enforce.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.