Skip to main content
← All vulnerabilities
CVE-2026-33349GHSA-JP2Q-39XQ-3W4G

fast-xml-parser: Entity Expansion Limits Bypassed When Set to Zero Due to JavaScript Falsy Evaluation

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 5.5.7, 4.5.5
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: poc
  • Automatable: no
  • Technical impact: partial

Summary

fast-xml-parser allows users to process XML from JS object without C/C++ based libraries or callbacks. From version 4.0.0-beta.3 to before version 5.5.7, the DocTypeReader in fast-xml-parser uses JavaScript truthy checks to evaluate maxEntityCount and maxEntitySize configuration limits. When a developer explicitly sets either limit to 0 — intending to disallow all entities or restrict entity size to zero bytes — the falsy nature of 0 in JavaScript causes the guard conditions to short-circuit, completely bypassing the limits. An attacker who can supply XML input to such an application can trigger unbounded entity expansion, leading to memory exhaustion and denial of service. This issue has been patched in version 5.5.7.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: poc · Automatable: no · Technical impact: partial

  3. Record last updated

Affected versions

  • NaturalIntelligence fast-xml-parser

    From 4.0.0-beta.3 · fixed in 5.5.7

  • fast-xml-parsernpm

    From 4.0.0-beta.3 · fixed in 4.5.5

  • fast-xml-parsernpm

    From 5.0.0 · fixed in 5.5.7

References 2

GitHub · NaturalIntelligence/fast-xml-parser