{"answers":{"affected":"24 open source packages ship an affected version, including github.com/containous/traefik/v2, github.com/containous/traefik and github.com/containous/traefik/api. It affects 1 product.","exploited":"It is not confirmed as exploited in the wild, but public exploit code for CVE-2020-15129 exists.","fix":"Upgrade github.com/containous/traefik/v2 to a fixed version for your release line: 2.2.8 or 2.3.0-rc3.","what":"CVE-2020-15129 is a medium-severity vulnerability in Traefik Traefik, published on 30 Jul 2020. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link."},"fix_prompt":"Check this codebase for CVE-2020-15129 and fix it if it is affected.\n\nWhat it is: CVE-2020-15129 is a medium-severity vulnerability in Traefik Traefik, published on 30 Jul 2020. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.\nExploitation: It is not confirmed as exploited in the wild, but public exploit code for CVE-2020-15129 exists.\n\nAffected packages and fixed versions:\n- github.com/containous/traefik/v2 (Go): affected all versions; fixed in 2.2.8\n- github.com/containous/traefik/v2 (Go): affected all versions; fixed in 2.2.8\n- github.com/containous/traefik/v2 (Go): affected from 2.3.0-rc1; fixed in 2.3.0-rc3\n- github.com/containous/traefik/v2 (Go): affected from 2.3.0-rc1; fixed in 2.3.0-rc3\n- github.com/containous/traefik (Go): affected from 1.5.0-rc5; fixed in 1.7.26\n- github.com/containous/traefik (Go): affected from 1.5.0-rc5; fixed in 1.7.26\n- github.com/containous/traefik/api (Go): affected from 1.5.0-rc5; fixed in 1.7.26\n- github.com/containous/traefik/api (Go): affected from 1.5.0-rc5; fixed in 1.7.26\n- github.com/containous/traefik/v2/pkg/api (Go): affected all versions; fixed in 2.2.8\n- github.com/containous/traefik/v2/pkg/api (Go): affected all versions; fixed in 2.2.8\n- github.com/containous/traefik/v2/pkg/api (Go): affected from 2.3.0-rc1; fixed in 2.3.0-rc3\n- github.com/containous/traefik/v2/pkg/api (Go): affected from 2.3.0-rc1; fixed in 2.3.0-rc3\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2020-15129/ (Markdown: https://insights.sbomify.com/CVE-2020-15129/index.md)","id":"CVE-2020-15129","markdown":"https://insights.sbomify.com/CVE-2020-15129/index.md","name":"CVE-2020-15129","record":{"aliases":["GHSA-6qq8-5wq3-86rp"],"analysis":{"component_type":"server_software","fix_type":"upgrade","impacts":["security_bypass"],"network_reachable":"yes","non_default_config":false,"product_category":"Reverse proxy server","requires_auth":"none","summary":"Traefik's API dashboard allows open redirects via the X-Forwarded-Prefix header, potentially exposing users to phishing or cache poisoning attacks.","user_interaction":"required","vuln_class":"open_redirect"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[{"product":"traefik","vendor":"traefik"}],"cvss":{"score":6.1,"severity":"medium","source":"cna","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:N/I:H/A:N","version":"3.1"},"cwes":[{"id":"CWE-601","name":"URL Redirection to Untrusted Site"}],"description":"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 \"X-Forwarded-Prefix\" header. 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. Successful exploitation of an open redirect can be used to entice victims to disclose sensitive information. 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.","ecosystems":["Go"],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":1,"refs":[{"date":null,"kind":"nuclei","ref":"http/cves/2020/CVE-2020-15129.yaml","stars":null,"title":"Traefik - Open Redirect"}],"tier":"weaponised"},"has_fix":true,"headline":"Open redirect in Traefik","id":"CVE-2020-15129","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"Go","product":"traefik:traefik","products":["traefik:traefik"],"type":"open_redirect","year":"2020"},"n_packages":24,"n_references":6,"next":{"headline":"False-positive validity for NFT1 genesis transactions in SLPJS","id":"CVE-2020-15130"},"packages":[{"ecosystem":"Go","fixed":["1.7.26"],"introduced":["1.5.0-rc5"],"last_affected":[],"package":"github.com/containous/traefik","purl":null,"source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["1.7.26"],"introduced":["1.5.0-rc5"],"last_affected":[],"package":"github.com/containous/traefik","purl":"pkg:golang/github.com/containous/traefik","source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["1.7.26"],"introduced":["1.5.0-rc5"],"last_affected":[],"package":"github.com/containous/traefik/api","purl":null,"source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["1.7.26"],"introduced":["1.5.0-rc5"],"last_affected":[],"package":"github.com/containous/traefik/api","purl":"pkg:golang/github.com/containous/traefik/api","source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["2.2.8"],"introduced":["0"],"last_affected":[],"package":"github.com/containous/traefik/v2","purl":null,"source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["2.2.8"],"introduced":["0"],"last_affected":[],"package":"github.com/containous/traefik/v2","purl":"pkg:golang/github.com/containous/traefik/v2","source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["2.3.0-rc3"],"introduced":["2.3.0-rc1"],"last_affected":[],"package":"github.com/containous/traefik/v2","purl":null,"source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["2.3.0-rc3"],"introduced":["2.3.0-rc1"],"last_affected":[],"package":"github.com/containous/traefik/v2","purl":"pkg:golang/github.com/containous/traefik/v2","source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["2.2.8"],"introduced":["0"],"last_affected":[],"package":"github.com/containous/traefik/v2/pkg/api","purl":null,"source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["2.2.8"],"introduced":["0"],"last_affected":[],"package":"github.com/containous/traefik/v2/pkg/api","purl":"pkg:golang/github.com/containous/traefik/v2/pkg/api","source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["2.3.0-rc3"],"introduced":["2.3.0-rc1"],"last_affected":[],"package":"github.com/containous/traefik/v2/pkg/api","purl":null,"source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["2.3.0-rc3"],"introduced":["2.3.0-rc1"],"last_affected":[],"package":"github.com/containous/traefik/v2/pkg/api","purl":"pkg:golang/github.com/containous/traefik/v2/pkg/api","source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["1.7.26"],"introduced":["1.5.0-rc5"],"last_affected":[],"package":"github.com/traefik/traefik","purl":null,"source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["1.7.26"],"introduced":["1.5.0-rc5"],"last_affected":[],"package":"github.com/traefik/traefik","purl":"pkg:golang/github.com/traefik/traefik","source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["1.7.26"],"introduced":["1.5.0-rc5"],"last_affected":[],"package":"github.com/traefik/traefik/api","purl":null,"source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["1.7.26"],"introduced":["1.5.0-rc5"],"last_affected":[],"package":"github.com/traefik/traefik/api","purl":"pkg:golang/github.com/traefik/traefik/api","source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["2.3.0-rc6"],"introduced":["0"],"last_affected":[],"package":"github.com/traefik/traefik/v2","purl":null,"source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["2.3.0-rc6"],"introduced":["0"],"last_affected":[],"package":"github.com/traefik/traefik/v2","purl":"pkg:golang/github.com/traefik/traefik/v2","source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["2.3.0-rc6"],"introduced":["2.3.0-rc1"],"last_affected":[],"package":"github.com/traefik/traefik/v2","purl":null,"source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["2.3.0-rc6"],"introduced":["2.3.0-rc1"],"last_affected":[],"package":"github.com/traefik/traefik/v2","purl":"pkg:golang/github.com/traefik/traefik/v2","source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["2.3.0-rc6"],"introduced":["0"],"last_affected":[],"package":"github.com/traefik/traefik/v2/pkg/api","purl":null,"source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["2.3.0-rc6"],"introduced":["0"],"last_affected":[],"package":"github.com/traefik/traefik/v2/pkg/api","purl":"pkg:golang/github.com/traefik/traefik/v2/pkg/api","source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["2.3.0-rc6"],"introduced":["2.3.0-rc1"],"last_affected":[],"package":"github.com/traefik/traefik/v2/pkg/api","purl":null,"source":"GHSA-6qq8-5wq3-86rp"},{"ecosystem":"Go","fixed":["2.3.0-rc6"],"introduced":["2.3.0-rc1"],"last_affected":[],"package":"github.com/traefik/traefik/v2/pkg/api","purl":"pkg:golang/github.com/traefik/traefik/v2/pkg/api","source":"GHSA-6qq8-5wq3-86rp"}],"prev":{"headline":"Reliance on Cookies without validation in OctoberCMS","id":"CVE-2020-15128"},"products":["traefik"],"published":"2020-07-30","related":[{"cvss_score":9.8,"headline":"HTTP client can remove the X-Forwarded headers in Traefik","id":"CVE-2024-45410","kev_date_added":null,"published":"2024-09-19"},{"cvss_score":9.3,"headline":"Traefik v3.7.0 Authentication Bypass via from-to-www-redirect","id":"CVE-2026-88877","kev_date_added":null,"published":"2026-09-10"},{"cvss_score":9.3,"headline":"Traefik before v2.11.55 and v3.0.0 through v3.7.10 Authentication Bypass via digestAuth","id":"CVE-2026-85595","kev_date_added":null,"published":"2026-09-04"},{"cvss_score":9.1,"headline":"Traefik HTTP/3 Backend NTLM Connection Reuse","id":"CVE-2026-88007","kev_date_added":null,"published":"2026-09-10"},{"cvss_score":8.8,"headline":"Traefik: Rootless HTTP/1 request-target routes as \"/\" but is forwarded verbatim, bypassing path-scoped routing, middleware guards and access logging","id":"CVE-2026-88009","kev_date_added":null,"published":"2026-09-10"},{"cvss_score":8.8,"headline":"Traefik has a possible vulnerability with the path matchers","id":"CVE-2025-32431","kev_date_added":null,"published":"2025-04-21"},{"cvss_score":8.2,"headline":"Traefik v3.7 Authentication Bypass via TLS Option Conflict","id":"CVE-2026-85596","kev_date_added":null,"published":"2026-09-04"}],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"},{"class":"attribution","licence":"US public information, NVD API terms","name":"NVD"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"},{"class":"attribution","licence":"MIT","name":"Nuclei templates"}],"ssvc":{"automatable":null,"exploitation":null,"technical_impact":null},"state":"PUBLISHED","updated":"2024-08-04","vendors":["containous"]},"summary":"Traefik's API dashboard allows open redirects via the X-Forwarded-Prefix header, potentially exposing users to phishing or cache poisoning attacks.","url":"https://insights.sbomify.com/CVE-2020-15129/"}