Vulnerability · Published Sep 6, 2022 · Assigned by GitHub_M
CVE-2022-36064Shescape Inefficient Regular Expression Complexity vulnerability
Medium 5.9
In plain English
A medium-severity regular-expression denial of service in shescape from ericcornelissen. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 1.5% (higher than 74% of all known vulnerabilities).
Official description
Shescape is a shell escape package for JavaScript. An Inefficient Regular Expression Complexity vulnerability impacts users that use Shescape to escape arguments for the Unix shells `Bash` and `Dash`, or any not-officially-supported Unix shell; and/or using the `escape` or `escapeAll` functions with the `interpolation` option set to `true`. An attacker can cause polynomial backtracking or quadratic runtime in terms of the input string length due to two Regular Expressions in Shescape that are vulnerable to Regular Expression Denial of Service (ReDoS). This bug has been patched in v1.5.10. For `Dash` only, this bug has been patched since v1.5.9. As a workaround, a maximum length can be enforced on input strings to Shescape to reduce the impact of the vulnerability. It is not recommended to try and detect vulnerable input strings, as the logic for this may end up being vulnerable to ReDoS itself.
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| ericcornelissen | shescape | >= 1.5.1, < 1.5.10 |
Weakness: CWE-1333, CWE-400 · Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
References
- https://github.com/ericcornelissen/shescape/security/advisories/GHSA-gp75-h7j6-5pv3 x_refsource_CONFIRM
- https://github.com/ericcornelissen/shescape/pull/373 x_refsource_MISC
- https://github.com/ericcornelissen/shescape/releases/tag/v1.5.10 x_refsource_MISC