ZeroHour

CVE-2026-84196

large

Authenticated SSRF in Kyverno Kubernetes policy engine (CVE-2026-84196)

CVSS 4.0
8.3 high
EPSS
<1%p18
Published
()
Modified
AI analysis

Kyverno, a widely used open-source policy engine for Kubernetes, contains a server-side request forgery (SSRF) vulnerability in the apiCall service URL field (apiCall.service.url) in all releases before 1.18.0. An authenticated user who can create or modify Kyverno policies can inject user-controlled input through variable substitution in that field, causing Kyverno to issue arbitrary HTTP requests to attacker-chosen targets, including internal cluster services, cloud metadata endpoints (such as 169.254.169.254), and loopback addresses. Because the HTTP response is reflected back in admission error messages, the SSRF is non-blind, allowing attackers to read internal service responses and exfiltrate the data through the cluster's admission API. Any Kubernetes cluster running a vulnerable Kyverno release is affected, with exposure limited to users or compromised accounts holding permissions to create or update Kyverno policy resources. There is no evidence of exploitation in the wild: no public proof-of-concept is known, the flaw is not in CISA's KEV catalog, and EPSS estimates roughly a 0.3% probability of exploitation in the next 30 days.

What to do: Upgrade to Kyverno 1.18.0 or later. As interim mitigation, restrict RBAC permissions for creating or updating Kyverno Policy/ClusterPolicy resources to trusted administrators and audit existing apiCall-based policies for variable substitutions sourced from user-controlled fields. Consider restricting Kyverno pod egress at the network level (blocking the cloud metadata endpoint 169.254.169.254 and loopback ranges) to limit what the SSRF can reach.

Affected
Kyverno (CNCF) Kyvernoall versions before 1.18.0
Estimated exposure
largelikely tens of thousands of Kubernetes clusters running vulnerable releases (no authoritative install count published) — Kyverno is one of the most widely adopted Kubernetes policy engines (a CNCF project with millions of Helm chart pulls), suggesting deployments in the tens of thousands of clusters, though most clusters are not directly internet-exposed and…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

Kyverno before 1.18.0 contains a server-side request forgery vulnerability in apiCall.service.url that allows authenticated users to send arbitrary HTTP requests by injecting user-controlled input through variable substitution. Attackers can target internal services, cloud metadata endpoints, and loopback addresses, with response data reflected in admission error messages enabling non-blind data exfiltration.

Weakness
CWE-918
Vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

In the news

No ingested article mentions this CVE yet.