chore(dependencies): update dependency vega to v5.32.0 [security] #370
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.23.0->5.32.0GitHub Vulnerability Alerts
CVE-2025-25304
Summary
The
vlSelectionTuplesfunction can be used to call JavaScript functions, leading to XSS.Details
vlSelectionTuplescalls multiple functions that can be controlled by an attacker, including one call with an attacker-controlled argument.Example call:
vlSelectionTuples([{datum:<argument>}], {fields:[{getter:<function>}]})This can be used to call
Function()with arbitrary JavaScript and the resulting function can be called withvlSelectionTuplesor using a type coercion to calltoStringorvalueOf.PoC
CVE-2025-26619
Impact
In
vega5.30.0 and lower,vega-functions5.15.0 and lower , it was possible to call JavaScript functions from the Vega expression language that were not meant to be supported.Patches
Patched in
vega5.31.0/vega-functions5.16.0Workarounds
Is there a way for users to fix or remediate the vulnerability without upgrading?
vegawithoutvega.expressionInterpreter. This mode is not the default as it is slower.References
Reproduction of the error in Vega by @mattijn
CVE-2025-27793
Impact
Users running Vega/Vega-lite JSON definitions could run unexpected JavaScript code when drawing graphs, unless the library is used with the
vega-interpreter.Workarounds
vegawith expression interpreter5.32.0)POC Summary
Calling
replacewith aRegExp-like pattern callsRegExp.prototype[@​@​replace], which can then call an attacker-controlledexecfunction.POC Details
Consider the function call
replace('foo', {__proto__: /h/.constructor.prototype, global: false}). SincepatternhasRegExp.prototype[@​@​replace],pattern.exec('foo')winds up being called.The resulting malicious call looks like this:
Since functions cannot be returned from this, an attacker that wishes to escalate to XSS must abuse
event.viewto gain access toeval.Reproduction steps
Release Notes
vega/vega (vega)
v5.32.0Compare Source
Changes since v5.31.0
vega-expression
vega-expressionandvega-interpreter(via #4009). (Thanks @hydrosquall!)vega-typings
vega-loader(via #4000). (Thanks @hydrosquall!)docs
expressions.md(via #3996). (Thanks @dangotbanned!)crossfilter.md(via #4005). (Thanks @danmarshall!)v5.31.0Compare Source
changes since v5.30.0
vega-utils
Object.hasOwninstead ofObject.prototype.hasOwnProperty(via #3951). (Thanks @domoritz!)vega-parser
vega-functions
vega-selections
monorepo
docs
v5.30.0Compare Source
Changes since v5.29.0
vega-functions
docs
monorepo
vega-*deps in topological order to eliminate version mismatches within the monorepo (via #3932). (Thanks @lsh!)v5.29.0Compare Source
docs
monorepo
vega-encode
vega-scale
vega-scenegraph
vega-typings
vega-view
v5.28.0Compare Source
changes from v5.27.0
docs
vega-parser
nice(via #3887). (Thanks @lsh!)vega-scenegraph
vega-typings
aggregate_paramsto window transform type (#3874). (Thanks @julieg18!)v5.27.0Compare Source
changes from v5.26.1:
docs
monorepo
codeownersfile. (Thanks @domoritz!)vega-scenegraph
devicePixelRatio(via #3844). (Thanks @lsh!)vega-transforms
sum([invalid]) -> undefined(via #3849). (Thanks @nicolaskruchten!)vega-typings
vega-view
devicePixelRatiochange (via #3844). (Thanks @lsh!)v5.26.1Compare Source
Changes from v5.26.1:
vega-scenegraph
vega-typings
v5.26.0Compare Source
Changes from v5.25.0:
vega-functions
vega-scale
vega-scenegraph
vega-selections
vega-transforms
vega-typings
vega-voronoi
v5.25.0Compare Source
Changes from v5.24.0:
monorepo
vega-cli
ppiresolution parameter for PNG output. (thanks @davidanthoff!)vega-expression
hypotfunction. (thanks @domoritz!)vega-functions
hypot.vega-regression
vega-statistics
vega-transforms
vega-util
splitAccessPath#3724 (thanks @suchanlee!)v5.24.0Compare Source
Changes from v5.23.0:
monorepo
vega-force
strength.vega-schema
strength.vega-typings
strength.Configuration
📅 Schedule: Branch creation - "" in timezone UTC, Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, 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.