CVE-2025-64718: CWE-1321: Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution') in nodeca js-yaml
js-yaml is a JavaScript YAML parser and dumper. In js-yaml before 4.1.1 and 3.14.2, it's possible for an attacker to modify the prototype of the result of a parsed yaml document via prototype pollution (`__proto__`). All users who parse untrusted yaml documents may be impacted. The problem is patched in js-yaml 4.1.1 and 3.14.2. Users can protect against this kind of attack on the server by using `node --disable-proto=delete` or `deno` (in Deno, pollution protection is on by default).
AI Analysis
Technical Summary
The vulnerability identified as CVE-2025-64718 affects the js-yaml library, a widely used JavaScript YAML parser and dumper maintained by nodeca. Versions 4.0.0 up to but not including 4.1.1, and all versions below 3.14.2, are vulnerable to prototype pollution via the __proto__ property in YAML documents. Prototype pollution occurs when an attacker can inject or modify properties on an object's prototype, thereby influencing all objects inheriting from that prototype. In this case, parsing a maliciously crafted YAML document allows an attacker to alter the prototype of the resulting JavaScript object, potentially causing unexpected behavior or security issues in applications relying on js-yaml for configuration or data processing. The attack vector is remote and requires no privileges or user interaction, making it feasible for attackers to exploit exposed services that parse untrusted YAML input. The vulnerability impacts integrity (I) but not confidentiality (C) or availability (A), as per the CVSS vector. The issue was addressed in js-yaml versions 4.1.1 and 3.14.2 by sanitizing or restricting prototype modifications during parsing. Additional mitigation includes running Node.js with the --disable-proto=delete flag, which prevents prototype pollution via deletion operations, or using the Deno runtime environment, which has pollution protections enabled by default. No public exploits have been reported yet, but the vulnerability's nature and ease of exploitation warrant prompt remediation.
Potential Impact
For European organizations, this vulnerability poses a risk primarily to the integrity of applications that parse YAML input using vulnerable js-yaml versions. Attackers could manipulate application logic, bypass security controls, or cause erratic behavior by injecting prototype pollution payloads. This can lead to compromised application workflows, data corruption, or indirect privilege escalation if the polluted prototype affects security-critical code paths. Organizations in sectors such as finance, healthcare, and critical infrastructure that rely on Node.js-based services or microservices parsing YAML configurations or data are particularly at risk. The medium severity rating reflects that while confidentiality and availability are not directly impacted, the integrity compromise can have cascading effects on trustworthiness and operational correctness. Given the widespread use of js-yaml in the JavaScript ecosystem, the scope of affected systems is broad, increasing the potential attack surface. The lack of required authentication and user interaction further elevates the risk, especially for publicly accessible services.
Mitigation Recommendations
European organizations should immediately identify all instances of js-yaml usage in their software stacks, including direct dependencies and transitive dependencies in Node.js projects. Upgrading to js-yaml versions 4.1.1 or 3.14.2 is the most effective mitigation. For environments where immediate upgrade is not feasible, running Node.js with the --disable-proto=delete flag can help prevent prototype pollution attacks by disabling prototype deletion operations. Additionally, migrating to the Deno runtime environment can provide built-in protection against such pollution. Organizations should also implement strict input validation and sanitization for YAML inputs, especially if sourced from untrusted or external origins. Employing runtime application self-protection (RASP) or behavior monitoring to detect anomalous prototype modifications can provide additional defense layers. Regular dependency audits and integrating software composition analysis (SCA) tools into CI/CD pipelines will help detect vulnerable versions early. Finally, educating developers about the risks of prototype pollution and secure YAML parsing practices is crucial to prevent future vulnerabilities.
Affected Countries
Germany, United Kingdom, France, Netherlands, Sweden, Italy
CVE-2025-64718: CWE-1321: Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution') in nodeca js-yaml
Description
js-yaml is a JavaScript YAML parser and dumper. In js-yaml before 4.1.1 and 3.14.2, it's possible for an attacker to modify the prototype of the result of a parsed yaml document via prototype pollution (`__proto__`). All users who parse untrusted yaml documents may be impacted. The problem is patched in js-yaml 4.1.1 and 3.14.2. Users can protect against this kind of attack on the server by using `node --disable-proto=delete` or `deno` (in Deno, pollution protection is on by default).
AI-Powered Analysis
Technical Analysis
The vulnerability identified as CVE-2025-64718 affects the js-yaml library, a widely used JavaScript YAML parser and dumper maintained by nodeca. Versions 4.0.0 up to but not including 4.1.1, and all versions below 3.14.2, are vulnerable to prototype pollution via the __proto__ property in YAML documents. Prototype pollution occurs when an attacker can inject or modify properties on an object's prototype, thereby influencing all objects inheriting from that prototype. In this case, parsing a maliciously crafted YAML document allows an attacker to alter the prototype of the resulting JavaScript object, potentially causing unexpected behavior or security issues in applications relying on js-yaml for configuration or data processing. The attack vector is remote and requires no privileges or user interaction, making it feasible for attackers to exploit exposed services that parse untrusted YAML input. The vulnerability impacts integrity (I) but not confidentiality (C) or availability (A), as per the CVSS vector. The issue was addressed in js-yaml versions 4.1.1 and 3.14.2 by sanitizing or restricting prototype modifications during parsing. Additional mitigation includes running Node.js with the --disable-proto=delete flag, which prevents prototype pollution via deletion operations, or using the Deno runtime environment, which has pollution protections enabled by default. No public exploits have been reported yet, but the vulnerability's nature and ease of exploitation warrant prompt remediation.
Potential Impact
For European organizations, this vulnerability poses a risk primarily to the integrity of applications that parse YAML input using vulnerable js-yaml versions. Attackers could manipulate application logic, bypass security controls, or cause erratic behavior by injecting prototype pollution payloads. This can lead to compromised application workflows, data corruption, or indirect privilege escalation if the polluted prototype affects security-critical code paths. Organizations in sectors such as finance, healthcare, and critical infrastructure that rely on Node.js-based services or microservices parsing YAML configurations or data are particularly at risk. The medium severity rating reflects that while confidentiality and availability are not directly impacted, the integrity compromise can have cascading effects on trustworthiness and operational correctness. Given the widespread use of js-yaml in the JavaScript ecosystem, the scope of affected systems is broad, increasing the potential attack surface. The lack of required authentication and user interaction further elevates the risk, especially for publicly accessible services.
Mitigation Recommendations
European organizations should immediately identify all instances of js-yaml usage in their software stacks, including direct dependencies and transitive dependencies in Node.js projects. Upgrading to js-yaml versions 4.1.1 or 3.14.2 is the most effective mitigation. For environments where immediate upgrade is not feasible, running Node.js with the --disable-proto=delete flag can help prevent prototype pollution attacks by disabling prototype deletion operations. Additionally, migrating to the Deno runtime environment can provide built-in protection against such pollution. Organizations should also implement strict input validation and sanitization for YAML inputs, especially if sourced from untrusted or external origins. Employing runtime application self-protection (RASP) or behavior monitoring to detect anomalous prototype modifications can provide additional defense layers. Regular dependency audits and integrating software composition analysis (SCA) tools into CI/CD pipelines will help detect vulnerable versions early. Finally, educating developers about the risks of prototype pollution and secure YAML parsing practices is crucial to prevent future vulnerabilities.
Affected Countries
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- GitHub_M
- Date Reserved
- 2025-11-10T14:07:42.922Z
- Cvss Version
- 3.1
- State
- PUBLISHED
Threat ID: 6915fe5477eaf5a849603956
Added to database: 11/13/2025, 3:50:44 PM
Last enriched: 1/30/2026, 8:08:42 AM
Last updated: 2/6/2026, 2:22:03 AM
Views: 172
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Related Threats
CVE-2026-1974: Denial of Service in Free5GC
MediumCVE-2026-1973: NULL Pointer Dereference in Free5GC
MediumCVE-2026-1972: Use of Default Credentials in Edimax BR-6208AC
MediumCVE-2026-1971: Cross Site Scripting in Edimax BR-6288ACL
MediumCVE-2026-23623: CWE-285: Improper Authorization in CollaboraOnline online
MediumActions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console in Console -> Billing for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.