What’s Vulnerable › Vulnerabilities
CVE-2026-22039: Kyverno Cross-Namespace Privilege Escalation via Policy apiCall
- Severity: critical (CVSS 9.9 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.6% probability of exploitation in the next 30 days
- Public exploit or detection template: yes
- Published: 2026-01-27 · updated 2026-06-17
- Weakness: CWE-269
Description
Kyverno is a policy engine designed for cloud native platform engineering teams. Versions prior to 1.16.3 and 1.15.3 have a critical authorization boundary bypass in namespaced Kyverno Policy apiCall. The resolved `urlPath` is executed using the Kyverno admission controller ServiceAccount, with no enforcement that the request is limited to the policy’s namespace. As a result, any authenticated user with permission to create a namespaced Policy can cause Kyverno to perform Kubernetes API requests using Kyverno’s admission controller identity, targeting any API path allowed by that ServiceAccount’s RBAC. This breaks namespace isolation by enabling cross-namespace reads (for example, ConfigMaps and, where permitted, Secrets) and allows cluster-scoped or cross-namespace writes (for example, creating ClusterPolicies) by controlling the urlPath through context variable substitution. Versions 1.16.3 and 1.15.3 contain a patch for the vulnerability.
Affected products
- kyverno: before 1.15.3; from 1.16.0 before 1.16.3 — fixed in 1.15.3, 1.16.3
How to fix
Upgrade to a fixed version: kyverno 1.15.3, 1.16.3. Check the vendor advisory for mitigations.
References
- https://github.com/kyverno/kyverno/commit/e0ba4de4f1e0ca325066d5095db51aec45b1407b
- https://github.com/kyverno/kyverno/commit/eba60fa856c781bcb9c3be066061a3df03ae4e3e
- https://github.com/kyverno/kyverno/security/advisories/GHSA-8p9x-46gm-qfx2
Get alerted when CVE-2026-22039 or the next vulnerability affects your stack