CVE-2024-29041CWE-1286CWE-601

Express.js Open Redirect in malformed URLs

Medium · published March 25, 2024

CVSS v3.1
6.1
EPSS
1%
Percentile
55.6
In the wild
Unconfirmed
What it is

Express.js minimalist web framework for node. Versions of Express.js prior to 4.19.0 and all pre-release alpha and beta versions of 5.0 are affected by an open redirect vulnerability using malformed URLs. When a user of Express performs a redirect using a user-provided URL Express performs an encode [using `encodeurl`](https://github.com/pillarjs/encodeurl) on the contents before passing it to the `location` header. This can cause malformed URLs to be evaluated in unexpected ways by common redirect allow list implementations in Express applications, leading to an Open Redirect via bypass of a properly implemented allow list. The main method impacted is `res.location()` but this is also called from within `res.redirect()`. The vulnerability is fixed in 4.19.2 and 5.0.0-beta.3.

The record
Technical detail
CVSS v3.1
6.1 · MEDIUM
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
CVSS v4.0
Not supplied
EPSS
0.00786 · 55.6th percentile
Weaknesses
CWE-1286 · Improper Validation of Syntactic Correctness of Input; CWE-601 · URL Redirection to Untrusted Site ('Open Redirect')
Published
2024-03-25T20:20Z
EPSS history
Timeline
  • 25 MAR 20:20Z
    Express.js Open Redirect in malformed URLs
    cvelistv5