HighGHSA-8r6m-32jq-jx6qCVE-2026-73569

fast-xml-parser: Repeated DOCTYPE declarations reset entity expansion limits

Published 21 Jul 2026 · Updated 10 Sept 2026

Affected package

Affected
>=5.9.3 <5.10.1
Fixed in
5.10.1
Update to the fixed version for your release line, for example:npm install fast-xml-parser@5.10.1

Details

Impact

fast-xml-parser processes multiple "DOCTYPE" declarations within a single XML document. Each declaration passes its entities to @nodable/entities through addInputEntities().

addInputEntities() resets the entity expansion counters every time it is called. An attacker can therefore insert additional DOCTYPE declarations to repeatedly reset maxTotalExpansions and maxExpandedLength during one parse operation.

This allows a crafted XML document to exceed the configured entity-expansion limits and can cause excessive CPU use, event-loop blocking, memory exhaustion, and process termination.

Workarounds

  • Manually check if multiple DOCTYPEs are not present in input contents
  • Update to v5.10.1
  • Keep processEntity flag off

Is GHSA-8r6m-32jq-jx6q in any of your client repos?

Checking one package by hand is fine. Checking it across forty client projects is not. NPMscan reads the lockfiles in every GitHub repo you pick, finds each project with an affected fast-xml-parser, and gives you the command that fixes it.

References

Advisory data from OSV.dev (opens OSV.dev in a new tab), refreshed daily.