CVE-2026-33228: flatted: Prototype Pollution via parse()
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.
Security readout for executives and security teams
Plain-English summary
CVE-2026-33228 affects the JavaScript package flatted before 3.4.2. A crafted parsed value can expose Array.prototype to application code, creating a path to prototype pollution if the application later writes to that property. The issue is rated critical, but the provided sources do not show active exploitation.
Executive priority
Treat this as urgent for internet-facing or data-ingestion services using flatted. Prioritize rapid dependency inventory and upgrade, while noting that the provided evidence does not establish active exploitation.
Technical view
flatted parse() accepted attacker-controlled string values as array index keys without numeric validation. Using "__proto__" can resolve through the Array prototype chain and return Array.prototype as a parsed value. If consumer code mutates that returned property, global prototype pollution can follow. Version 3.4.2 patches the issue.
Likely exposure
Exposure is most likely in Node.js or browser JavaScript applications that use flatted versions below 3.4.2 and parse attacker-controlled serialized data. Transitive dependency exposure should be checked through lockfiles, SBOMs, and deployed artifacts.
Exploitation context
The source bundle lists KEV as false and provides no cited evidence of in-the-wild exploitation. Practical impact depends on an application reaching vulnerable parse() behavior and then writing to the leaked prototype reference.
Researcher notes
The core issue is type/key confusion inside parse() over an internal JavaScript Array. The vulnerability appears to create a live Array.prototype reference; pollution requires later mutation by consuming code. Sources identify the fix release and commit, but do not provide exploit telemetry.
Mitigation direction
Upgrade flatted to version 3.4.2 or later.
Rebuild and redeploy affected applications after dependency updates.
Use dependency overrides if flatted is only present transitively.
Review Red Hat advisories for vendor-packaged remediation status.
Monitor upstream and vendor guidance for any revised impact notes.
Validation and detection
Search SBOMs and lockfiles for flatted versions below 3.4.2.
Confirm deployed artifacts no longer contain vulnerable flatted versions.
Identify code paths where parse() handles external or untrusted data.
Review scanners for CVE-2026-33228 findings across repositories and images.
Check vendor errata for affected Red Hat-distributed packages.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · low confidence lookup
CWE-1321: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
2CVSS vectors
5Timeline events
2ADP providers
10Source links
SSVC decision data
CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: pocAutomatable: yesTechnical Impact: total
CVSS vector scores
2 official scores
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-1321 · source CWE mapping
Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution')
Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution') represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.
Improperly Controlled Modification of Dynamically-Determined Object Attributes
Improperly Controlled Modification of Dynamically-Determined Object Attributes represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.