CVE-2026-100704 Overview
CVE-2026-100704 is an authorization flaw [CWE-863] in Kyverno, the policy engine for Kubernetes. The ImageValidatingPolicy evaluator (policies.kyverno.io/v1beta1) fails to read the spec.images and spec.allowedValues fields of a PolicyException. When a PolicyException matches a resource through its policyRefs and matchConditions, image signature verification is skipped for the entire resource. An exception intended to exempt a single trusted image instead exempts every image on the matched workload. As a result, unsigned or untrusted container images can be admitted to the cluster. The flaw affects Kyverno versions 1.14.0 through 1.19.0 and is fixed in 1.19.1.
Critical Impact
Attackers with permission to deploy workloads matched by an existing PolicyException can bypass image signature verification cluster-wide, allowing unsigned or malicious container images into trusted workloads.
Affected Products
- Kyverno 1.14.0 through 1.19.0
- Kubernetes clusters using ImageValidatingPolicy (policies.kyverno.io/v1beta1)
- Deployments relying on PolicyException resources for image signature exemptions
Discovery Timeline
- 2026-09-26 - CVE-2026-100704 published to NVD
- 2026-09-30 - Last updated in NVD database
Technical Details for CVE-2026-100704
Vulnerability Analysis
Kyverno enforces image signature verification through ImageValidatingPolicy resources that validate container images at admission time. Administrators can author narrow exemptions using PolicyException resources, specifying spec.images and spec.allowedValues to limit which images are exempted from verification.
The ImageValidatingPolicy evaluator never reads these two fields. It evaluates only policyRefs and matchConditions to determine whether an exception applies. Once an exception matches, verification is skipped for every image referenced by the resource, not only the images listed in spec.images.
This behavior diverges from ValidatingPolicy, GeneratingPolicy, and MutatingPolicy, which honor spec.images and spec.allowedValues as partial exemptions. The inconsistency silently converts narrow allowlists into blanket bypasses.
Root Cause
The root cause is missing field evaluation in the ImageValidatingPolicy admission logic. The evaluator does not iterate over the spec.images and spec.allowedValues arrays declared in matched PolicyException objects. Because the fields are present in the Custom Resource Definition schema, administrators can author exceptions that appear precise but behave as full exemptions at runtime.
Attack Vector
An attacker who can create or modify workloads matched by an existing PolicyException can introduce additional container images into the same pod specification. Those images will not be subject to signature verification, even if they were never listed in spec.images. The attacker needs only low privileges on the Kubernetes API within the scope of the exception, no user interaction, and network-based access.
The vulnerability is described in detail in the GitHub Security Advisory GHSA-5cjf-wwfg-pj4c and the VulnCheck Advisory for Kyverno.
Detection Methods for CVE-2026-100704
Indicators of Compromise
- Pods or workloads admitted with container images from registries that are not signed by trusted keys defined in ImageValidatingPolicy.
- PolicyException objects whose policyRefs reference ImageValidatingPolicy resources and whose spec.images or spec.allowedValues lists appear narrower than observed admission behavior.
- Admission audit log entries showing image verification skipped for images not listed in the governing exception.
Detection Strategies
- Enumerate all PolicyException resources in the cluster and correlate each with the ImageValidatingPolicy referenced in policyRefs.
- Compare admitted container images against the spec.images allowlist in each matching exception, flagging any admitted image not explicitly listed.
- Review Kyverno admission reports for ImageValidatingPolicy outcomes marked as skipped due to exception matching.
Monitoring Recommendations
- Alert on creation or modification of PolicyException resources that reference ImageValidatingPolicy policies.
- Monitor Kubernetes audit logs for pod creation events that include images outside approved registries.
- Track Kyverno version across clusters and alert on any deployment running 1.14.0 through 1.19.0.
How to Mitigate CVE-2026-100704
Immediate Actions Required
- Upgrade Kyverno to version 1.19.1 or later across all clusters.
- Audit every existing PolicyException that targets an ImageValidatingPolicy and confirm the exemption scope is intentional.
- Restrict RBAC permissions for creating and modifying PolicyException resources to a small set of trusted administrators.
Patch Information
The issue is fixed in Kyverno 1.19.1. The patched evaluator honors spec.images and spec.allowedValues, aligning ImageValidatingPolicy behavior with ValidatingPolicy, GeneratingPolicy, and MutatingPolicy. Refer to the GitHub Security Advisory GHSA-5cjf-wwfg-pj4c for upgrade guidance.
Workarounds
- Delete or temporarily disable PolicyException resources that reference ImageValidatingPolicy until the upgrade is complete.
- Replace broad exceptions with per-image ImageValidatingPolicy definitions that embed the trusted image list directly in the policy.
- Enforce admission control at the registry level, allowing only images pulled from signed, trusted registries while the Kyverno patch is being rolled out.
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

