path-to-regexp turns path strings into a regular expressions. In certain cases, path-to-regexp will output a regular expression that can be exploited to cause poor performance. Because JavaScript is single threaded and regex matching runs on the main thread, poor performance will block the event loop and lead to a DoS. The bad regular expression is generated any time you have two parameters within a single segment, separated by something that is not a period (.). For users of 0.1, upgrade to 0.1.10. All other users should upgrade to 8.0.0.
CVE-2024-45296 - High Severity Vulnerability
Vulnerable Libraries - path-to-regexp-0.1.7.tgz, path-to-regexp-1.8.0.tgz, path-to-regexp-2.4.0.tgz
path-to-regexp-0.1.7.tgz
Express style path to RegExp utility
Library home page: https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz
Path to dependency file: /backend/package.json
Path to vulnerable library: /backend/node_modules/path-to-regexp/package.json,/node_modules/express/node_modules/path-to-regexp/package.json
Dependency Hierarchy: - webpack-bundle-analyzer-3.8.0.tgz (Root Library) - express-4.17.1.tgz - :x: **path-to-regexp-0.1.7.tgz** (Vulnerable Library)
path-to-regexp-1.8.0.tgz
Express style path to RegExp utility
Library home page: https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz
Path to dependency file: /package.json
Path to vulnerable library: /node_modules/path-to-regexp/package.json
Dependency Hierarchy: - react-router-dom-5.1.2.tgz (Root Library) - react-router-5.1.2.tgz - :x: **path-to-regexp-1.8.0.tgz** (Vulnerable Library)
path-to-regexp-2.4.0.tgz
Express style path to RegExp utility
Library home page: https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.4.0.tgz
Path to dependency file: /package.json
Path to vulnerable library: /node_modules/fetch-mock/node_modules/path-to-regexp/package.json
Dependency Hierarchy: - fetch-mock-7.3.3.tgz (Root Library) - :x: **path-to-regexp-2.4.0.tgz** (Vulnerable Library)
Found in HEAD commit: 50731d7b248d2728e4e5fda6648192e5a322f08c
Found in base branch: master
Vulnerability Details
path-to-regexp turns path strings into a regular expressions. In certain cases, path-to-regexp will output a regular expression that can be exploited to cause poor performance. Because JavaScript is single threaded and regex matching runs on the main thread, poor performance will block the event loop and lead to a DoS. The bad regular expression is generated any time you have two parameters within a single segment, separated by something that is not a period (.). For users of 0.1, upgrade to 0.1.10. All other users should upgrade to 8.0.0.
Publish Date: 2024-09-09
URL: CVE-2024-45296
CVSS 3 Score Details (7.5)
Base Score Metrics: - Exploitability Metrics: - Attack Vector: Network - Attack Complexity: Low - Privileges Required: None - User Interaction: None - Scope: Unchanged - Impact Metrics: - Confidentiality Impact: None - Integrity Impact: None - Availability Impact: High
For more information on CVSS3 Scores, click here.Suggested Fix
Type: Upgrade version
Origin: https://github.com/pillarjs/path-to-regexp/security/advisories/GHSA-9wv6-86v2-598j
Release Date: 2024-09-09
Fix Resolution (path-to-regexp): 0.1.10
Direct dependency fix Resolution (webpack-bundle-analyzer): 4.3.0
Fix Resolution (path-to-regexp): 0.1.10
Direct dependency fix Resolution (react-router-dom): 5.2.0
Fix Resolution (path-to-regexp): 0.1.10
Direct dependency fix Resolution (fetch-mock): 7.3.6