CVE-2025-21620
published 2025-01-06CVE-2025-21620: Deno is a JavaScript, TypeScript, and WebAssembly runtime with secure defaults. When you send a request with the Authorization header to one domain, and the…
PriorityP341high7.5CVSS 3.1
AVNACLPRNUINSUCHINAN
EPSS
0.51%
42.8th percentile
Deno is a JavaScript, TypeScript, and WebAssembly runtime with secure defaults. When you send a request with the Authorization header to one domain, and the response asks to redirect to a different domain, Deno'sfetch() redirect handling creates a follow-up redirect request that keeps the original Authorization header, leaking its content to that second domain. This vulnerability is fixed in 2.1.2.
Affected
3 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| deno | deno | 0 – 1.46.3 | — |
| deno | deno | >= 2.0.0 < 2.1.2 | 2.1.2 |
| denoland | deno | < 2.1.2 | 2.1.2 |
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
OSV
fetch: Authorization headers not dropped when redirecting cross-origin
osv·2025-01-06
CVE-2025-21620 [HIGH] fetch: Authorization headers not dropped when redirecting cross-origin
fetch: Authorization headers not dropped when redirecting cross-origin
### Summary
When you send a request with the `Authorization` header to one domain, and the response asks to redirect to a different domain, Deno's`fetch()` redirect handling creates a follow-up redirect request that keeps the original `Authorization` header, leaking its content to that second domain.
### Details
The [right behavior](https://fetch.spec.whatwg.org/#ref-for-cors-non-wildcard-request-header-name) would be to drop the `Authorization` header instead, in this scenario. The same is generally applied to `Cookie` and `Proxy-Authorization` headers, and is done for not only host changes, but also protocol/port changes. Generally referred to as "origin".
The [documentation](https://docs.deno.com/runtime/referen
GHSA
fetch: Authorization headers not dropped when redirecting cross-origin
ghsa·2025-01-06
CVE-2025-21620 [HIGH] CWE-200 fetch: Authorization headers not dropped when redirecting cross-origin
fetch: Authorization headers not dropped when redirecting cross-origin
### Summary
When you send a request with the `Authorization` header to one domain, and the response asks to redirect to a different domain, Deno's`fetch()` redirect handling creates a follow-up redirect request that keeps the original `Authorization` header, leaking its content to that second domain.
### Details
The [right behavior](https://fetch.spec.whatwg.org/#ref-for-cors-non-wildcard-request-header-name) would be to drop the `Authorization` header instead, in this scenario. The same is generally applied to `Cookie` and `Proxy-Authorization` headers, and is done for not only host changes, but also protocol/port changes. Generally referred to as "origin".
The [documentation](https://docs.deno.com/runtime/referen
No detection rules found.
No public exploits indexed.
No writeups or analysis indexed.
2025-01-06
Published