Versions of the package semver before 7.5.2 are vulnerable to Regular Expression Denial of Service (ReDoS) via the function new Range, when untrusted user data is provided as a range.
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 |
---|---|---|---|
Semver | Npmjs | * | 5.7.2 (excluding) |
Semver | Npmjs | 6.0.0 (including) | 6.3.1 (excluding) |
Semver | Npmjs | 7.0.0 (including) | 7.5.2 (excluding) |
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.