CRE-2025-0121
NGINX Ingress Controller SSL Certificate FailureCriticalImpact: 10/10Mitigation: 7/10
CRE-2025-0121View on GitHub
Description
Critical NGINX Ingress Controller SSL certificate validation failure detected. This pattern indicates
cascading SSL failures where certificate verification errors lead to upstream connection failures
and service unavailability. The failure sequence shows SSL handshake failures, certificate verification
errors, and resulting HTTP error responses that affect client connectivity.
Cause
- SSL certificate expiration without renewal
- Invalid or self-signed certificates in production
- Broken certificate chain or missing intermediate certificates
- Certificate authority (CA) bundle misconfiguration
- Certificate hostname mismatch (CN/SAN validation failure)
- Upstream services using untrusted or expired certificates
- SSL/TLS protocol version incompatibility
- Certificate revocation or CA compromise
- Misconfigured SSL verification settings
- Network time synchronization issues affecting certificate validity
Mitigation
IMMEDIATE ACTIONS:
- Check SSL certificate expiration: `openssl x509 -in cert.pem -text -noout | grep -A2 Validity`
- Verify certificate chain: `openssl verify -CAfile ca-bundle.pem server.crt`
- Test SSL connectivity: `openssl s_client -connect hostname:443 -servername hostname`
- Check NGINX SSL configuration: `nginx -t && nginx -s reload`
- Monitor SSL handshake errors in real-time: `tail -f /var/log/nginx/error.log | grep SSL`
RECOVERY STEPS:
- Replace expired/invalid certificates with valid ones
- Update certificate chain with proper intermediate certificates
- Verify CA bundle contains trusted root certificates
- Restart NGINX Ingress Controller: `kubectl rollout restart deployment/nginx-ingress-controller`
- Test SSL endpoints: `curl -v https://your-domain.com/health`
- Monitor certificate auto-renewal processes
PREVENTION:
- Implement automated certificate monitoring and alerting
- Set up certificate auto-renewal with cert-manager or similar tools
- Configure certificate expiration alerts (30, 7, 1 days before expiry)
- Implement SSL health checks in monitoring systems
- Use certificate transparency monitoring for unauthorized certificates
- Regular SSL configuration audits and security scans
- Implement proper certificate lifecycle management
- Set up backup certificate authorities and failover mechanisms