CVE-2026-73413 json
Shescape: Quadratic-time denial of service in flag-protection
published 2026-07-24 3 mo ago modified 2026-10-24 16 d ago also EUVD-2026-57527 , GHSA-gm3r-q2wp-hw87
- cvss
- 8.7
- version 4.0, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.6%
- EPSS 0.6% chance of exploitation in 30 days, percentile 48%
- public exploits
- 0
- none known
Summary
Shescape is a simple shell escape library for JavaScript. From 2.1.11 until 2.1.14 and 3.0.1, the flag-protection loop in compose in src/internal/compose.js repeatedly joins and slices flag fragments when flagProtection is enabled, which is the default, making processing quadratic in input size across the escape, escapeAll, quote, and quoteAll APIs. An attacker who can supply a large untrusted input containing many flag fragments can consume CPU and cause denial of service. This issue is fixed in versions 2.1.14 and 3.0.1.
Patch / fix
- npm shescape 2.1.14, 3.0.1
- shescape_project shescape 2.1.14, 3.0.1
- github.com/ericcornelissen/shescape@43d70b5 commit
- github.com/ericcornelissen/shescape@b4b34c3 commit
- github.com/ericcornelissen/shescape#2649 pull request
- github.com/ericcornelissen/shescape#2651 pull request
- github.com/ericcornelissen/shescape/releases/tag/v2.1.14 release
- github.com/ericcornelissen/shescape/releases/tag/v3.0.1 release
CISA SSVC
- Exploitation
- none
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 2 mo ago
Exploit prediction
0.59% chance of exploitation in the next 30 days, higher than 48% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 8.7 | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N |
| CNA | 4.0 | 8.7 | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | shescape | >=2.1.11, <2.1.14 >=3.0.0, <3.0.1 |
2.1.14 3.0.1 |
Affected products
- ericcornelissen shescape
Classification
References
-
github.com
/ericcornelissen/shescape/pull/2649
web
-
github.com
/ericcornelissen/shescape/pull/2651
web
-
github.com
/ericcornelissen/shescape/commit/43d70b59d09bbe5c3fd02ef08b3a123e977ed9de
web
-
github.com
/ericcornelissen/shescape/commit/b4b34c394e7f9da2775bb75381066b9a228c425f
web
-
github.com
/ericcornelissen/shescape/security/advisories/GHSA-gm3r-q2wp-hw87
web
-
github.com
/ericcornelissen/shescape/releases/tag/v2.1.14
web
-
github.com
/ericcornelissen/shescape/releases/tag/v3.0.1
web
-
github.com
/ericcornelissen/shescape
package
-
github.com
/ericcornelissen/shescape/blob/dea8893a5877893d8d4923dbf253080e08899e6d/docs/migration.md
web
Sources
- CVE List CVE-2026-73413
- GitHub Advisory GHSA-gm3r-q2wp-hw87
- NVD CVE-2026-73413
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.