CVE-2026-118243
MediumCVSS 5.3Exploitation Probability (EPSS)
Low risk29th percentile - higher than 29% of all known CVEs
Summary
Highcharts Dashboards stores DataCursor listener and state maps in plain objects keyed by DataTable ID. A __proto__ table ID supplied through dataPool connector configuration resolves to Object.prototype, creating an enumerable property visible on every object that can throw and break features such as extremes synchronization. The issue affects versions 1.0.0 through 4.2.2 and is fixed in 4.2.2.
Risk Assessment
Organizations using Highcharts dashboards with untrusted configuration may suffer prototype pollution, leading to broken synchronization features and potentially other unexpected application behavior. Exploitation requires an enabled component sync and loading a crafted dashboard.
Recommendation
Upgrade Highcharts Dashboards to version 4.2.2 or later and restrict the ability to supply untrusted dashboard configuration.
Other vulnerabilities in Highcharts Dashboards
See all- CVE-2026-118253High
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.
- CVE-2026-118252High
In Highcharts Dashboards, the edit-mode sidebar parses component language strings as HTML rather than inserting them as text. An attacker controlling the Dashboards language configuration can supply markup with event handlers that execute in the hosting page origin when the sidebar is opened. This is fixed in 4.2.3.
- CVE-2026-118248Medium
Highcharts Dashboards edit mode walks editableOptions propertyPath segments without rejecting prototype-related keys. An attacker controlling editableOptions can provide a path through __proto__ or constructor, and a user's edit writes the configured value onto Object.prototype, affecting JavaScript throughout the page. This is fixed in 4.2.2.
- CVE-2026-118245High
Highcharts Dashboards from 1.0.0 until 4.2.2 uses chartConstructor as an unchecked property lookup in the Highcharts namespace and invokes the selected member with the component container and chartOptions. An attacker who controls dashboard configuration can select a public utility function instead of a supported chart constructor, causing attacker-controlled options to be copied to the container as properties or attributes, and then markup and event handlers can execute in the hosting page origin when the board renders.
Original NVD description (English source)
Highcharts JS is a JavaScript charting library based on SVG. From 1.0.0 until 4.2.2, Highcharts Dashboards stores DataCursor listener and state maps in plain objects keyed by DataTable ID. A __proto__ table ID supplied through dataPool connector configuration resolves to Object.prototype, and sync registration creates an enumerable property there whose suffix can be influenced through the sync group option. The property is visible on every object, and lasting sync states can throw and stop features such as extremes synchronization. Exploitation requires untrusted dashboard configuration and an enabled component sync, but no user interaction beyond loading the board. This issue is fixed in 4.2.2.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

