Skip to content
Fencer Vulns
high 7.7

CVE-2025-47281 json

Kyverno's Improper JMESPath Variable Evaluation Leads to Denial of Service

published 2025-07-22 15 mo ago modified 2026-09-10 1 mo ago also BIT-kyverno-2025-47281 , EUVD-2025-22470 , GHSA-r5p3-955p-5ggq , GO-2025-3823

cvss
7.7
version 3.1, CNA
cisa kev
Not listed
not in CISA's catalog
epss
0.6%
EPSS 0.6% chance of exploitation in 30 days, percentile 46%
public exploits
0
none known

Summary

Kyverno is a policy engine designed for cloud native platform engineering teams. In versions 1.14.1 and below, a Denial of Service (DoS) vulnerability exists due to improper handling of JMESPath variable substitutions. Attackers with permissions to create or update Kyverno policies can craft expressions using the {{@}} variable combined with a pipe and an invalid JMESPath function (e.g., {{@ | non_existent_function }}). This leads to a nil value being substituted into the policy structure. Subsequent processing by internal functions, specifically getValueAsStringMap, which expect string values, results in a panic due to a type assertion failure (interface {} is nil, not string). This crashes Kyverno worker threads in the admission controller and causes continuous crashes of the reports controller pod. This is fixed in version 1.14.2.

Patch / fix

  • go github.com/kyverno/kyverno 1.14.2
  • bitnami kyverno 1.14.2
  • kyverno kyverno 1.14.2
  • nirmata kyverno 1.14.2
  • govulncheck-vulndb openSUSE Tumbleweed 0.0.20250730T213748-1.1

opensuse advisories openSUSE-SU-2025:15405-1

CISA SSVC

Exploitation
Proof of concept is public
Automatable
no
Technical impact
partial
Assessed
15 mo ago

Exploit prediction

0.56% chance of exploitation in the next 30 days, higher than 46% of all scored CVEs (FIRST EPSS, 2026-11-08).

Exploits and checks

  • github.com https://github.com/kyverno/kyverno/security/advisories/GHSA-r5p3-955p-5ggq referenced PoC, tagged "exploit" by a source, unverified

CVSS scores

assigned by version score vector
CNA 3.1 7.7 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:N/A:H
GitHub 3.1 7.7 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:N/A:H
OSV 3.1 7.7 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:N/A:H

Affected packages

ecosystem package affected fixed in
go github.com/kyverno/kyverno
<1.14.2
1.14.2
bitnami kyverno
<1.14.2
1.14.2

Affected products

  • kyverno kyverno

Classification

Weakness

References

Sources

Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.

CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.