Kyverno · Kyverno · CVE-2026-54523
**Name of the Vulnerable Software and Affected Versions**
Kyverno versions 1.18.0 through 1.18.1
**Description**
In the NamespacedMutatingPolicy CEL compiler, the `generator` library is exposed to `matchConditions`, allowing a namespace-scoped policy to invoke the `generator.apply(namespace, resources)` function with an arbitrary target namespace. The validation process in `pkg/cel/policies/mpol/validate.go` only verifies that the policy compiles without enforcing namespace scope, and the `GenerateResources()` function in `pkg/cel/libs/context.go` fails to reject cross-namespace targets.
A user with permissions to create `NamespacedMutatingPolicy` objects in a specific namespace can exploit this to force the admission controller, which operates with cluster-wide privileges, to create resources such as ConfigMaps, NetworkPolicies, Secrets, and RoleBindings in any other namespace. This can lead to unauthorized modification of protected namespaces (e.g., `kube-system`) and potential privilege escalation to cluster administrator levels.
**Recommendations**
Update Kyverno to version 1.18.2.
As a temporary mitigation, restrict user permissions to prevent non-admin users from creating `NamespacedMutatingPolicy` objects.