antv layout CVE-2026-15598
MEDIUMSeverity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Network-reachable with low-privilege authentication required per CVSS 4.0 PR:L; scope unchanged as prototype pollution impacts are bounded to the vulnerable application runtime.
Primary rating from Vendor (VulDB).
CVSS VectorVendor: VulDB
Lifecycle Timeline
1DescriptionCVE.org
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.
AnalysisAI
Prototype pollution in antv layout 2.0.0 exposes JavaScript runtimes to object prototype manipulation via the setNestedValue function in lib/util/object.js, where a crafted path argument can inject arbitrary properties into the global Object prototype. The CVSS 4.0 vector (AV:N/AC:L/PR:L) indicates network-reachable exploitation requiring low-privilege authentication, with limited but real confidentiality, integrity, and availability impact depending on how downstream application code consumes polluted prototype properties. No public exploit code has been identified and the vulnerability is not listed in CISA KEV; however, the vendor has not responded to the responsible disclosure filed via GitHub issue #292, leaving no patch timeline available.
Technical ContextAI
antv layout is a JavaScript graph layout library maintained by the AntV visualization team (Alibaba/Ant Group). The vulnerable code resides in lib/util/object.js within the setNestedValue function, which sets nested properties on objects using a user-supplied path argument. CWE-1321 (Improperly Controlled Modification of Object Prototype Attributes) describes a class of JavaScript flaw where unsanitized path segments such as __proto__, constructor, or prototype allow attackers to inject properties into the base Object prototype, affecting all objects created within the same JavaScript runtime. The CPE string cpe:2.3:a:antv:layout:*:*:*:*:*:*:*:* uses a wildcard version field, suggesting the vulnerability may not be limited to 2.0.0, though that is the only version explicitly cited in the CVE description. Prototype pollution impact is highly context-dependent: the injected properties affect security controls only when downstream code reads prototype-chain properties in a security-sensitive path.
RemediationAI
No vendor-released patch has been identified at time of analysis; the project was notified via GitHub issue #292 but has not responded. As an immediate compensating control, applications passing user-controlled data to antv layout's setNestedValue should sanitize path arguments by rejecting or stripping segments equal to __proto__, constructor, and prototype before the call reaches the library. A broader defense is to call Object.freeze(Object.prototype) at application startup, which prevents any prototype pollution from modifying the base prototype at runtime - note this can break libraries that legitimately augment the prototype, so compatibility testing is required. Wrapping or replacing setNestedValue with a safe recursive setter that explicitly checks for prototype-chain keys is a more surgical alternative with lower compatibility risk. Developers should monitor https://github.com/antvis/layout/issues/292 and the npm package page for a patched release, and consider pinning the dependency with a manual patch (via patch-package) until an official fix is available.
More in Prototype Pollution
View allPrototype pollution in Adobe Acrobat Reader versions 24.001.30356, 26.001.21367 and earlier enables arbitrary code execu
Prototype pollution in the farinspace Partners WordPress plugin (versions up to and including 0.2.0) enables remote unau
Prototype pollution vulnerability in 'deephas' versions 1.0.0 through 1.0.5 allows attacker to cause a denial of service
A Prototype Pollution issue in Cronvel Tree-kit v.0.7.4 and before allows a remote attacker to execute arbitrary code vi
A Prototype Pollution issue in Aliconnect /sdk v.0.0.6 allows an attacker to execute arbitrary code via the aim function
All versions of the package safe-eval are vulnerable to Prototype Pollution via the safeEval function, due to improper s
This affects the package vm2 before 3.9.4 via a Prototype Pollution attack vector, which can lead to execution of arbitr
Prototype Pollution in chargeover redoc v2.0.9-rc.69 allows attackers to execute arbitrary code or cause a Denial of Ser
alizeait unflatto <= 1.0.2 was discovered to contain a prototype pollution via the method exports.unflatto at /dist/inde
A vulnerability exists in the 'dagre-d3-es' Node.js package version 7.0.9, specifically within the 'bk' module's addConf
A Prototype Pollution vulnerability in the util-deps.addFileDepend function of magix-combine-ex versions thru 1.2.10 all
Chartist 1.x through 1.3.0 allows Prototype Pollution via the extend function. Rated critical severity (CVSS 9.8), this
Same technique Information Disclosure
View allShare
External POC / Exploit Code
Leaving vuln.today