Want to stay ahead of threats in 2025? This research report is all you need to stay updated.

CVE-2025-1974

Critical Remote Code Execution in Kubernetes Ingress-NGINX via Unsanitized Annotations: CVE-2025-1974 Decoded

Vulnerability Overview 

CVE ID: CVE-2025-1974 

CVE Title: Kubernetes Ingress-NGINX Admission Controller RCE via Misconfigured Annotations 

Severity: Critical  

Exploit Status: Public proof-of-concept (PoC) available  

Business Risk: A critical flaw that lets attackers run malicious code remotely, steal sensitive data from the entire Kubernetes cluster, disrupt services, and potentially take full control—causing major business, financial, and reputational harm.  

Compliance Impact: Potential violations of data protection regulations such as GDPR, HIPAA, and PCI-DSS due to unauthorized access to sensitive Secrets, tokens, and credentials managed by the Kubernetes controller.

Summary

CVE-2025-1974 is a critical remote code execution flaw in Kubernetes Ingress-NGINX, allowing unauthenticated attackers with pod network access to run arbitrary code by exploiting unsafe annotation handling. This can lead to the theft of Kubernetes Secrets and full cluster compromise. It affects versions below 1.11.5 and 1.12.1. Immediate patching and securing the admission webhook are strongly advised.

Urgent Actions Required

Which Systems Are Vulnerable to CVE-2025-1974?

Technical Overview

How Does the CVE-2025-1974 Exploit Work?

The attack typically follows these steps:

How Does the CVE-2025-1974 Exploit Work?

What Causes CVE-2025-1974?

Vulnerability Root Cause:  

This vulnerability comes from poor validation of ingress annotations in the Ingress-NGINX controller. Attackers can inject malicious configurations, leading to remote code execution. Since the controller often has high privileges, this can result in full cluster compromise without authentication.

How Can You Mitigate CVE-2025-1974?

If immediate patching is delayed or not possible:  

  • Limit access to the Ingress-NGINX admission controller to trusted internal services. 
  • Use network policies to isolate it from untrusted namespaces. 
  • Disable or audit risky annotations like configuration-snippet. 
  • Deploy a WAF to block suspicious ingress requests. 
  • Monitor controller pods for signs of RCE, such as loading from /proc/*/fd/*.

Which Assets and Systems Are at Risk?

Asset Types Affected:

Business-Critical Systems at Risk:

Exposure Level:

Will Patching CVE-2025-1974 Cause Downtime?

Patch application impact: Low to Moderate. Update Ingress-NGINX to version 1.11.5 or 1.12.1 to fix the issue. Most clusters can patch with minimal downtime using tools like kubectl or Helm. For setups using advanced annotations, test in staging first.  

Mitigation (if immediate patching is not possible): Limit access to the ingress-nginx webhook to trusted services, apply strict RBAC to reduce Secret access, and review or disable risky annotations (like Lua blocks). However, this does not fully stop the threat—unauthenticated access from inside the pod network is still dangerous. Public exploits exist, and real attacks have been seen. Only a full patch provides complete protection.

How Can You Detect CVE-2025-1974 Exploitation?

Exploitation Signatures:

Indicators of Compromise (IOCs/IOAs):

Behavioral Indicators:

Alerting Strategy:

Remediation & Response

Patch/Upgrade Instructions:

Mitigation Steps if No Patch:

Remediation Timeline:

Rollback Plan:

Incident Response Considerations:

Compliance & Governance Notes

Standards Impacted:

Audit Trail Requirement:

Policy Alignment:

CVSS Breakdown Table

MetricValue Description
Base Score9.8Critical severity vulnerability allowing unauthenticated remote code execution and full cluster compromise
Attack VectorNetworkExploitable remotely by sending malicious HTTP-based AdmissionReview requests to the ingress-nginx controller
Attack ComplexityLowExploitation requires no complex conditions—attack path is well-defined and technically straightforward
Privileges RequiredNoneNo authentication or existing access is required to exploit the vulnerability (unauthenticated attackers can trigger the flaw)
User Interaction NoneNo user interaction is needed to execute the exploit (e.g., no need for clicking or manual intervention)
Scope Unchanged The vulnerability affects the ingress-nginx controller itself; escalation to other components depends on the controller’s default privileges
Confidentiality Impact HighExploitation can lead to exfiltration of Kubernetes cluster secrets via access gained in the ingress-nginx pod
Integrity ImpactHighAllows injection and execution of arbitrary configuration or code within NGINX, leading to potential modification or tampering of system behavior

Related Readings

One Platform for All Adversaries

See Fidelis in action. Learn how our fast and scalable platforms provide full visibility, deep insights, and rapid response to help security teams across the World protect, detect, respond, and neutralize advanced cyber adversaries.