Act nowDisclosed

Advisory · CVE-2026-122313

Kyverno NamespacedMutatingPolicy can mutate another tenant's RoleBindings

Kyverno 1.17.0 before 1.19.2 lets namespace-scoped tenants modify resources in other namespaces through NamespacedMutatingPolicy targetMatchConstraints.expression output that lacks namespace checks. Kyverno rates it CVSS 3.1 9.9.

Vendor
Kyverno
Product
Kyverno
Identifier / CWE
CVE-2026-122313
CWE-269
Action timing
Immediate
ELI5

Explain it like I’m five

A tenant's policy picks a target to change, and Kyverno never asks whether the target is actually theirs. It can point at another tenant's RoleBinding and rewrite it.

SIMPLIFIED_ATTACK_PATH04 STEPS
  1. 01Mutating policy created

    A namespace tenant creates a NamespacedMutatingPolicy with a CEL target expression.

  2. 02CEL emits a foreign target

    The expression outputs a literal target such as another tenant's RoleBinding.

  3. 03No namespace check

    The background controller applies the mutation without checking the target's namespace.

  4. 04Other tenant rewritten

    Roles, NetworkPolicies, and ConfigMaps in the victim namespace are altered, adding attacker subjects or changing rules.

What happened

Kyverno disclosed CVE-2026-122313 for Kyverno 1.17.0 before 1.19.2. A NamespacedMutatingPolicy targetMatchConstraints.expression CEL output is used without namespace checks, so namespace-scoped tenants can modify resources in other namespaces. An attacker can emit a literal target such as another tenant’s RoleBinding, which the cluster-wide background controller then mutates to add attacker subjects or alter Roles, NetworkPolicies, and ConfigMaps.

The advisory rates it critical at CVSS 3.1 9.9 and identifies Kyverno 1.19.2 as the fixed release.

What to do

  1. Inventory Kyverno installations and confirm the deployed version.
  2. Upgrade affected installations to Kyverno 1.19.2 or later using the project release guidance.
  3. While remediation is underway, limit who can create NamespacedMutatingPolicy objects.
  4. Review Kubernetes audit logs for NamespacedMutatingPolicy objects and for mutations to RoleBindings, Roles, NetworkPolicies, and ConfigMaps outside the author’s namespace.
  5. Check victim namespaces for added subjects or altered rules and revert anything unauthorized.

Management note

When one tenant can rewrite another tenant’s RoleBinding, the RBAC model itself is compromised. Treat every namespace in a shared cluster as potentially affected until the audit log says otherwise.