Description
Kyverno from 1.19.1 before 1.19.2 validates a Policy's context.apiCall urlPath after cleaning it but executes the raw path, whose fragment or query the Kubernetes client discards. A namespace-scoped user who can create a Policy can hide ../ segments behind # or ? to reach cluster-scoped endpoints with Kyverno's ServiceAccount, gaining cluster admin.
Published: 2026-11-05
Score: 9.4 Critical
EPSS: n/a
KEV: No
Impact: Privilege Escalation
Action: Immediate Patch
AI Analysis

Impact

Kyverno prior to version 1.19.2 does not correctly filter the context.apiCall urlPath after sanitization. An attacker who can create a namespace‑scoped Policy can embed directory traversal sequences, such as "../" after a URL fragment or query string, which the Kubernetes client discards, allowing the raw path to reach cluster‑scoped endpoints when executed by Kyverno's ServiceAccount. This flaw enables a legitimate user in any namespace with Policy creation rights to effectively gain cluster‑administrator privileges.

Affected Systems

Kyverno, version 1.19.1 and earlier (i.e., any release before 1.19.2). The issue affects all deployments that expose the Policy API, including clusters running the default Kyverno service account with elevated cluster rights. Users should verify that their Kyverno installation is not within this version range.

Risk and Exploitability

The vulnerability carries a CVSS score of 9.4, indicating critical risk. EPSS is not available, and the flaw is not listed in CISA KEV. An attacker only needs to create a Policy object in a namespace, which can be performed by many legitimate users, so the exploit is likely feasible in environments with broad Policy‑creation permissions. Because the attack escalates privilege from a namespace context to cluster scope, it presents a high likelihood of severe impact in the right circumstances.

Generated by OpenCVE AI on November 5, 2026 at 03:28 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade Kyverno to version 1.19.2 or later to apply the vendor fix that validates the apiCall urlPath correctly.
  • Limit the ability to create or modify Policies to trusted users or namespaces, ensuring that only privileged personnel can create policies that invoke external API calls.
  • Audit existing Policies and remove any that use context.apiCall with urlPath containing traversal characters, to mitigate any reuse of known malicious policies.

Generated by OpenCVE AI on November 5, 2026 at 03:28 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Thu, 05 Nov 2026 02:45:00 +0000

Type Values Removed Values Added
Description Kyverno from 1.19.1 before 1.19.2 validates a Policy's context.apiCall urlPath after cleaning it but executes the raw path, whose fragment or query the Kubernetes client discards. A namespace-scoped user who can create a Policy can hide ../ segments behind # or ? to reach cluster-scoped endpoints with Kyverno's ServiceAccount, gaining cluster admin.
Title Kyverno 1.19.1 before 1.19.2 Privilege Escalation via Policy apiCall urlPath
First Time appeared Kyverno
Kyverno kyverno
Weaknesses CWE-436
CPEs cpe:2.3:a:kyverno:kyverno:*:*:*:*:*:*:*:*
Vendors & Products Kyverno
Kyverno kyverno
References
Metrics cvssV3_1

{'score': 9.9, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H'}

cvssV4_0

{'score': 9.4, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H'}


cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-11-05T02:25:12.955Z

Reserved: 2026-11-04T23:23:51.290Z

Link: CVE-2026-122310

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-11-05T03:17:23.337

Modified: 2026-11-05T03:17:23.337

Link: CVE-2026-122310

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-11-05T04:45:14Z

Weaknesses