All vulnerabilities

Servers and applications

GHSA-ccgh-9g52-6vwg

ingress-nginx client certificate authentication (auth-tls-secret) verification bypass and Ssl-Client-* header spoofing on shared hosts

Severity
High 7.0
Published
12 Nov 2026
Last changed
12 Nov 2026
Added to UpHeron
12 Nov 2026
Fixed in
3.7.18, 3.8.0-rc.2
Weakness
Authentication bypass by spoofing (CWE-290)Improper certificate validation (CWE-295)
Attack
Over the network · Only under certain conditions · No login needed · No user action needed
CVSS vector
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:N/SC:H/SI:H/SA:N
Sources
Project advisories (GitHub)

Description

There is a high severity vulnerability in Traefik's Kubernetes Ingress NGINX provider when several Ingresses share a host configured for client certificate authentication with the nginx.ingress.kubernetes.io/auth-tls-secret annotation. Since v3.7.15 the client authentication applies to the whole host and the TLS handshake uses the settings of the first Ingress declaring it, but the Ssl-Client-* headers were still built from the annotations of each Ingress: an Ingress with auth-tls-verify-client: on sharing a host with an Ingress using optional_no_ca forwarded Ssl-Client-Verify: SUCCESS, together with the subject and issuer chosen by the client, for a certificate that was never verified, and an Ingress without its own auth-tls-secret or without auth-tls-pass-certificate-to-upstream had no middleware handling these headers, so the values sent by the client reached the backend.

From traefik/traefik's security advisory. Shortened; the full text is there.

Affected software

SoftwareAffected versions
TraefikServers and applications · github:traefik/traefik
  • From 3.7.15 before 3.7.18
  • From 3.8.0-rc.1 before 3.8.0-rc.2

References