IngressNightmare: ingress-nginx Cluster Takeover RCE
Patched since March 2025. If any cluster still runs ingress-nginx below 1.11.5 or 1.12.1, that is a cluster-takeover risk, and the controller itself is now retired, so plan the migration while you check.
Must act: Anyone running the Kubernetes community ingress-nginx controller older than v1.11.5 or v1.12.1 with the validating admission webhook enabled, especially if the webhook is reachable beyond the API server.
Can relax: Clusters with no ingress-nginx pods (including those using F5/NGINX Inc.'s separate NGINX Ingress Controller or other controllers) and clusters already on 1.11.5, 1.12.1 or later.
- Find controllers: kubectl get pods --all-namespaces --selector app.kubernetes.io/name=ingress-nginx, and note the image tags.
- Upgrade to ingress-nginx v1.11.5, v1.12.1 or any later release.
- If you cannot upgrade, disable the validating admission webhook (Helm: controller.admissionWebhooks.enabled=false; manual: delete the ingress-nginx-admission ValidatingWebhookConfiguration and remove --validating-webhook), then re-enable it after upgrading.