CVE-2025-1098: CWE-20 Improper Input Validation in kubernetes ingress-nginx
A security issue was discovered in ingress-nginx https://github.com/kubernetes/ingress-nginx where the `mirror-target` and `mirror-host` Ingress annotations can be used to inject arbitrary configuration into nginx. This can lead to arbitrary code execution in the context of the ingress-nginx controller, and disclosure of Secrets accessible to the controller. (Note that in the default installation, the controller can access all Secrets cluster-wide.)
AI Analysis
Technical Summary
CVE-2025-1098 is a vulnerability classified under CWE-20 (Improper Input Validation) found in the Kubernetes ingress-nginx controller, specifically in versions up to 1.12.0. The flaw stems from insufficient validation of the 'mirror-target' and 'mirror-host' annotations in Ingress resources, which are intended to configure request mirroring in nginx. An attacker with the ability to create or modify Ingress resources can exploit this to inject arbitrary nginx configuration directives. This injection can lead to arbitrary code execution within the ingress-nginx controller's process context, which runs with cluster-level privileges. Additionally, because the ingress-nginx controller typically has access to all Kubernetes Secrets in the cluster, an attacker can leverage this vulnerability to disclose sensitive information such as credentials, tokens, or certificates. The vulnerability has a CVSS 3.1 score of 8.8, indicating high severity, with an attack vector over the network, low attack complexity, requiring privileges but no user interaction, and impacting confidentiality, integrity, and availability. Although no exploits are currently known in the wild, the potential impact is significant given the widespread use of ingress-nginx in Kubernetes environments. The vulnerability highlights the risks of overly permissive access controls and the importance of input validation in Kubernetes controllers.
Potential Impact
For European organizations, this vulnerability poses a critical risk to Kubernetes clusters running ingress-nginx, a widely adopted ingress controller in cloud-native environments. Successful exploitation can lead to full compromise of the ingress-nginx controller, enabling attackers to execute arbitrary code and access all Secrets within the cluster. This can result in data breaches, lateral movement within the cluster, disruption of services, and exposure of sensitive credentials. Organizations relying on Kubernetes for production workloads, especially those in regulated sectors such as finance, healthcare, and government, face compliance and operational risks. The ability to inject arbitrary configuration also threatens the integrity and availability of applications behind the ingress controller. Given the default broad Secret access by ingress-nginx, the impact extends beyond a single namespace, potentially compromising the entire cluster. The vulnerability is particularly concerning for multi-tenant clusters and managed Kubernetes services where ingress-nginx is deployed with default permissions.
Mitigation Recommendations
1. Upgrade ingress-nginx to a version later than 1.12.0 as soon as a patch is released by the Kubernetes project. 2. Until a patch is available, restrict the ability to create or modify Ingress resources to trusted administrators only, minimizing the risk of malicious annotation injection. 3. Implement Kubernetes Role-Based Access Control (RBAC) policies to limit ingress-nginx controller permissions, especially restricting access to Secrets where feasible. 4. Monitor Ingress resource annotations for suspicious or unexpected values, particularly 'mirror-target' and 'mirror-host'. 5. Employ network segmentation and firewall rules to limit exposure of the ingress-nginx controller to untrusted networks. 6. Use admission controllers or validating webhooks to enforce strict validation of Ingress annotations to prevent injection of arbitrary configuration. 7. Regularly audit Kubernetes cluster configurations and Secrets access to detect potential misuse. 8. Consider deploying ingress-nginx with reduced privileges or in a sandboxed environment to limit the blast radius of a compromise.
Affected Countries
Germany, United Kingdom, France, Netherlands, Sweden, Finland, Ireland
CVE-2025-1098: CWE-20 Improper Input Validation in kubernetes ingress-nginx
Description
A security issue was discovered in ingress-nginx https://github.com/kubernetes/ingress-nginx where the `mirror-target` and `mirror-host` Ingress annotations can be used to inject arbitrary configuration into nginx. This can lead to arbitrary code execution in the context of the ingress-nginx controller, and disclosure of Secrets accessible to the controller. (Note that in the default installation, the controller can access all Secrets cluster-wide.)
AI-Powered Analysis
Technical Analysis
CVE-2025-1098 is a vulnerability classified under CWE-20 (Improper Input Validation) found in the Kubernetes ingress-nginx controller, specifically in versions up to 1.12.0. The flaw stems from insufficient validation of the 'mirror-target' and 'mirror-host' annotations in Ingress resources, which are intended to configure request mirroring in nginx. An attacker with the ability to create or modify Ingress resources can exploit this to inject arbitrary nginx configuration directives. This injection can lead to arbitrary code execution within the ingress-nginx controller's process context, which runs with cluster-level privileges. Additionally, because the ingress-nginx controller typically has access to all Kubernetes Secrets in the cluster, an attacker can leverage this vulnerability to disclose sensitive information such as credentials, tokens, or certificates. The vulnerability has a CVSS 3.1 score of 8.8, indicating high severity, with an attack vector over the network, low attack complexity, requiring privileges but no user interaction, and impacting confidentiality, integrity, and availability. Although no exploits are currently known in the wild, the potential impact is significant given the widespread use of ingress-nginx in Kubernetes environments. The vulnerability highlights the risks of overly permissive access controls and the importance of input validation in Kubernetes controllers.
Potential Impact
For European organizations, this vulnerability poses a critical risk to Kubernetes clusters running ingress-nginx, a widely adopted ingress controller in cloud-native environments. Successful exploitation can lead to full compromise of the ingress-nginx controller, enabling attackers to execute arbitrary code and access all Secrets within the cluster. This can result in data breaches, lateral movement within the cluster, disruption of services, and exposure of sensitive credentials. Organizations relying on Kubernetes for production workloads, especially those in regulated sectors such as finance, healthcare, and government, face compliance and operational risks. The ability to inject arbitrary configuration also threatens the integrity and availability of applications behind the ingress controller. Given the default broad Secret access by ingress-nginx, the impact extends beyond a single namespace, potentially compromising the entire cluster. The vulnerability is particularly concerning for multi-tenant clusters and managed Kubernetes services where ingress-nginx is deployed with default permissions.
Mitigation Recommendations
1. Upgrade ingress-nginx to a version later than 1.12.0 as soon as a patch is released by the Kubernetes project. 2. Until a patch is available, restrict the ability to create or modify Ingress resources to trusted administrators only, minimizing the risk of malicious annotation injection. 3. Implement Kubernetes Role-Based Access Control (RBAC) policies to limit ingress-nginx controller permissions, especially restricting access to Secrets where feasible. 4. Monitor Ingress resource annotations for suspicious or unexpected values, particularly 'mirror-target' and 'mirror-host'. 5. Employ network segmentation and firewall rules to limit exposure of the ingress-nginx controller to untrusted networks. 6. Use admission controllers or validating webhooks to enforce strict validation of Ingress annotations to prevent injection of arbitrary configuration. 7. Regularly audit Kubernetes cluster configurations and Secrets access to detect potential misuse. 8. Consider deploying ingress-nginx with reduced privileges or in a sandboxed environment to limit the blast radius of a compromise.
Affected Countries
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- kubernetes
- Date Reserved
- 2025-02-07T00:11:53.927Z
- Cvss Version
- 3.1
- State
- PUBLISHED
Threat ID: 69091a49c28fd46ded81d033
Added to database: 11/3/2025, 9:10:33 PM
Last enriched: 2/5/2026, 8:07:02 AM
Last updated: 2/7/2026, 2:21:35 PM
Views: 24
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Related Threats
CVE-2026-2087: SQL Injection in SourceCodester Online Class Record System
MediumCVE-2026-2086: Buffer Overflow in UTT HiPER 810G
HighCVE-2026-2085: Command Injection in D-Link DWR-M921
HighCVE-2026-2084: OS Command Injection in D-Link DIR-823X
HighCVE-2026-2083: SQL Injection in code-projects Social Networking Site
MediumActions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console in Console -> Billing for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.