Junglewise Threat Intelligence

CVE-2026-54725: Bank-Vaults vault-secrets-webhook SSRF and credential theft via vault-addr annotation

CVE-2026-54725 · Severity: critical · CVSS 9.6 · Published 2026-07-31

Executive brief

The vault-secrets-webhook, a tool used to automatically inject sensitive credentials into Kubernetes applications, contains a security flaw that allows an attacker to redirect secret requests to a malicious server. By providing a specially crafted configuration in a standard Kubernetes object like a ConfigMap, an attacker can trick the system into sending highly sensitive authentication tokens (ServiceAccount JWTs) to a server they control. This could lead to the theft of corporate secrets, unauthorized access to cloud metadata services, and a broader compromise of the Kubernetes environment.

Technical details

A Server-Side Request Forgery (SSRF) vulnerability exists in vault-secrets-webhook due to insufficient validation of the 'vault.security.banzaicloud.io/vault-addr' annotation in the parseVaultConfig() function. When a ConfigMap or Secret containing a 'vault:' prefix is processed, the webhook's admission handler initiates a synchronous HTTP connection to the user-supplied address. If the 'vault-serviceaccount' annotation is also present, the webhook uses its cluster-wide 'serviceaccounts/token:create' permissions to generate a JWT and POSTs it to the attacker-controlled URL. This allows an attacker with low-privileged namespace access to exfiltrate tokens or target internal resources like the Cloud Instance Metadata Service (IMDS). The issue is fixed in version 1.23.1 by implementing a mandatory address allowlist.

Affected products

  • bank-vaults vault-secrets-webhook < 1.23.1

Timeline

  • 2026-06-09: patched: Version 1.23.1 released with SSRF hardening
  • 2026-07-31: disclosed: Public advisory and CVE published

References