The normalize-url package before 4.5.1, 5.x before 5.3.1, and 6.x before 6.0.1 for Node.js has a ReDoS (regular expression denial of service) issue because it has exponential performance for data: URLs.
The product uses a regular expression with an inefficient, possibly exponential worst-case computational complexity that consumes excessive CPU cycles.
Name | Vendor | Start Version | End Version |
---|---|---|---|
Normalize-url | Normalize-url_project | 4.3.0 (including) | 4.5.1 (excluding) |
Normalize-url | Normalize-url_project | 5.0.0 (including) | 5.3.1 (excluding) |
Normalize-url | Normalize-url_project | 6.0.0 (including) | 6.0.0 (including) |
Attackers can create crafted inputs that
intentionally cause the regular expression to use
excessive backtracking in a way that causes the CPU
consumption to spike.