Authorization header leaks to third-party origin on cross-origin redirect in Tesla.Middleware.FollowRedirects
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| elixir-tesla | tesla | unaffected |
|
||||||
| elixir-tesla | tesla | unaffected |
|
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Elixir-tesla | Tesla |
|
||||||||
| Elixir-tesla | Tesla |
|
Vendor Workaround
Normalize all header keys to lowercase before passing them to Tesla. Use "authorization" instead of "Authorization" when setting headers via Tesla.put_header/3 or Tesla.Middleware.Headers.
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-9m9w-gxf7-rh8m | Tesla: Authorization header leaks on cross-origin redirect via case-sensitive filtering |
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.487% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
cvssV3_1
|
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| 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. | |
| Title | Authorization header leaks to third-party origin on cross-origin redirect in Tesla.Middleware.FollowRedirects | |
| First Time appeared |
Elixir-tesla
Elixir-tesla tesla |
|
| Weaknesses | CWE-178 | |
| CPEs | cpe:2.3:a:elixir-tesla:tesla:*:*:*:*:*:*:*:* | |
| Vendors & Products |
Elixir-tesla
Elixir-tesla tesla |
|
| References |
| |
| Metrics |
cvssV4_0
|