Update dependency js-yaml to v3.14.2 [SECURITY] #54
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
3.10.0→3.14.2GitHub Vulnerability Alerts
GHSA-8j8c-7jfh-h6hx
Versions of
js-yamlprior to 3.13.1 are vulnerable to Code Injection. Theload()function may execute arbitrary code injected through a malicious YAML file. Objects that havetoStringas key, JavaScript code as value and are used as explicit mapping keys allow attackers to execute the supplied code through theload()function. ThesafeLoad()function is unaffected.An example payload is
{ toString: !<tag:yaml.org,2002:js/function> 'function (){return Date.now()}' } : 1which returns the object
{
"1553107949161": 1
}
Recommendation
Upgrade to version 3.13.1.
GHSA-2pr6-76vf-7546
Versions of
js-yamlprior to 3.13.0 are vulnerable to Denial of Service. By parsing a carefully-crafted YAML file, the node process stalls and may exhaust system resources leading to a Denial of Service.Recommendation
Upgrade to version 3.13.0.
CVE-2025-64718
Impact
In js-yaml 4.1.0, 4.0.0, and 3.14.1 and below, 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.Patches
Problem is patched in js-yaml 4.1.1 and 3.14.2.
Workarounds
You can protect against this kind of attack on the server by using
node --disable-proto=deleteordeno(in Deno, pollution protection is on by default).References
https://cheatsheetseries.owasp.org/cheatsheets/Prototype_Pollution_Prevention_Cheat_Sheet.html
Release Notes
nodeca/js-yaml (js-yaml)
v3.14.2Compare Source
Security
v3.14.1Compare Source
Security
.load()(in &anchor).v3.14.0Compare Source
Changed
safe/loadAll(input, options)variant of call.Fixed
=in plain scalars #519.!<?>tag in case user manually specifies it.v3.13.1Compare Source
Security
.load(), #480.v3.13.0Compare Source
Security
safeLoad()can hang when arrays with nested refsused as key. Now throws exception for nested arrays. #475.
v3.12.2Compare Source
Fixed
noArrayIndentoption for root level, #468.v3.12.1Compare Source
Added
noArrayIndentoption, #432.v3.12.0Compare Source
Changed
v3.11.0Compare Source
Added
!!js/function.Fixed
Configuration
📅 Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.