flatted: Unbounded recursion DoS in parse() revive phase
21Vexday Risk Score
No sign of exploitation. No public exploitation artifact known so far.
ssvc Trackcvss 7.5epss 0.8%
exploitation probability
0.8%top 45% of all CVEs
observed exploitation
nono source reports it
flatted is a circular JSON parser. Prior to 3.4.0, flatted's parse() function uses a recursive revive() phase to resolve circular references in deserialized JSON. When given a crafted payload with deeply nested or self-referential $ indices, the recursion depth is unbounded, causing a stack overflow that crashes the Node.js process. This vulnerability is fixed in 3.4.0.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Affected products
WebReflection · flattedReferences
https://access.redhat.com/errata/RHSA-2026:13826https://access.redhat.com/errata/RHSA-2026:21772https://access.redhat.com/errata/RHSA-2026:34342https://access.redhat.com/errata/RHSA-2026:36651https://access.redhat.com/errata/RHSA-2026:40118https://access.redhat.com/errata/RHSA-2026:40945https://access.redhat.com/errata/RHSA-2026:5807https://access.redhat.com/errata/RHSA-2026:9742https://access.redhat.com/security/cve/CVE-2026-32141https://bugzilla.redhat.com/show_bug.cgi?id=2447083https://github.com/WebReflection/flatted/commit/7eb65d857e1a40de11c47461cdbc8541449f0606https://github.com/WebReflection/flatted/pull/88