CVE-2026-15598
Deferred Deferred - Pending Action

Improper Prototype Pollution in AntV Layout 2.0.0

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

Publication date: 2026-07-13

Last updated on: 2026-07-14

Assigner: VulDB

Description

A weakness has been identified in antv layout 2.0.0. This impacts the function setNestedValue in the library lib/util/object.js. Executing a manipulation of the argument path can lead to improperly controlled modification of object prototype attributes. The attack can be launched remotely. The project was informed of the problem early through an issue report but has not responded yet.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-07-13
Last Modified
2026-07-14
Generated
2026-08-03
AI Q&A
2026-07-14
EPSS Evaluated
2026-08-01
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
antv layout 2.0.0

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-94 The product constructs all or part of a code segment using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the syntax or behavior of the intended code segment.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

CVE-2026-15598 is a prototype pollution vulnerability in the antv layout library version 2.0.0. The issue occurs in the setNestedValue function located in lib/util/object.js.

The function setNestedValue takes a dot-separated path and writes a value into a target object. However, it does not properly filter or sanitize dangerous prototype keys like __proto__ or constructor.prototype. This allows attackers to manipulate the Object.prototype, leading to prototype pollution.

Prototype pollution can cause unexpected behavior in applications, such as logic bypasses, denial of service, or other security issues, especially if the function is used with user-controlled input.

  • The vulnerability can be exploited remotely.
  • The project was informed of the issue but has not responded yet.
Detection Guidance

Detecting this vulnerability involves checking if the affected version of the @antv/layout library is present in your system or dependencies. Since the vulnerability is related to prototype pollution in the setNestedValue function, you can also look for usage of this function with untrusted input.

  • Check for the presence of @antv/[email protected] in your project dependencies. You can use the following command in a Node.js project directory: npm list @antv/layout or yarn list @antv/layout.
  • Search your codebase for usage of the setNestedValue function from @antv/layout or @antv/util. Look for instances where user-controlled input is passed as the path argument. Example command: grep -r "setNestedValue" --include="*.js" /path/to/project.
  • If you are using static analysis tools, configure them to detect prototype pollution patterns, such as assignments to __proto__, prototype, or constructor in JavaScript code.

There are no specific network-based detection methods for this vulnerability, as it is a code-level issue rather than a network-exploitable flaw.

Impact Analysis

If you are using the antv layout library version 2.0.0, this vulnerability could impact you in several ways:

  • Prototype pollution: Attackers can manipulate the Object.prototype, which may lead to unexpected behavior in your application.
  • Security risks: If your application uses setNestedValue with user-controlled input, it could result in logic bypasses, denial of service, or other security issues.
  • Remote exploitation: The vulnerability can be exploited remotely, increasing the risk of attack.
  • Potential downstream effects: If other parts of your application or dependencies rely on the integrity of the Object.prototype, they may also be affected.
Compliance Impact

The impact of this vulnerability on compliance with standards and regulations depends on how the affected library is used in your systems:

  • GDPR: If the vulnerability leads to unauthorized access or manipulation of personal data, it could result in a data breach. Under GDPR, organizations must protect personal data and report breaches within 72 hours. Failure to do so could lead to fines or penalties.
  • HIPAA: If the affected library is used in a healthcare application handling protected health information (PHI), the vulnerability could lead to unauthorized access or disclosure of PHI. This would violate HIPAA's Security Rule, which requires safeguards to protect PHI. Non-compliance could result in fines or legal action.
  • General security standards: Many compliance frameworks (e.g., ISO 27001, NIST) require organizations to maintain secure systems and address vulnerabilities promptly. Failure to patch or mitigate this vulnerability could result in non-compliance with these standards.

Since the vulnerability allows for remote exploitation and potential data manipulation, it is critical to assess whether your systems handle sensitive or regulated data. If they do, this vulnerability could pose a significant compliance risk.

Mitigation Strategies

To mitigate this vulnerability, follow these immediate steps:

  • Upgrade the @antv/layout package to a patched version if one is available. As of now, no patched version has been released, so monitor the project repository or issue tracker for updates.
  • If upgrading is not possible, apply a temporary fix by modifying the setNestedValue function to reject or safely handle dangerous path segments. Specifically, block paths containing __proto__, prototype, or constructor before processing them.
  • Review your codebase to ensure that user-controlled input is not passed directly to the setNestedValue function. Sanitize or validate all input paths to prevent prototype pollution.
  • If your application relies on @antv/layout for critical functionality, consider implementing runtime protections such as using Object.freeze(Object.prototype) to prevent prototype pollution attacks.
  • Monitor the GitHub issue (https://github.com/antvis/layout/issues/292) for updates or patches from the maintainers.

Chat Assistant

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

EPSS Chart