CVE-2026-29074

SVGO: DoS through entity expansion in DOCTYPE (Billion Laughs)

State
Published
Severity
7.5 High
Published
Mar 6, 2026
Updated
Sep 10, 2026
Reserved
Mar 3, 2026

Read the record on cve.org

Description

SVGO, short for SVG Optimizer, is a Node.js library and command-line application for optimizing SVG files. From version 2.1.0 to before version 2.8.1, from version 3.0.0 to before version 3.3.3, and before version 4.0.1, SVGO accepts XML with custom entities, without guards against entity expansion or recursion. This can result in a small XML file (811 bytes) stalling the application and even crashing the Node.js process with JavaScript heap out of memory. This issue has been patched in versions 2.8.1, 3.3.3, and 4.0.1.

Scores

CVSSScoreVectorSource
3.17.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:HGitHub_M
3.17.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:Hredhat-SADP

Weaknesses

  • CWE-776 Improper Restriction of Recursive Entity References in DTDs ('XML Entity Expansion')

Affected Products

ProductVersions
svgosvg
  • >= 2.1.0, < 2.8.1Affected
  • >= 3.0.0, < 3.3.3Affected
  • = 4.0.0Affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.