Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

redhat логотип

CVE-2026-88877

Опубликовано: 10 сент. 2026
Источник: redhat
CVSS3: 9.1

Описание

Traefik is a HTTP reverse proxy and load balancer. In versions >= v3.7.0 and <= v3.7.11, the Kubernetes ingress-nginx provider mishandles Ingresses that carry both an authentication annotation and the nginx.ingress.kubernetes.io/from-to-www-redirect annotation. For such Ingresses the provider creates an additional 'sibling' router that matches on the host alone, carries only the RedirectRegex middleware, and still points at the parent router's protected backend service. Because RedirectRegex is not a terminal handler, a request its pattern does not match is forwarded to the backend, and because the redirect pattern only accepts a numeric port while Traefik's host matcher canonicalizes the authority via net.SplitHostPort, a request with a non-numeric or empty port (for example 'Host: www.example.com:x') selects the sibling router, misses the redirect, and is proxied to the protected backend with none of the Ingress's annotation-derived middlewares applied. This discards not only authentication (e.g. BasicAuth) but every annotation-derived middleware, including source-IP allowlisting. Traefik v2 and v3 releases before v3.7.0 are not affected. The issue is fixed in v3.7.12.

A flaw was found in Traefik's Kubernetes ingress-nginx provider. A remote attacker, by sending a specially crafted request with a malformed Host header (e.g., containing a non-numeric port), can bypass security middlewares, including authentication and IP allowlisting. This leads to unauthorized access to protected backend services.

Отчет

A flaw was found in Traefik's Kubernetes ingress-nginx provider (v3.7.0 through v3.7.11) when handling Ingresses carrying both authentication annotations and the nginx.ingress.kubernetes.io/from-to-www-redirect annotation. The provider generates a sibling router with a RedirectRegex middleware that matches on host alone. Requests containing non-numeric or empty ports in the Host header (e.g., Host: www.example.com:x) bypass net.SplitHostPort redirect logic while matching the sibling router, proxying requests directly to backend services without evaluating any annotation-derived security middlewares, including BasicAuth and source-IP allowlists.

Меры по смягчению последствий

Remove the nginx.ingress.kubernetes.io/from-to-www-redirect annotation from Ingress resources that enforce authentication or access control middlewares. Alternatively, implement host redirects using explicit Traefik RedirectScheme middlewares or enforce authentication upstream.

Затронутые пакеты

ПлатформаПакетСостояниеРекомендацияРелиз
Red Hat OpenShift Dev Spacesdevspaces/traefik-rhel9Not affected
Red Hat OpenShift GitOpsopenshift-gitops-1/argo-rollouts-rhel8Not affected
Red Hat OpenShift GitOpsopenshift-gitops-1/argo-rollouts-rhel9Not affected

Показывать по

Дополнительная информация

Статус:

Critical
Дефект:
CWE-639
https://bugzilla.redhat.com/show_bug.cgi?id=2531428github.com/traefik/traefik: Traefik v3.7.0 Authentication Bypass via from-to-www-redirect

9.1 Critical

CVSS3

Связанные уязвимости

CVSS3: 9.8
nvd
5 дней назад

Traefik is a HTTP reverse proxy and load balancer. In versions >= v3.7.0 and <= v3.7.11, the Kubernetes ingress-nginx provider mishandles Ingresses that carry both an authentication annotation and the nginx.ingress.kubernetes.io/from-to-www-redirect annotation. For such Ingresses the provider creates an additional 'sibling' router that matches on the host alone, carries only the RedirectRegex middleware, and still points at the parent router's protected backend service. Because RedirectRegex is not a terminal handler, a request its pattern does not match is forwarded to the backend, and because the redirect pattern only accepts a numeric port while Traefik's host matcher canonicalizes the authority via net.SplitHostPort, a request with a non-numeric or empty port (for example 'Host: www.example.com:x') selects the sibling router, misses the redirect, and is proxied to the protected backend with none of the Ingress's annotation-derived middlewares applied. This discards not only authent

CVSS3: 9.8
debian
5 дней назад

Traefik is a HTTP reverse proxy and load balancer. In versions >= v3.7 ...

CVSS3: 9.8
github
5 дней назад

Traefik is a HTTP reverse proxy and load balancer. In versions >= v3.7.0 and <= v3.7.11, the Kubernetes ingress-nginx provider mishandles Ingresses that carry both an authentication annotation and the nginx.ingress.kubernetes.io/from-to-www-redirect annotation. For such Ingresses the provider creates an additional 'sibling' router that matches on the host alone, carries only the RedirectRegex middleware, and still points at the parent router's protected backend service. Because RedirectRegex is not a terminal handler, a request its pattern does not match is forwarded to the backend, and because the redirect pattern only accepts a numeric port while Traefik's host matcher canonicalizes the authority via net.SplitHostPort, a request with a non-numeric or empty port (for example 'Host: www.example.com:x') selects the sibling router, misses the redirect, and is proxied to the protected backend with none of the Ingress's annotation-derived middlewares applied. This discards not only auth...

9.1 Critical

CVSS3