What’s Vulnerable › Vulnerabilities
CVE-2026-33228: flatted: Prototype Pollution via parse()
- Severity: critical (CVSS 9.8 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.8% probability of exploitation in the next 30 days
- Public exploit or detection template: yes
- Published: 2026-03-20 · updated 2026-09-04
- Weakness: CWE-1321
Description
flatted is a circular JSON parser. Prior to version 3.4.2, the parse() function in flatted can use attacker-controlled string values from the parsed JSON as direct array index keys, without validating that they are numeric. Since the internal input buffer is a JavaScript Array, accessing it with the key "__proto__" returns Array.prototype via the inherited getter. This object is then treated as a legitimate parsed value and assigned as a property of the output object, effectively leaking a live reference to Array.prototype to the consumer. Any code that subsequently writes to that property will pollute the global prototype. This issue has been patched in version 3.4.2.
Affected products
- WebReflection flatted: before 3.4.2 — fixed in 3.4.2
- Npm Flatted: before 3.4.2 — fixed in 3.4.2
How to fix
Upgrade to a fixed version: WebReflection flatted 3.4.2; Npm Flatted 3.4.2. Check the vendor advisory for mitigations.
References
- https://github.com/WebReflection/flatted/commit/885ddcc33cf9657caf38c57c7be45ae1c5272802
- https://github.com/WebReflection/flatted/releases/tag/v3.4.2
- https://github.com/WebReflection/flatted/security/advisories/GHSA-rf6f-7fwh-wjgh
- https://access.redhat.com/errata/RHSA-2026:13826
- https://access.redhat.com/errata/RHSA-2026:34342
- https://access.redhat.com/errata/RHSA-2026:9742
- https://access.redhat.com/security/cve/CVE-2026-33228
- https://bugzilla.redhat.com/show_bug.cgi?id=2449872
- https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-33228.json
Get alerted when CVE-2026-33228 or the next vulnerability affects your stack