ZeroHour
Infosecurity Magazinepublished ()ingested Phil Muncaster

IngressNightmare: Four Critical Bugs Found in 40% of Cloud Systems

Vulnerabilities mentionedAll →

CVEVulnerabilityCVSSEPSSFlagsAffectedExposurePublished
CVE-2025-1097
Config Injection RCE in Kubernetes ingress-nginx via auth-tls-match-cn annotation

CVE-2025-1097 is a configuration injection flaw (CWE-20) in the Kubernetes ingress-nginx controller: values of the auth-tls-match-cn Ingress annotation are not properly sanitized, so an attacker who can create or modify Ingress resources can inject arbitrary nginx configuration directives. On configuration reload, the injected directives are interpreted by nginx, which can be escalated to arbitrary code execution in the context of the ingress-nginx controller. An attacker with code execution in the controller can also read Secrets accessible to it, and in a default installation the controller can access all Secrets cluster-wide, enabling broader cluster compromise. Any cluster running a vulnerable ingress-nginx controller is affected, with the greatest risk where untrusted or multi-tenant users hold rights to apply Ingress annotations or where controller pods are internet-exposed. Per the available data there is no confirmed in-the-wild exploitation or public PoC yet, but EPSS assigns a 35.5% probability of exploitation within 30 days (98th percentile), and the flaw is part of the "IngressNightmare" group of bugs reported to affect roughly 40% of cloud environments.

Do: Upgrade ingress-nginx controllers to the latest release containing the IngressNightmare fixes and restart/verify the controller deployment. Until patched, restrict RBAC permissions for creating or modifying Ingress resources (especially the auth-tls-match-cn annotation) to trusted administrators, avoid exposing controller pods directly to the internet, and review which Secrets the controller service account can read.

8.836%
  • kubernetes ingress-nginx
large~hundreds of thousands of clusters (ingress-nginx reported in ~40% of cloud environments; ~6,800 controllers directly internet-exposed in public scans)
CVE-2025-1098
Config Injection via Ingress Annotations Enables RCE in ingress-nginx

CVE-2025-1098 is an input-validation flaw (CWE-20) in the Kubernetes ingress-nginx controller: the `mirror-target` and `mirror-host` Ingress annotations are not properly sanitized, allowing arbitrary NGINX configuration directives to be injected into the controller's generated configuration. An attacker who can create or modify Ingress resources in the cluster (low privileges, no user interaction required) crafts these annotation values, and the injected configuration is consumed by the controller's NGINX instance to execute arbitrary code in the context of the ingress-nginx controller. Successful exploitation also leads to disclosure of Secrets accessible to the controller; in a default installation the controller can read every Secret cluster-wide, enabling credential theft and potentially full cluster takeover. Any Kubernetes cluster running a vulnerable ingress-nginx controller is affected, and public research tied to the related 'IngressNightmare' disclosures found the component in roughly 40% of cloud environments. No public proof-of-concept or confirmed in-the-wild exploitation is known yet, but EPSS assigns this CVE an 83.5% probability of exploitation within 30 days (100th percentile), so rapid patching is warranted.

Do: Upgrade all ingress-nginx controllers to the patched releases (v1.12.1 or v1.11.5 per the vendor advisory) and restart controller pods. As interim mitigations, restrict RBAC so only trusted principals can create or update Ingress objects or set the mirror-target/mirror-host annotations (e.g., via a ValidatingAdmissionPolicy), and limit the controller's Secret access below cluster-wide where possible. Also patch the related IngressNightmare CVEs disclosed alongside this one and review clusters for exposed admission webhooks.

8.883%
  • Kubernetes (kubernetes/ingress-nginx project) ingress-nginx controller all versions prior to the patched releases published with the vendor advisory (v1.12.1 / v1.11.5); exact affected version ranges not specified in the source dat
mass≈100,000+ Kubernetes clusters plausibly affected (ingress-nginx is the most widely used ingress controller, present in ~40% of cloud environments per public…
CVE-2025-1974
Unauthenticated RCE in Kubernetes ingress-nginx controller (IngressNightmare)

CVE-2025-1974 is a critical (CVSS 9.8) unauthenticated remote code execution flaw in the Kubernetes ingress-nginx controller, identified as part of the IngressNightmare set of defects. An attacker who has any access to the pod network, with no credentials required, can trigger the flaw and execute arbitrary code in the context of the ingress-nginx controller process. From that position the attacker can disclose Secrets accessible to the controller, and in a default installation the controller can read all Secrets cluster-wide, which follow-on coverage notes can lead to Kubernetes cluster takeover. Any Kubernetes cluster running the ingress-nginx controller is affected; public research cited in the headlines estimates the component is present in roughly 40% of cloud environments. No public proof-of-concept or confirmed in-the-wild exploitation is known at this time, but EPSS assigns a 99.5% probability of exploitation within 30 days, making urgent patching prudent.

Do: Upgrade the ingress-nginx controller to the patched release identified in the project's security advisory for CVE-2025-1974. Until patched, restrict pod-network access to the controller (including its admission webhook endpoint) so only the Kubernetes control plane can reach it, and consider narrowing the controller's RBAC so it cannot read all Secrets cluster-wide. Review audit logs for unexpected requests to the controller and inventory clusters for ingress-nginx deployments, especially internet-facing ones.

9.8100%
  • Kubernetes (ingress-nginx project) ingress-nginx controller
massvery large
CVE-2025-24514
Config Injection via auth-url Annotation Enables RCE in Kubernetes ingress-nginx

CVE-2025-24514 is an input validation flaw (CWE-20) in the Kubernetes ingress-nginx controller in which the auth-url Ingress annotation is inserted into the nginx configuration without sufficient sanitization. An attacker who can create or modify Ingress resources (the low-privilege requirement in the CVSS vector) can supply a crafted auth-url value that injects arbitrary nginx configuration directives into the controller. Successful exploitation yields arbitrary code execution in the context of the ingress-nginx controller and disclosure of Secrets the controller can access — which, in a default installation, means all Secrets cluster-wide, potentially enabling broader cluster compromise. Any environment running affected versions of the ingress-nginx controller is exposed; related reporting on the 'IngressNightmare' bug set says the component runs in roughly 40% of cloud environments. No public proof-of-concept or confirmed in-the-wild exploitation is known for this flaw, but its EPSS of 32.6% (98th percentile) indicates a substantial probability of exploitation within 30 days.

Do: Upgrade the ingress-nginx controller to the latest patched release published by the project and confirm running controller pods use the fixed image. Restrict RBAC permissions to create or modify Ingress resources to trusted principals and audit existing Ingress objects for auth-url annotations. Because a default installation lets the controller read all Secrets cluster-wide, consider narrowing its Secret access as defense-in-depth.

8.833%
  • Kubernetes (ingress-nginx project) ingress-nginx controller
masslikely 100,000+ controller installations (component reported in ~40% of cloud environments)
Full article429 words · extracted from infosecurity-magazine.com · click to collapse

Kubernetes customers using the popular Ingress NGINX Controller have been urged to patch four newly discovered remote code execution (RCE) flaws assigned a CVSS score of 9.8.

Dubbed “IngressNightmare” by Wiz Security, the four vulnerabilities impact the admission controller component of the popular open source software, which is designed to route external traffic to the relevant Kubernetes services and pods.

Wiz Research claimed the flaws impact 43% of all cloud environments, including many Fortune 500 companies. Because the software’s admission controllers are typically exposed to the public internet, they are at “critical risk” of attack, it warned.

The four vulnerabilities are: CVE-2025-1097, CVE-2025-1098, CVE-2025-24514 and CVE-2025-1974. The first three could enable an attacker to inject arbitrary NGINX configuration directives. When chained with the fourth, the threat actor would be able to achieve remote code execution.

Read more on Kubernetes threats: Nearly One Million Exposed Misconfigured Kubernetes Instances Could Cause Breaches

“When the Ingress-NGINX admission controller processes an incoming ingress object, it constructs an NGINX configuration from it and then validates it using the NGINX binary.  Our team found a vulnerability in this phase that allows injecting an arbitrary NGINX configuration remotely, by sending a malicious ingress object directly to the admission controller through the network,” Wiz Security explained.

“During the configuration validation phase, the injected NGINX configuration causes the NGINX validator to execute code, allowing remote code execution (RCE) on the Ingress NGINX Controller’s pod.”

Because the admission controller has escalated privileges and unrestricted access to the network, exploitation of the chained flaws could allow an attacker to execute arbitrary code, access all cluster secrets and completely take over a targeted cluster, it added.

To keep their systems secure, Kubernetes admins are urged to upgrade to Ingress NGINX Controller version 1.12.1 and 1.11.5, and ensure the admission webhook endpoint is not exposed externally.

The security vendor has also published some mitigations for those that can’t immediately upgrade to patched versions.

The First of Many?

Unfortunately, this could be the first of many such discoveries in Kubernetes admission controllers.

“Initially, we were surprised to see that such a large code base is used behind the scenes. In our view, this attack surface should be restricted in a much better way: removing access from pods within the cluster, and never exposing this publicly,” Wiz Security concluded.

“We were also surprised by the lack of least-privilege design, as the exploit ended up with privileges to take control of the cluster. During this research, we found other vulnerabilities in Ingress NGINX Controller, and we expect to find more in other admission controllers.”

Text extracted automatically; images, tables and formatting may be missing. Original: https://www.infosecurity-magazine.com/news/ingressnightmare-critical-bugs-40/