GitHub Advisoryadvisory · Go
GHSA-6qq8-5wq3-86rp Traefik vulnerable to Open Redirect via handling of X-Forwarded-Prefix header
MEDIUM
Official page ↗
- Aliases
- CVE-2020-15129
- Ecosystem
- Go
- Packages
- github.com/traefik/traefik, github.com/traefik/traefik/v2, github.com/containous/traefik, github.com/containous/traefik/v2, github.com/traefik/traefik/api, github.com/traefik/traefik/v2/pkg/api, github.com/containous/traefik/api, github.com/containous/traefik/v2/pkg/api
- Severity
- Moderate
- CVSS vector
- CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:N/I:H/A:N
- Weaknesses
- CWE-601
- Reviewed
- 2021-05-24
Affected packages
• Go github.com/traefik/traefik: >= 1.5.0-rc5, < 1.7.26 → fixed in 1.7.26
• Go github.com/traefik/traefik/v2: < 2.3.0-rc6 → fixed in 2.3.0-rc6
• Go github.com/containous/traefik: >= 1.5.0-rc5, < 1.7.26 → fixed in 1.7.26
• Go github.com/containous/traefik/v2: < 2.2.8 → fixed in 2.2.8
• Go github.com/traefik/traefik/v2: >= 2.3.0-rc1, < 2.3.0-rc6 → fixed in 2.3.0-rc6
• Go github.com/containous/traefik/v2: >= 2.3.0-rc1, < 2.3.0-rc3 → fixed in 2.3.0-rc3
• Go github.com/traefik/traefik/api: >= 1.5.0-rc5, < 1.7.26 → fixed in 1.7.26
• Go github.com/traefik/traefik/v2/pkg/api: < 2.3.0-rc6 → fixed in 2.3.0-rc6
• Go github.com/traefik/traefik/v2/pkg/api: >= 2.3.0-rc1, < 2.3.0-rc6 → fixed in 2.3.0-rc6
• Go github.com/containous/traefik/api: >= 1.5.0-rc5, < 1.7.26 → fixed in 1.7.26
• Go github.com/containous/traefik/v2/pkg/api: < 2.2.8 → fixed in 2.2.8
• Go github.com/containous/traefik/v2/pkg/api: >= 2.3.0-rc1, < 2.3.0-rc3 → fixed in 2.3.0-rc3
Description
Summary
There exists a potential open redirect vulnerability in Traefik's handling of the `X-Forwarded-Prefix` header. Active Exploitation of this issue is unlikely as it would require active header injection, however the Traefik team addressed this issue nonetheless to prevent abuse in e.g. cache poisoning scenarios.
Details
The Traefik API dashboard component doesn't validate that the value of the header `X-Forwarded-Prefix` is a site relative path and will redirect to any header provided URI.
e.g.
```
$ curl --header 'Host:traefik.localhost' --header 'X-Forwarded-Prefix:https://example.org' 'http://localhost:8081'
Found.`
```
Impact
A successful exploitation of an open redirect can be used to entice victims to disclose sensitive information.
Workarounds
By using the `headers` middleware, the request header `X-Forwarded-Prefix` value can be overridden by the value `.` (dot)
• https://docs.traefik.io/v2.2/middlewares/headers/#customrequestheaders
• https://docs.traefik.io/v1.7/basics/#custom-headers
For more information
If you have any questions or comments about this advisory, open an issue in Traefik.
Credit
This issue was found by the GitHub Application Security Team and reported on behalf of the GHAS by the GitHub Security Lab Team.
Related
Alias · CVE (1)
- CVE-2020-15129 In Traefik before versions 1.7.26, 2.2.8, and 2.3.0-rc3, there exists a potential open redirect vulnerability in Traefik's handling of the… vulnerability
Weakness · CWE (1)
- CWE-601 URL Redirection to Untrusted Site weakness
References
- https://github.com/containous/traefik/security/advisories/GHSA-6qq8-5wq3-86rp web
- https://nvd.nist.gov/vuln/detail/CVE-2020-15129 advisory
- https://github.com/containous/traefik/pull/7109 web
- https://github.com/containous/traefik/commit/cfa04c300c5db95ae8a52c31a9d973b6dd9c2254 web
- https://github.com/containous/traefik/commit/e63db782c11c7b8bfce30be4c902e7ef8f9f33d2 web
- https://github.com/traefik/traefik/commit/e2c5f3712f68993de8ed3cb30da9ec0aa11acb09 web
- https://github.com/containous/traefik/releases/tag/v1.7.26 web
- https://github.com/containous/traefik/releases/tag/v2.2.8 web
- https://github.com/containous/traefik/releases/tag/v2.3.0-rc3 web
- https://github.com/traefik/traefik package