CVE-2024-29041
MediumVulnerability Description
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.
CVSS Metrics
Common Vulnerability Scoring System
Vector String:
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Known Affected Software
1 configuration(s) from 1 vendor(s)
cpe:2.3:a:openjsf:express:5.0.0:beta1:*:*:*:node.js:*:*
2024-Jun-CVE-2024-29041
CVE-2024-29041: None
2024-Mar-CVE-2024-29041
CVE-2024-29041: Express.js Open Redirect in malformed URLs
CPUJAN2025
Oracle Critical Patch Update Advisory - January 2025
References & Resources
-
https://expressjs.com/en/4x/api.html#res.locationsecurity-advisories@github.com Technical Description
-
https://github.com/expressjs/express/commit/0867302ddbde0e9463d0564fea5861feb708c2ddsecurity-advisories@github.com Patch
-
https://github.com/expressjs/express/commit/0b746953c4bd8e377123527db11f9cd866e39f94security-advisories@github.com Patch
-
https://github.com/expressjs/express/pull/5539security-advisories@github.com Issue Tracking
-
https://github.com/expressjs/express/security/advisories/GHSA-rv95-896h-c2vcsecurity-advisories@github.com Patch Vendor Advisory
-
https://github.com/koajs/koa/issues/1800security-advisories@github.com Issue Tracking
-
https://expressjs.com/en/4x/api.html#res.locationaf854a3a-2127-422b-91ae-364da2661108 Technical Description
-
https://github.com/expressjs/express/commit/0867302ddbde0e9463d0564fea5861feb708c2ddaf854a3a-2127-422b-91ae-364da2661108 Patch
-
https://github.com/expressjs/express/commit/0b746953c4bd8e377123527db11f9cd866e39f94af854a3a-2127-422b-91ae-364da2661108 Patch
-
https://github.com/expressjs/express/pull/5539af854a3a-2127-422b-91ae-364da2661108 Issue Tracking
-
https://github.com/expressjs/express/security/advisories/GHSA-rv95-896h-c2vcaf854a3a-2127-422b-91ae-364da2661108 Patch Vendor Advisory
-
https://github.com/koajs/koa/issues/1800af854a3a-2127-422b-91ae-364da2661108 Issue Tracking
Severity Details
Weakness Type (CWE)
URL Redirection to Untrusted Site ('Open Redirect')
- Description
- The web application accepts a user-controlled input that specifies a link to an external site, and uses that link in a redirect.
- Exploit Likelihood
- Low
- Typical Severity
- High
- Abstraction Level
- Base
Key Information
- Published Date
- March 25, 2024
