Read the docs

Namespace isolation bypass in Kyverno APICall URLPath query strings

Priority LOW 36CWE-269Published · Updated

Key facts

Attack vector
Network
Privileges required
Low
User interaction
None
Attack complexity
Low
Attack requirements
None
Impact type
Privilege escalation
Confidentiality · integrity · availability
High · None · None
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA. Impact type from CWE-269.

Summary

Kyverno from 1.19.1 before 1.19.2 contains a namespace isolation bypass in its APICall feature. The path cleaning treats a '?' as a path character, so the namespace check matches text inside the query string. A user who can create namespaced policies can supply a URLPath that passes validation while the request reads a cluster-scoped endpoint, exposing resources outside their namespace. The flaw is tracked as CWE-269.

Written with Claude Haiku 5.5 from the sources below · 2026-11-06

Description from the CNA

Kyverno from 1.19.1 before 1.19.2 contains a namespace isolation bypass in APICall Fetch() in pkg/engine/apicall/apiCall.go because path.Clean treats '?' as a path character, letting the namespace regex match segments inside the query string. Users who can create namespaced policies can supply a URLPath like /api/v1/nodes?x=/namespaces/default/ that passes validation while client-go requests the cluster-scoped endpoint, reading resources outside their namespace.

Why it matters now

EPSS 0.00311 24th percentileScored 2026-11-07
Fix Fixed kyverno (kyverno): 1.19.2

SSVC decision points

Not available: CISA has not published SSVC decision points for this record.

Affected products

VendorProductAffected versionsFixed inStatusSource
kyvernokyverno1.19.1 to before 1.19.21.19.2Patch availableCNA
  • kyverno Vendorkyverno Affected 1.19.1 to before 1.19.2 Fixed in 1.19.2 Patch available CNA

Remediation

Upgrade kyverno to version 1.19.2 or later, which fixes the flaw.

Written with Claude Haiku 5.5 from the sources below · 2026-11-06

  • Fix · CNA kyverno (kyverno) Fixed in 1.19.2

Fixed in the same release

Records fixed by the same vendor advisory or release, as the CNA lists them.

  • Release ·

    kyverno 1.19.2

    21 records Highest priority Priority MEDIUM 6 MEDIUM, 15 LOW

    Other records, highest priority first

    • TI-2026-85289 Kyverno path traversal in namespaced CEL policies reaches cluster objectsPriority MEDIUM 41
    • TI-2026-85282 Authorization bypass in Kyverno lets namespace admins read SecretsPriority MEDIUM 41
    • TI-2026-85291 Privilege escalation in Kyverno lets tenants mutate other namespacesPriority MEDIUM 40

Vendor assessments

Red Hat

Red Hat's page for this CVE →

Not affected: 1 product
  • Red Hat

Timeline

  1. 2026-11-05 Threatist record created from CVE-2026-122312
  2. 2026-11-05 Alias added: GHSA-j5qr-vw59-8jh6
  3. 2026-11-06 Priority changed: MEDIUM → LOW
  4. 2026-11-06 Affected versions changed · Red Hat
  5. 2026-11-06 CVSS score added · Red Hat

References

  • TI-2024-32618 Kyverno's PolicyException objects can be created in any namespace by default CVSS 4.0HIGH 8.7
  • TI-2026-57895 Kyverno before v1.13.0 Policy Bypass via Multiple Exceptions CVSS 4.0CRITICAL 9.4
  • TI-2026-39369 Missing authorization in kyverno CVSS 3.1CRITICAL 9.6
  • TI-2026-17733 Kyverno Cross-Namespace Privilege Escalation via Policy apiCall CVSS 3.1CRITICAL 10.0
  • TI-2026-29924 Kyverno: ServiceAccount token leaked to external servers via apiCall service URL CVSS 3.1CRITICAL 9.1
  • TI-2026-29524 kyverno apicall servicecall implicit bearer token injection leaks kyverno serviceaccount token CVSS 3.1HIGH 8.1
See all 52 →

Sources