CVE-2026-55091
Received Received - Intake

flat-to-nested Prototype Pollution in JavaScript Library

Vulnerability report for CVE-2026-55091, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-09-14

Last updated on: 2026-09-14

Assigner: GitHub, Inc.

Description

flat-to-nested converts a hierarchy from a flat representation to a nested representation. Prior to 1.1.2, FlatToNested.prototype.convert in index.js uses attacker-influenced id and parent record fields directly as keys in the plain temp and pendingChildOf objects. When parent or id is __proto__, temp[parent] can resolve to Object.prototype, and initPush() can write attacker-controlled data to the global children prototype property while existing prototype methods remain intact. Any application that passes attacker-influenced flat records to convert() can therefore expose unrelated objects to polluted inherited state, causing application-logic corruption or denial of service and potentially enabling greater impact when a downstream prototype-pollution gadget is present. The constructor and prototype strings are also unsafe inherited-key values in the same lookup design. This issue is fixed in version 1.1.2.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-09-14
Last Modified
2026-09-14
Generated
2026-09-14
AI Q&A
2026-09-14
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
joaonuno flat-to-nested to 1.1.1 (inc)

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-1321 The product receives input from an upstream component that specifies attributes that are to be initialized or updated in an object, but it does not properly control modifications of attributes of the object prototype.
CWE-915 The product receives input from an upstream component that specifies multiple attributes, properties, or fields that are to be initialized or updated in an object, but it does not properly control which attributes can be modified.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

CVE-2026-55091 is a prototype pollution vulnerability in the flat-to-nested-js library. The convert() function uses attacker-controlled id and parent fields from input records as keys in plain JavaScript objects. If parent is set to __proto__, it allows writing data to the global Object.prototype, potentially corrupting application logic or causing denial of service.

Detection Guidance

To detect this vulnerability, check if your system uses the affected flat-to-nested library version (<=1.1.1). Run: npm list flat-to-nested. If installed, verify if your application passes user-controlled data to the convert() function. Inspect code for direct use of id or parent fields as object keys without sanitization.

Impact Analysis

This vulnerability can lead to application-logic corruption, denial of service, or enable privilege escalation if a downstream prototype-pollution gadget exists. It requires no special privileges or user interaction since malicious input is ordinary data.

Compliance Impact

This vulnerability could indirectly affect compliance with GDPR and HIPAA by enabling prototype pollution attacks that corrupt application logic or expose sensitive data. If exploited, it may lead to unauthorized data access, integrity breaches, or denial of service, which are critical concerns under these regulations. However, the direct impact depends on the application's use of the vulnerable library.

Mitigation Strategies

Upgrade the flat-to-nested library to version 1.1.2 or later using: npm update flat-to-nested. If upgrading is not possible, replace plain object lookups with Object.create(null) in the convert() function to prevent prototype pollution. Review application logic for prototype-pollution gadgets.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-55091. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart