Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSubmit crafted dotted path via user input
-
ExploitPass '__proto__' segment into set()
-
ExecutionPollute Object.prototype globally
-
ImpactBypass authorization flag or crash process
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V3 - Web Frontend Security Prototype pollution prevention
MITRE ATT&CK
2 techniques across 2 tactics: Execution, Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires a consuming application to call dot-access's set() with an attacker-influenced dotted path - specifically a path whose segments include '__proto__' (e.g., user-supplied field names, JSON keys, or form parameters flowing unsanitized into set()). Per the provided CVSS 4.0 vector (PR:N/UI:N/AC:L), no authentication or user interaction is modeled at the library boundary, but the real limiting factor is integration-specific: the flaw is only reachable when untrusted input controls the path argument. Applications that only pass trusted, static, or validated keys to set() are not exposed. Impact is prototype pollution affecting authorization flags and option defaults (integrity) or a process crash (availability/DoS). |
| Impact | This is a prototype pollution flaw (CWE-1321) in the npm library dot-access (vendor slug 'ntharim') affecting all versions through 1.0.0. The supplied CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N) with VI:H and VA:L yields a base score of 8.8, signaling network-reachable, low-complexity exploitation with high integrity impact and a lesser availability (DoS) impact, and no confidentiality impact (VC:N). A public proof-of-concept exists (R3tro16 gist), so publicly available exploit code exists; however there is no CISA KEV listing and no EPSS score in the provided data, so there is no confirmed active exploitation and no modeled exploitation probability to corroborate the high CVSS. The most important caveat: this is a library vulnerability whose reachability is entirely contingent on a consuming application passing attacker-controlled input as the dotted path to set(). The PR:N/AV:N rating therefore describes the worst-case integration (user-supplied field names flow into set()), not an intrinsic remote entry point of the library itself. Net assessment: the real-world priority is moderated heavily by prevalence - dot-access is an obscure, tiny-footprint package with no enterprise deployment signal - so despite the high integrity impact and available POC, this is a targeted-dependency concern rather than a widespread emergency. Teams should prioritize it only if dot-access appears in their dependency tree and feeds untrusted keys to set(). |
| Exploit ScenarioDerived | An application uses dot-access's set() to map user-submitted field names (e.g., from a JSON body or form) into a nested configuration or user object. An attacker submits a field name containing a '__proto__' segment such as '__proto__.isAdmin', polluting Object.prototype so that all objects inherit the injected property - flipping an authorization flag or an option default, or supplying a value type that later crashes the process (DoS). A public proof-of-concept is available in the referenced gist. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 08, 2026
Prototype pollution in dot-access through 1.0.0 allows remote attackers to modify Object.prototype when a consuming application passes an attacker-influenced dotted path to set(). By injecting __proto__ path segments, attackers can alter authorization flags or option defaults across all objects and may crash the process; the flaw is CWE-1321, rated 8.8 in CVSS 4.0, and assessed as CVSS 3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:L with high integrity and low availability impact. No public exploit identified at time of analysis and no CISA KEV confirmation; exploitation is integration-specific because the path argument must be attacker-controlled.
RemediationAI
No vendor-released patch is identified in the supplied data; monitor https://github.com/ntharim/dot-access/issues/5 and the VulnCheck advisory https://www.vulncheck.com/advisories/dot-access-through-1.0.0-prototype-pollution-via-set-path-argument for a fixed version, and upgrade to that exact release once specified. Until a patch is available, do not pass untrusted input as the path to set(); validate and allowlist path segments with a strict pattern and reject any segment equal to __proto__, constructor, or prototype before calling the library. Refactor call sites to use Map, Object.create(null), or a hardened setter that treats paths as literal keys and does not traverse prototypes, accepting the trade-off of broader code changes. As defense in depth, freeze Object.prototype with Object.freeze(Object.prototype) or run Node.js with --disable-proto=throw so __proto__ traversal throws, but note these can break libraries or application code that rely on dynamic prototype access or mutation. Also restrict and validate user-supplied field names, JSON keys, and form parameters at the API boundary so they cannot reach dot-access as dot-delimited paths.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
dot-access is an npm utility for reading and writing nested object values via dot-delimited paths. The set() implementation at https://github.com/ntharim/dot-access/blob/v1.0.0/index.js#L9-L18 does not reject special path segments such as __proto__, constructor, or prototype, so a path like __proto__.isAdmin can walk to Object.prototype and define properties on it. This is CWE-1321 prototype pollution. The supplied CPE cpe:2.3:a:ntharim:dot-access:*:*:*:*:*:*:*:* confirms all versions through 1.0.0 are affected. The CVSS 4.0 vector has AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:L/SC:N/SI:N/SA:N and the independent assessment maps it to CVSS 3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:L: confidentiality impact is none, integrity impact is high from polluted authorization flags and defaults, and availability impact is low from a possible process crash. Reachability is conditional: a consuming application must pass an untrusted, attacker-controlled dotted path into set(); applications that only pass static or validated keys are not exposed.
Know when Prototype Pollution gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:L/SC:N/SI:N/SA:N
Network-reachable via untrusted input to set() with no auth or interaction modeled (AV:N/AC:L/PR:N/UI:N); prototype pollution corrupts integrity (I:H) and can crash the process (A:L), with no data disclosure (C:N).
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
dot-access through 1.0.0 contains a prototype pollution vulnerability that allows attackers to modify Object.prototype by supplying a crafted dotted path to set(). Attackers controlling the path, such as through user-supplied field names, can use __proto__ segments to inject properties into all objects, altering authorization flags and option defaults or crashing the process.
Executive ViewAI
A high-severity flaw in the dot-access library (versions through 1.0.0) allows an attacker who can influence a dotted path value passed into the library's set() function to silently alter core object behavior across a consuming application, including authorization flags and default options. Because the defect lives in a widely embeddable utility rather than a single product, exposure depends on which internal or customer-facing services accept externally influenced path inputs; those services could experience weakened access controls or process crashes. Leadership should care because the integrity of authorization decisions can be undermined without any credentials, even though no public exploit code or confirmed active exploitation has been identified at time of analysis.
No vendor-released patch identified at time of analysis. Interim mitigations: enforce strict allow-list validation and reject __proto__, constructor, and prototype path segments before they reach set(); wrap or replace the library with a safe path-setting utility; freeze Object.prototype and other critical prototypes where feasible; restrict which callers can supply path arguments; add logging and alerting for prototype-pollution path patterns; and prioritize monitoring of authorization-related behavior in affected services.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
More in Prototype Pollution
View allPrototype pollution in Adobe Acrobat Reader versions 24.001.30356, 26.001.21367 and earlier enables arbitrary code execu
All versions of package dojo are vulnerable to Prototype Pollution via the setObject function. Rated critical severity (
Prototype pollution in the farinspace Partners WordPress plugin (versions up to and including 0.2.0) enables remote unau
The package handlebars before 4.7.7 are vulnerable to Prototype Pollution when selecting certain compiling options to co
This affects the package ini before 1.3.6. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitabl
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
EUVD-2026-95147
GHSA-mcgm-wx64-jv4w
NVD
CVE.org
EPSS
Exploit-DB