CVE-2025-15566
Ingress NGINX Controller (community-driven) vulnerability analysis and mitigation

Overview

CVE-2025-15566 is an nginx configuration injection vulnerability in ingress-nginx, a widely used Kubernetes ingress controller. The nginx.ingress.kubernetes.io/auth-proxy-set-headers Ingress annotation fails to properly validate input, allowing an attacker to inject arbitrary nginx configuration directives. This can lead to arbitrary code execution within the ingress-nginx controller context and disclosure of Kubernetes Secrets accessible to the controller — which, in default installations, includes all Secrets cluster-wide. Affected versions are ingress-nginx < v1.12.5 and < v1.13.1. The vulnerability was disclosed on February 6, 2026, with a CVSS v3.1 base score of 8.8 (High) (Kubernetes Issue, Feedly).

Technical details

The root cause is improper input validation (CWE-20) in the handling of the nginx.ingress.kubernetes.io/auth-proxy-set-headers Ingress annotation. When a user creates or modifies an Ingress resource with a malicious ConfigMap reference in this annotation, the ingress-nginx controller incorporates the unsanitized content directly into the generated nginx configuration. This allows an attacker with permissions to create or modify Ingress resources (low-privilege access) to inject arbitrary nginx directives, which are then executed in the context of the ingress-nginx controller process. The vulnerability was discovered and patched by Jan-Otto Kröpke (Kubernetes Issue).

Impact

Successful exploitation allows an attacker with low Kubernetes RBAC privileges (specifically, the ability to create or modify Ingress resources) to achieve arbitrary code execution within the ingress-nginx controller pod and exfiltrate Kubernetes Secrets accessible to the controller. Because the default ingress-nginx installation grants the controller cluster-wide read access to all Secrets, this effectively means an attacker could harvest credentials, API tokens, TLS certificates, and other sensitive data from across the entire cluster. Additionally, the attacker could manipulate ingress routing behavior, disrupt availability, or use the compromised controller as a pivot point for further lateral movement within the cluster (Kubernetes Issue, Feedly).

Exploitability

As of the disclosure date, there is no public proof-of-concept exploit and no evidence of active in-the-wild exploitation (Feedly). The EPSS score is approximately 0.034%, reflecting a currently low probability of exploitation in the near term. No threat actor attribution has been reported, and the vulnerability has not been added to the CISA Known Exploited Vulnerabilities (KEV) catalog. However, the low privilege requirement and network-accessible attack vector make this an attractive target if exploitation techniques become public.

Exploitation steps

  1. Reconnaissance: Identify Kubernetes clusters running ingress-nginx versions prior to v1.12.5 or v1.13.1 using cluster enumeration tools or by querying kubectl get pods --all-namespaces --selector app.kubernetes.io/name=ingress-nginx.
  2. Obtain low-privilege access: Acquire credentials or a service account with permissions to create or modify Ingress resources and ConfigMaps within a namespace (standard developer-level RBAC).
  3. Craft malicious ConfigMap: Create a ConfigMap containing injected nginx configuration directives — for example, directives that enable arbitrary command execution via nginx modules or that exfiltrate environment variables and mounted Secrets.
  4. Reference ConfigMap in Ingress annotation: Create or patch an Ingress resource setting the nginx.ingress.kubernetes.io/auth-proxy-set-headers annotation to reference the malicious ConfigMap (e.g., nginx.ingress.kubernetes.io/auth-proxy-set-headers: <namespace>/<malicious-configmap>).
  5. Trigger configuration reload: The ingress-nginx controller detects the Ingress change, incorporates the malicious ConfigMap content into the nginx configuration without sanitization, and reloads nginx — executing the injected directives.
  6. Achieve objective: Depending on the injected payload, the attacker can execute arbitrary commands in the controller context, read mounted Secrets, or exfiltrate cluster-wide Secret data accessible to the controller (Kubernetes Issue).

Indicators of compromise

  • Kubernetes Audit Logs: Unexpected creation or modification of ConfigMaps in namespaces where ingress resources exist, particularly by non-administrative service accounts; Ingress resource patches adding or modifying the nginx.ingress.kubernetes.io/auth-proxy-set-headers annotation.
  • ingress-nginx Controller Logs: Unusual nginx configuration reload events; errors or unexpected directives appearing in the generated nginx configuration; references to ConfigMaps not previously associated with ingress resources.
  • File System (Controller Pod): Unexpected files written to the controller pod's filesystem; new processes spawned by the nginx worker process.
  • Network: Unexpected outbound connections from the ingress-nginx controller pod to external IPs; unusual DNS queries originating from the controller pod.
  • Process: Anomalous child processes spawned by nginx (e.g., shell interpreters, curl, wget) within the ingress-nginx controller pod (Kubernetes Issue).

Mitigation and workarounds

The primary remediation is to upgrade ingress-nginx to v1.12.5, v1.13.1, or any later version, which includes fixes for this vulnerability (Kubernetes Issue). As interim mitigations, restrict Kubernetes RBAC permissions so that only trusted users and service accounts can create or modify Ingress resources and ConfigMaps. Apply the principle of least privilege to the ingress-nginx controller's own RBAC role to limit which Secrets it can access. Monitor ingress-nginx controller logs and Kubernetes audit logs for suspicious ConfigMap references in the auth-proxy-set-headers annotation. If exploitation is suspected, contact security@kubernetes.io.

Community reactions

The vulnerability was covered by The Hacker Wire, which highlighted the RCE risk via annotation injection (The Hacker Wire). It appeared in multiple CVEWatch Reddit trending CVE roundups for the week of February 7–9, 2026, indicating notable community interest. CISA included it in their vulnerability bulletin for the week of February 2, 2026 (CISA Bulletin). A technical write-up was published by Infinit Security detailing the annotation injection mechanism (Infinit Security).

Additional resources


SourceThis report was generated using AI

Related Ingress NGINX Controller (community-driven) vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-4342HIGH8.8
  • Ingress NGINX Controller (community-driven) logoIngress NGINX Controller (community-driven)
  • k8s.io/ingress-nginx
NoYesMar 19, 2026
CVE-2026-3288HIGH8.8
  • Ingress NGINX Controller (community-driven) logoIngress NGINX Controller (community-driven)
  • cpe:2.3:a:kubernetes:ingress-nginx
NoYesMar 09, 2026
CVE-2025-15566HIGH8.8
  • Ingress NGINX Controller (community-driven) logoIngress NGINX Controller (community-driven)
  • cpe:2.3:a:kubernetes:ingress-nginx
NoYesFeb 06, 2026
CVE-2026-24514MEDIUM6.5
  • Ingress NGINX Controller (community-driven) logoIngress NGINX Controller (community-driven)
  • k8s.io/ingress-nginx
NoYesFeb 03, 2026
CVE-2026-24513LOW3.1
  • Ingress NGINX Controller (community-driven) logoIngress NGINX Controller (community-driven)
  • cpe:2.3:a:kubernetes:ingress-nginx
NoYesFeb 03, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management