chore(deps): update devdependency devalue to v5.6.4 [security]#1754
Open
renovate[bot] wants to merge 1 commit intomainfrom
Open
chore(deps): update devdependency devalue to v5.6.4 [security]#1754renovate[bot] wants to merge 1 commit intomainfrom
renovate[bot] wants to merge 1 commit intomainfrom
Conversation
commit: |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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:
5.6.3→5.6.4GitHub Vulnerability Alerts
CVE-2025-57820
1.
devalue.parseallows__proto__to be setA string passed to
devalue.parsecould represent an object with a__proto__property, which would assign a prototype to an object while allowing properties to be overwritten:2.
devalue.parseallows array prototype methods to be assigned to objectIn a payload constructed with
devalue.stringify, values are represented as array indices, where the array contains the 'hydrated' values:devalue.parsedoes not check that an index is numeric, which means that it could assign an array prototype method to a property instead:This could be used by a creative attacker to bypass server-side validation.
GHSA-8qm3-746x-r74r
Under certain circumstances,
unevaling untrusted data can produce output code that will create objects with polluted prototypes when laterevaled, meaning the output data can be a different shape from the input data.GHSA-33hq-fvwr-56pm
Under certain circumstances, serializing sparse arrays using
unevalorstringifycould cause CPU and/or memory exhaustion. When this occurs on the server, it results in a DoS. This is extremely difficult to take advantage of in practice, as an attacker would have to manage to create a sparse array on the server — which is impossible in every mainstream wire format — and then that sparse array would have to be run throughunevalorstringify.CVE-2026-30226
In devalue v5.6.3,
devalue.parseanddevalue.unflattenwere susceptible to prototype pollution via maliciously crafted payloads. Successful exploitation could lead to Denial of Service (DoS) or type confusion.GHSA-mwv9-gp5h-frr4
In some circumstances,
devalue.parseanddevalue.unflattencould emit objects with__proto__own properties. This in and of itself is not a security vulnerability (and is possible with, for example,JSON.parseas well), but it can result in prototype injection if downstream code handles it incorrectly:Release Notes
sveltejs/devalue (devalue)
v5.6.4Compare Source
Patch Changes
87c1f3c: fix: reject__proto__keys in malformedObjectwrapper payloadsThis validates the
"Object"parse path and throws when the wrapped value has an own__proto__key.40f1db1: fix: ensure sparse array indices are integers87c1f3c: fix: disallow__proto__keys in null-prototype object parsingThis disallows
__proto__keys in the"null"parse path so null-prototype object hydration cannot carry that key through parse/unflatten.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.