Severity 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:P/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
Low-privilege network vector; scope change applies because prototype pollution corrupts the shared JavaScript runtime, affecting components beyond the library's own security domain.
Primary rating from Vendor (VulDB).
CVSS VectorVendor: VulDB
Lifecycle Timeline
4DescriptionCVE.org
A security vulnerability has been detected in sagold json-schema-library 11.5.0/11.5.1. This impacts the function parsePropertyDependencies of the file src/keywords/propertyDependencies.ts. The manipulation leads to improperly controlled modification of object prototype attributes. The attack can be initiated remotely. Upgrading to version 11.6.0 will fix this issue. The identifier of the patch is 432287ee6f68a02ce6f015354618486ec427a32d. It is advisable to upgrade the affected component.
AnalysisAI
Prototype pollution in sagold json-schema-library 11.5.0 and 11.5.1 allows remote low-privileged attackers to corrupt the JavaScript Object prototype by supplying crafted schema definitions or input data containing reserved keys such as __proto__ processed by the parsePropertyDependencies function. The CVSS 4.0 vector confirms low-privilege network exploitation with limited but real confidentiality, integrity, and availability impact; the E:P supplemental metric confirms proof-of-concept code exists. No CISA KEV listing is present, so confirmed mass exploitation is not established at time of analysis.
Technical ContextAI
sagold json-schema-library is a TypeScript/JavaScript library for compiling and validating JSON Schema documents. The vulnerable function parsePropertyDependencies in src/keywords/propertyDependencies.ts constructed internal mapping dictionaries using plain {} object literals, which inherit from Object.prototype. Because attacker-supplied keys such as __proto__ are not sanitized before being used as property names on these dictionaries, assignment flows directly into the prototype chain. CWE-1321 (Improperly Controlled Modification of Object Prototype Attributes) precisely describes this root cause. The fix, confirmed in commit 432287ee6f68a02ce6f015354618486ec427a32d, replaces all three vulnerable {} initializations in propertyDependencies.ts and mergeSchema.ts with Object.create(null), creating prototype-free dictionaries, and introduces a hasProperty guard to prevent traversal of inherited keys.
RemediationAI
Upgrade sagold json-schema-library to version 11.6.0, available at https://github.com/sagold/json-schema-library/releases/tag/v11.6.0, which resolves the vulnerability via commit 432287ee6f68a02ce6f015354618486ec427a32d. Where immediate upgrade is not feasible, sanitize all schema definitions at the application boundary by rejecting or stripping keys matching __proto__, constructor, and prototype before passing schemas or data to the library; this imposes an ongoing allowlisting burden and may be brittle if schema structures evolve. Restricting application-layer access so that only trusted, internally authored schemas are processed by the library eliminates the attack surface entirely without patching, but this control requires architectural review to confirm no external input path reaches the validation pipeline.
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
EUVD-2026-45161
GHSA-gf3x-ww5j-mxxm