CVE-2025-59840

Description

A cross-site scripting (XSS) vulnerability has been identified in the Vega visualization library when applications accept user-supplied Vega specifications and expose Vega objects on the global browser window. An attacker can craft a malicious Vega specification that triggers hidden JavaScript execution through a toString() side effect, leading to DOM-based XSS that may appear reflected or stored depending on how the library is used. When a user opens or interacts with the malicious spec, arbitrary JavaScript executes in the application’s domain, allowing an attacker to steal authentication tokens, manipulate displayed data, or perform unauthorized actions on behalf of the victim, compromising both the confidentiality and integrity of affected applications.

Statement

This vulnerability affects the Vega visualization library when applications expose the Vega runtime or a vega.View instance on the global browser window, a pattern commonly introduced for debugging or interactive development.

Red Hat Product Security has rated this issue High severity, because a remote attacker can craft a malicious Vega specification that, once opened and interacted with by a user, triggers arbitrary script execution in the application’s origin.

The practical impact requires and depends on specific deployment conditions. Applications are only exposed if they (1) accept or render untrusted Vega specifications and (2) must expose Vega objects globally (such as VEGA_DEBUG, vega, or view attached to window). Applications that do not expose these global debugging gadgets or that only render trusted specifications are not affected.

Mitigation

Do not attach vega or vega.View instances to global objects (e.g., window). Remove any VEGA_DEBUG helpers or debugging hooks from production builds.

These mitigations reduce but do not fully eliminate risk, because the underlying vulnerability exists in the expression evaluation design.

Common Vulnerability Scoring System (CVSS) Score Details

Info alert:Important note

CVSS scores for open source components depend on vendor-specific factors (e.g. version or build chain). Therefore, Red Hat's score and impact rating can be different from NVD and other vendors. Red Hat remains the authoritative CVE Naming Authority (CNA) source for its products and services (see Red Hat classifications).

The following CVSS metrics and score provided are preliminary and subject to review.

CVSS v3 Score Breakdown

Red HatNVDcve.org
Base Score8.1N/AN/A
Attack VectorNetworkN/AN/A
Attack ComplexityLowN/AN/A
Privileges RequiredNoneN/AN/A
User InteractionRequiredN/AN/A
ScopeUnchangedN/AN/A
ConfidentialityHighN/AN/A
Integrity ImpactHighN/AN/A
Availability ImpactNoneN/AN/A

Vector

Red Hat: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N

Understanding the Weakness (CWE)

Access Control,Confidentiality

Technical Impact: Bypass Protection Mechanism; Read Application Data

The most common attack performed with cross-site scripting involves the disclosure of private information stored in user cookies, such as session information. Typically, a malicious user will craft a client-side script, which -- when parsed by a web browser -- performs some activity on behalf of the victim to an attacker-controlled system (such as sending all site cookies to a given E-mail address). This could be especially dangerous to the site if the victim has administrator privileges to manage that site. This script will be loaded and run by each user visiting the web site. Since the site requesting to run the script has access to the cookies in question, the malicious script does also.

Integrity,Confidentiality,Availability

Technical Impact: Execute Unauthorized Code or Commands

In some circumstances it may be possible to run arbitrary code on a victim's computer when cross-site scripting is combined with other flaws, for example, "drive-by hacking."

Confidentiality,Integrity,Availability,Access Control

Technical Impact: Execute Unauthorized Code or Commands; Bypass Protection Mechanism; Read Application Data

The consequence of an XSS attack is the same regardless of whether it is stored or reflected. The difference is in how the payload arrives at the server. XSS can cause a variety of problems for the end user that range in severity from an annoyance to complete account compromise. Some cross-site scripting vulnerabilities can be exploited to manipulate or steal cookies, create requests that can be mistaken for those of a valid user, compromise confidential information, or execute malicious code on the end user systems for a variety of nefarious purposes. Other damaging attacks include the disclosure of end user files, installation of Trojan horse programs, redirecting the user to some other page or site, running "Active X" controls (under Microsoft Internet Explorer) from sites that a user perceives as trustworthy, and modifying presentation of content.

Frequently Asked Questions

Want to get errata notifications? Sign up here.