CVE-2025-65110
DOM XSS in Vega Visualization Library via Global Object Exposure
Publication date: 2026-01-05
Last updated on: 2026-01-05
Assigner: GitHub, Inc.
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| unknown_vendor | vega | to 6.1.2|end_excluding=5.6.3 (exc) |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-79 | The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users. |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
This vulnerability affects the Vega visualization grammar library prior to versions 6.1.2 and 5.6.3. It occurs when an application attaches both the vega library and a vega.View instance to the global window object (or similar global scope gadgets) and allows user-defined Vega JSON definitions. Under these conditions, an attacker can trick a user into opening a malicious Vega specification, leading to arbitrary JavaScript code execution (DOM XSS) within the application's domain. This requires user interaction to trigger and can compromise the application's confidentiality and integrity.
How can this vulnerability impact me? :
Exploitation of this vulnerability allows an attacker to execute arbitrary JavaScript code in the context of the affected application. This can lead to theft of sensitive information such as authentication tokens, manipulation of data displayed to the user, or execution of unauthorized actions on behalf of the victim, thereby compromising the confidentiality and integrity of the application.
What immediate steps should I take to mitigate this vulnerability?
To mitigate this vulnerability immediately, do not attach the `vega` library or `vega.View` instances to global variables or the window object, as this practice is intended only for development debugging and should be avoided when Vega/Vega-lite definitions can come from untrusted sources. Additionally, upgrade to patched versions: use `[email protected]` for Vega v6 (which requires ESM) or `[email protected]` for Vega v5 (no ESM needed).
How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:
This vulnerability allows arbitrary JavaScript code execution, which can lead to theft of sensitive information such as authentication tokens and manipulation of data. Such compromises affect the confidentiality and integrity of impacted applications, potentially causing non-compliance with standards and regulations like GDPR and HIPAA that require protection of sensitive data and user privacy.