Skip to main content
← All vulnerabilities
CVE-2024-45410GO-2024-3135GHSA-62C8-MH53-4CQV

HTTP client can remove the X-Forwarded headers in Traefik

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 2.11.9, 3.1.3
1 proof of concept on GitHub
  • Exploitation: none
  • Automatable: yes
  • Technical impact: total

Summary

Traefik is a golang, Cloud Native Application Proxy. When a HTTP request is processed by Traefik, certain HTTP headers such as X-Forwarded-Host or X-Forwarded-Port are added by Traefik before the request is routed to the application. For a HTTP client, it should not be possible to remove or modify these headers. Since the application trusts the value of these headers, security implications might arise, if they can be modified. For HTTP/1.1, however, it was found that some of theses custom headers can indeed be removed and in certain cases manipulated. The attack relies on the HTTP/1.1 behavior, that headers can be defined as hop-by-hop via the HTTP Connection header. This issue has been addressed in release versions 2.11.9 and 3.1.3. Users are advised to upgrade. There are no known workarounds for this vulnerability.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: yes · Technical impact: total

  3. Record last updated

Affected versions

  • traefik traefik

    fixed in 2.11.9; From 3.0.0 · fixed in 3.1.3

  • github.com/traefik/traefikGo

    All versions

  • github.com/traefik/traefik/v2Go

    fixed in 2.11.9

  • github.com/traefik/traefik/v3Go

    From 3.0.0-beta3 · fixed in 3.1.3

  • github.com/traefik/traefikGo

    fixed in 2.11.9

References 4

GitHub · traefik/traefik

GitHub · jphetphoumy/traefik-CVE-2024-45410-poc