Description
ExcelJS through 4.4.0 contains a regular expression denial of service vulnerability in slideFormula in lib/utils/shared-formula.js when translating shared formulas to child cells. Attackers can supply a crafted spreadsheet with very long master formulas, such as runs of hyphens, causing quadratic regex backtracking that blocks the Node.js event loop.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| https://github.com/guyonroche | exceljs | 0 ≤4.4.0 | — |
References
- https://github.com/exceljs/exceljs
- https://github.com/mateocallec/exceljs-hardened/security/advisories/GHSA-pr65-54q8-vhqm
- https://github.com/exceljs/exceljs/blob/v4.4.0/lib/utils/shared-formula.js#L4-L12
- https://www.vulncheck.com/advisories/exceljs-through-4.4.0-redos-via-slideformula-shared-formula-translation