Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2025-15613

CVE-2025-15613: Kyverno SSRF Vulnerability

CVE-2025-15613 is a server-side request forgery vulnerability in Kyverno that allows attackers to exfiltrate sensitive Kubernetes cluster data including secrets. This post explains its impact, affected versions, and mitigation steps.

Updated:

CVE-2025-15613 Overview

CVE-2025-15613 is a server-side request forgery (SSRF) vulnerability in Kyverno, a policy engine for Kubernetes. Versions prior to v1.13.4 allow an attacker with permission to create Kyverno Policy or ClusterPolicy resources to point the Service Call functionality at an arbitrary external URL. Although Service Call is documented for in-cluster services, Kyverno also resolves external addresses. Because policy context data — including contents of Kubernetes resources such as Secrets — is transmitted in these requests, attackers can exfiltrate sensitive cluster data to an attacker-controlled server. The issue is tracked as [CWE-918].

Critical Impact

An attacker with policy-creation rights can exfiltrate Kubernetes Secrets and other cluster resource data by directing Kyverno's Service Call to an external endpoint they control.

Affected Products

  • Kyverno versions prior to v1.13.4
  • Kubernetes clusters using Kyverno Policy and ClusterPolicy resources with apiCall/service configuration
  • Any Kyverno deployment where users can author cluster policies

Discovery Timeline

  • 2026-09-01 - CVE-2025-15613 published to the National Vulnerability Database (NVD)
  • 2026-09-01 - Last updated in NVD database

Technical Details for CVE-2025-15613

Vulnerability Analysis

Kyverno enforces Kubernetes admission policies and can enrich decisions using external data fetched through its Service Call feature. Policy authors specify an apiCall with a service configuration pointing to a URL that Kyverno resolves and requests at evaluation time. The documentation scopes this feature to in-cluster services. In practice, Kyverno does not restrict destinations to cluster-internal addresses. Any host reachable from the Kyverno controller — including internet endpoints, cloud metadata services, and adjacent internal systems — is a valid target.

When Kyverno issues the request, it includes policy context data in the payload. That context can contain the Kubernetes resource under evaluation, referenced Secrets, ConfigMaps, and other cluster-side data used to make policy decisions. An attacker who can create a Policy or ClusterPolicy therefore controls both the destination and the sensitive content sent to it.

Root Cause

The root cause is missing destination validation on the Service Call feature. Kyverno accepts arbitrary URLs in the apiCall.service.url field without enforcing an allowlist of in-cluster hosts, blocking loopback and link-local ranges, or restricting external egress. This maps directly to [CWE-918] Server-Side Request Forgery.

Attack Vector

Exploitation requires Kubernetes RBAC permission to create Kyverno policy resources. The attacker authors a ClusterPolicy whose apiCall targets an external server they operate. On the next matching admission event or scheduled evaluation, the Kyverno controller sends a request containing the policy's context data to the attacker's endpoint. The captured traffic can include Secret material, service account tokens embedded in resources, and other sensitive Kubernetes objects. No user interaction on the victim side is required. See the Kyverno GitHub Security Advisory GHSA-459x-q9hg-4gpq and the VulnCheck Advisory for full technical details.

Detection Methods for CVE-2025-15613

Indicators of Compromise

  • Kyverno Policy or ClusterPolicy objects containing an apiCall.service.url value that points to an external hostname, public IP, or non-cluster address.
  • Egress network connections from Kyverno controller pods to unexpected destinations, especially over HTTP/HTTPS to internet endpoints.
  • Recently created or modified cluster policies authored by non-administrator identities.

Detection Strategies

  • Audit all Policy and ClusterPolicy resources and flag any apiCall entry whose URL is not resolvable to an in-cluster *.svc.cluster.local service.
  • Correlate Kubernetes audit logs for policies.kyverno.io and clusterpolicies.kyverno.io create/update events with the identity of the requester.
  • Inspect Kyverno controller logs for outbound Service Call activity and record destination hosts for review.

Monitoring Recommendations

  • Restrict and monitor egress traffic from the Kyverno namespace using a NetworkPolicy and log any denied connections.
  • Alert on new or updated Kyverno policies created by service accounts or users outside the platform team.
  • Baseline the set of legitimate Service Call destinations and alert on deviation.

How to Mitigate CVE-2025-15613

Immediate Actions Required

  • Upgrade Kyverno to v1.13.4 or later on every cluster running an affected version.
  • Review existing Policy and ClusterPolicy objects and remove any apiCall.service.url entries pointing to non-cluster destinations.
  • Tighten Kubernetes RBAC so that only trusted platform operators can create or modify Kyverno policy resources.
  • Rotate any Kubernetes Secrets that may have been referenced in policy context on affected clusters.

Patch Information

The issue is fixed in Kyverno v1.13.4. Refer to the Kyverno GitHub Security Advisory GHSA-459x-q9hg-4gpq for release notes and upgrade guidance.

Workarounds

  • Apply a Kubernetes NetworkPolicy on the Kyverno namespace that permits egress only to in-cluster CIDRs and the Kubernetes API server.
  • Use an admission controller or OPA/Gatekeeper rule to reject Kyverno policies whose apiCall.service.url does not match *.svc.cluster.local.
  • Remove policy authoring rights from application teams and centralize policy management with a platform team until patching is complete.

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.