Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessIdentify app parsing untrusted INI with parse-ini
-
DeliverySubmit INI with __proto__ payload
-
ExploitPollute Object.prototype during parse
-
ExecutionInjected property inherited by all objects
-
PersistTrigger downstream gadget
-
ImpactAuth bypass, DoS, or code execution
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 that a consuming Node.js application actually pass attacker-controlled INI text to parse-ini 1.0.6's parsing routine (index.js) and that the crafted input contain prototype-polluting keys such as '__proto__', 'constructor', or 'prototype'. The high (C:H/I:H/A:H) impact is further gated on the application later consuming the polluted property or a suitable pollution gadget being present; without untrusted input reaching the parser, the network vector implied by AV:N does not materialize. Limiting factors: the flaw is only reachable through applications that both depend on this obscure package and expose it to untrusted input, which is uncommon, and realistic escalation to code execution depends on application-specific gadgets rather than the parser alone. |
| Impact | The signals here conflict sharply and should be weighed together rather than trusting the headline score. The provided CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N, C:H/I:H/A:H = 9.8) and SSVC (Technical Impact: total, Automatable: yes) describe a maximally severe, easily automated flaw. However, EPSS is only 0.02% (5th percentile), SSVC Exploitation is 'none', and there is no public exploit identified at time of analysis, which points to negligible current real-world exploitation. The CVSS network/unauthenticated/no-interaction rating is also optimistic for a library flaw: exploitability depends entirely on whether a downstream application feeds untrusted input into parse-ini and whether a usable pollution gadget exists - a real-world limiter the base score cannot capture. The true C:H/I:H/A:H impact is likewise conditional on the consuming application, not intrinsic to the parser. Net assessment: this is a low-priority issue in practice for most organizations because the package is rarely used, even though any environment that does parse untrusted INI with parse-ini 1.0.6 should treat it seriously. |
| Exploit ScenarioDerived | A Node.js application uses parse-ini 1.0.6 to parse INI configuration or profile data supplied by a user (for example an uploaded settings file or an API field). The attacker submits INI content containing a '__proto__' section/key that sets a property such as isAdmin or a command option, polluting Object.prototype so the application later reads the attacker-controlled value; a reference gist exists but no weaponized public exploit is identified. Depending on downstream gadgets this yields authorization bypass, denial of service, or arbitrary code execution. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jul 23, 2026
Prototype pollution in the npm package parse-ini v1.0.6 lets remote attackers inject properties onto Object.prototype through crafted INI input parsed by index.js, potentially corrupting application state, enabling denial of service, or escalating to remote code execution in downstream Node.js applications. The flaw carries a CVSS 9.8 rating with total technical impact and is flagged automatable by CISA's SSVC, but EPSS is very low (0.02%, 5th percentile) and there is no public exploit identified at time of analysis beyond a reference gist. parse-ini is an obscure, low-adoption library, so real-world exposure is narrow despite the critical score.
RemediationAI
No vendor-released patch identified at time of analysis - the references (a GitHub gist at https://gist.github.com/6en6ar/bdc8e0d472406ab98431f10273cbdbf3 and the npm package page https://www.npmjs.com/package/parse-ini?activeTab=code) point to disclosure material and source, not a fixed release, and no fixed version number is stated in the data. Given the package's obscurity and low maintenance signal, the most reliable remediation is to remove parse-ini 1.0.6 from the dependency tree and migrate to a well-maintained, prototype-pollution-hardened INI parser (for example a parser that drops '__proto__'/'constructor' keys). If the dependency must remain, compensating controls include: never passing untrusted or user-supplied INI content to parse-ini (restrict it to trusted local config only, which eliminates the network attack path); sanitizing input to strip '__proto__', 'constructor', and 'prototype' keys before parsing; and hardening the process by freezing Object.prototype (Object.freeze(Object.prototype)), noting the side effect that code relying on later prototype mutation will break. Monitor https://nvd.nist.gov/vuln/detail/CVE-2025-63703 for a patched version.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in npm
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
parse-ini is a small Node.js library that parses INI-format configuration text into JavaScript objects. The vulnerability is CWE-1321, Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution'): when the parser walks INI keys such as section or nested names, it recursively assigns properties without sanitizing special keys like '__proto__', 'constructor', or 'prototype'. As a result, attacker-controlled INI content can reach and mutate Object.prototype, so every object in the running Node.js process inherits the injected property. Depending on how the host application later reads those polluted properties, this can distort logic, bypass checks, cause crashes, or - if a polluted property flows into a gadget such as a template engine or child_process option - reach arbitrary code execution. The affected code is identified only as index.js() of parse-ini version 1.0.6, per the MITRE/NVD record.
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
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Reachable only when an app feeds untrusted INI to the parser and a gadget exists, so AC:H; integrity/availability high via pollution, confidentiality only low as direct data disclosure is not inherent.
Primary rating from NVD.
CVSS VectorNVD
Lifecycle Timeline
3DescriptionCVE.org
npm package parse-ini v1.0.6 is vulnerable to Prototype Pollution in index.js().
Executive ViewAI
parse-ini v1.0.6, a low-adoption npm package used for INI file parsing, contains a critical prototype pollution vulnerability (CVE-2025-63703) that could corrupt application state, trigger denial of service, or enable remote code execution in dependent applications. Organizations using this package should immediately inventory affected systems; however, practical exploitation risk remains low given the package's narrow adoption and current lack of public exploit activity.
No vendor-released patch identified at time of analysis. Interim mitigations: (1) remove the dependency if parse-ini is not functionally critical; (2) replace with an actively maintained INI parser; (3) if retention required, implement pre-parsing input validation to reject crafted payloads targeting prototype properties, and apply Object.freeze(Object.prototype) in application startup. Monitor npm advisories for vendor-issued patch availability.
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
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
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-2025-209729
GHSA-x72j-hv9f-qqh4
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB