Description
Improper Handling of Case Sensitivity vulnerability in elixir-tesla tesla allows credential leakage to a third-party origin on cross-origin redirects. Tesla.Middleware.FollowRedirects strips security-sensitive headers on cross-origin redirects using a case-sensitive string comparison against a lowercase filter list (@filter_headers ["authorization", "host"]). HTTP header names are case-insensitive per RFC 7230, but Tesla preserves header keys verbatim as supplied by the caller without normalizing case. A header set as {"Authorization", "Bearer …"} (the RFC 7235 canonical casing used by virtually all HTTP libraries and documentation) does not match the lowercase filter entry and is forwarded to the redirect destination. An attacker who can control or influence a Location: response seen by the client (via their own endpoint, a redirect-open upstream, or a compromised origin) receives the bearer token or other Authorization material on the cross-origin request. This issue affects tesla: from 1.4.0 before 1.18.3.
Problem types
CWE-178 Improper Handling of Case Sensitivity
Product status
1.4.0 (semver) before 1.18.3
2d937d5813d7cda5cd726f41824985fb655c920f (git) before db963dba67651b9abd1fc420a1d9679cf6efe182
Credits
Peter Ullrich
Yordis Prieto
Jonatan Männchen
References
github.com/.../tesla/security/advisories/GHSA-9m9w-gxf7-rh8m
github.com/.../tesla/security/advisories/GHSA-9m9w-gxf7-rh8m
cna.erlef.org/cves/CVE-2026-48595.html
osv.dev/vulnerability/EEF-CVE-2026-48595
github.com/...ommit/db963dba67651b9abd1fc420a1d9679cf6efe182