Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessInject markup into Dashboards language options
-
ExploitVictim renders fullscreen control in edit mode
-
ExecutionEvent handler executes in page origin
-
ImpactAccess page data, storage and session state
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires ALL of the following per the GHSA advisory: (1) Dashboards edit mode must be enabled (editMode.enabled: true); (2) the viewFullscreen entry must be present among editMode.contextMenu.items; (3) the attacker must be able to get untrusted data into the Dashboards language configuration (the exitFullscreen/viewFullscreen labels); and (4) the fullscreen control must actually be rendered by a user (UI:A). Limiting factors that reduce realistic risk: the attacker needs privileged control over configuration/language options (PR:L - not an anonymous remote attacker), user interaction is needed to render the control, and the exposure disappears entirely in default/hardened deployments that leave edit mode disabled or omit viewFullscreen from the context menu. Affected versions are from 1.0.0 onward (the vendor states fixed in 4.2.3; note the conflicting package record of fixed in 4.2.2). |
| Impact | This is a DOM-based cross-site scripting flaw (CWE-79) in Highcharts Dashboards edit mode, where fullscreen language labels are inserted via innerHTML instead of textContent. The input CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:A/VC:H/VI:H/VA:N/SC:L/SI:L/SA:N) scores 8.4 (High), but the real-world risk is materially constrained by the preconditions rather than the raw score. PR:L indicates the attacker must be authenticated/privileged (they must control the Dashboards language options), and UI:A means the vulnerable control must actually be rendered - the advisory confirms the label is reachable ONLY when edit mode is enabled AND viewFullscreen is present in the context-menu items. No EPSS score was supplied and the CVE is NOT in CISA KEV, so there is no signal of widespread or active exploitation; the vuln.today decision label is 'this_week' (elevated but not emergency), which aligns with a serious-but-gated issue rather than a mass-exploitation event. No working proof-of-concept exploit is present in the input - only the GHSA advisory, the fixing commit, and the release tag. The main conflict in the data concerns the fixed version: the human-readable description and the GHSA summary state the issue is fixed in 4.2.3, while the structured package metadata states vulnerable >= 1.0.0, <= 4.2.1 and fixed in 4.2.2 - this discrepancy must be verified against the vendor release notes before relying on a specific patch floor. Net assessment: a genuine high-impact XSS for anyone who feeds untrusted data into Dashboards language configuration with edit mode active, but not a drop-everything internet-wide emergency given the privilege and configuration gating and the absence of KEV/EPSS/PoC exploitation signals. |
| Exploit ScenarioDerived | An application embeds Highcharts Dashboards with edit mode enabled and viewFullscreen in its context-menu items, and populates the Dashboards language options from a source an attacker can influence (e.g. a tenant-configurable label or a stored setting). The attacker supplies a fullscreen label containing markup with an event handler; when a user opens the context menu and the fullscreen control is rendered, the handler executes in the hosting page origin with full access to page data, storage and session state. No working public exploit is present in the available sources, though the fixing commit (innerHTML → textContent) effectively documents the trigger. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 28, 2026
DOM-based cross-site scripting in Highcharts Dashboards edit mode lets markup placed in the fullscreen language labels execute as script in the hosting page's origin, giving the injected code the same access to page data, storage and session state as the dashboard application itself. The flaw affects the @highcharts/dashboards package from 1.0.0 onward; the vendor advisory states it is fixed in 4.2.3 (the embedded npm package record lists a fix in 4.2.2), and the upstream commit replaces innerHTML with textContent in Fullscreen.setButtonText. Exploitation is constrained: the attacker must control the Dashboards language configuration (PR:L), edit mode must be enabled with viewFullscreen among the context-menu items, and a user must render the control (UI:A), so the trigger surface disappears entirely in deployments that leave edit mode disabled. No public exploit code or CISA KEV entry is associated with this CVE at time of analysis; the priority label is this_week.
RemediationAI
Vendor-released patch: upgrade @highcharts/dashboards to 4.2.3, e.g. npm install @highcharts/dashboards@4.2.3, or, for CDN deployments, switch to a versioned URL such as https://code.highcharts.com/dashboards/4.2.3/dashboards.js; note that the package record in the advisory metadata lists 4.2.2 as the fixed version, so verify the resolved version after install and prefer 4.2.3 per the advisory and release tag. The vendor-documented workaround for those who cannot upgrade yet is to replace Fullscreen.prototype.setButtonText at application startup with the original method using textContent instead of innerHTML - importing the ES module before any board is created, or, for script-tag deployments, taking window.Dashboards.Fullscreen after modules/layout.js loads and before any board is created (the exact snippets are in GHSA-58g7-7f52-h92c); this is a runtime prototype override and will not survive upgrades to the library. Two configuration controls also remove the exposure per the advisory: leaving edit mode disabled (editMode.enabled: false) and omitting viewFullscreen from editMode.contextMenu.items - both eliminate the vulnerable render path but remove editing or fullscreen functionality for legitimate users. The upstream fix is commit f97213bab745e40f628720c21f4e8b31ee3e768b; no CISA KEV entry or confirmed public exploit code exists for this CVE at time of analysis, so the driver for patching is the severity of the XSS impact in dashboards that feed untrusted or tenant-controllable localization data, not observed exploitation.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 3 packages in npm, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Highcharts Dashboards is a JavaScript/SVG dashboarding extension of the Highcharts charting library, and this is a CWE-79 cross-site scripting issue of the DOM-based variety rather than a server-side reflection. The affected code path is Fullscreen.setButtonText in the EditMode module (ts/Dashboards/EditMode/Fullscreen.ts), which wrote the localized exitFullscreen/viewFullscreen strings into the context-menu button via innerElement.innerHTML; the upstream fix commit f97213bab745e40f628720c21f4e8b31ee3e768b changes exactly that assignment to textContent, so any markup in those labels is inserted as inert text instead of being parsed into the DOM. Because the strings come from the Dashboards language configuration and are rendered into the hosting page's origin, event handlers carried in attacker-supplied label markup would run with the dashboard application's privileges over page data, storage and session state. The vulnerable component is gated behind two configuration conditions: edit mode must be enabled (editMode.enabled: true) and viewFullscreen must be present in editMode.contextMenu.items - the label is not reachable otherwise, which is why the practical attack surface is much narrower than a generic charting-library XSS and why the assessed vector carries PR:L and UI:R rather than an anonymous remote path.
Know when Highcharts gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:A/VC:H/VI:H/VA:N/SC:L/SI:L/SA:N
Attacker needs privileged control of language config (PR:L) and the control must be rendered (UI:R); XSS executes in hosting origin crossing a trust boundary (S:C) with high confidentiality and limited integrity impact, no availability effect.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
Highcharts JS is a JavaScript charting library based on SVG. From 1.0.0 until 4.2.3, Highcharts Dashboards edit mode parses fullscreen language labels as HTML rather than inserting them as text. An attacker who controls Dashboards language options can supply markup with event handlers, which execute in the hosting page origin when the fullscreen control is rendered. The label is reachable only when edit mode is enabled and viewFullscreen is present in the context-menu items. This issue is fixed in 4.2.3.
Technical POC Analysis
CWE-79 (Improper Neutralization of Input During Web Page Generation - cross-site scripting), specifically the DOM-based variant: Fullscreen.prototype.setButtonText in Dashboards/EditMode/Fullscreen.j…
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
A high-severity DOM-based cross-site scripting vulnerability (CVE-2026-118253) affects the Highcharts Dashboards library from version 1.0.0 onward, allowing an attacker who can manipulate dashboard language settings to execute script in the context of the hosting application. This could expose sensitive user session data and dashboard content to unauthorized access, impacting teams using Highcharts Dashboards with edit mode enabled-leaving other deployments unaffected.
If patching is delayed, disable edit mode and remove viewFullscreen from context-menu items; restrict the ability to modify dashboard language configuration to trusted administrators only.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
More in Highcharts
View allDOM-based cross-site scripting in Highcharts Grid (@highcharts/grid-lite and @highcharts/grid-pro) versions 2.0.0 throug
Cross-site scripting in Highcharts Dashboards (npm @highcharts/dashboards) from 1.0.0 through 4.2.1 lets an attacker who
Event-handler attribute injection in Highcharts Grid's custom SVG icon definitions (npm packages @highcharts/grid-lite a
Cross-site scripting in Highcharts Grid Pro 2.0.0 through 3.1.0 lets an attacker who can influence column configuration
A DOM-based cross-site scripting flaw in Highcharts Grid lets an attacker who can influence the Grid configuration set c
Improper neutralization of HTML in the Highcharts Dashboards edit-mode sidebar lets markup supplied through the Dashboar
Cross-site scripting in Highcharts JS (Core, plus the Stock, Maps and Gantt builds shipped from the same package) affect
Cross-site scripting in Highcharts JS affects the 10.x branch before 11.4.9, 12.x before 12.6.1, and 13.x through 13.0.2
Prototype pollution in the Highcharts JS charting library (6.1.0 up to 11.4.9, 12.0.0 up to 12.6.1, and 13.0.0 through 1
Prototype pollution in Highcharts JS 13.0.0 through 13.0.2 lets attacker-controlled series point data write integer-keye
Client-side cross-site scripting in Highcharts 12.0.0 through <12.6.1 and 13.0.0 through 13.0.2 - including the Stock, M
SVG anchors whose xlink:href carries a javascript: URL slip past the markup filter that Highcharts applies to href and s
EUVD-2026-112355
GHSA-58g7-7f52-h92c
NVD
CVE.org
Exploit-DB