Skip to main content

Highcharts Dashboards EUVDEUVD-2026-112302

| CVE-2026-118243 MEDIUM
Improperly Controlled Modification of Object Prototype Attributes (Prototype Pollution) (CWE-1321)
2026-10-28 GitHub_M GHSA-jqgh-w3cc-7jqw
5.3
CVSS 4.0 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Supply __proto__ table id via dataPool config
  2. Delivery
    Load board with sync enabled
  3. Exploit
    Sync registration resolves id to Object.prototype
  4. Execution
    Enumerable listener property written to prototype
  5. Impact
    Lasting sync state throws, breaks extremes synchronization

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V3 - Web Frontend Security Prototype pollution prevention
MITRE ATT&CK

2 techniques across 2 tactics: Execution, Initial Access

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires three concrete conditions, all satisfiable through the same untrusted configuration: (1) attacker-controlled input must reach the Highcharts Dashboards configuration - specifically a dataPool connector whose DataTable id is set to '__proto__' (or 'constructor'); (2) a component sync that keeps lasting states, such as 'highlight' or 'extremes', must be enabled on a component using that table; and (3) the sync 'group' option can append an attacker-chosen suffix to the fixed state-prefix property name. Limiting factors that reduce real-world risk: the application must trust and pass untrusted data into the board configuration (not a default/standalone deployment behavior), the vector carries PR:L so some privilege/config control is required, affected versions are 1.0.0 through 4.2.1 only, and the injected property is inert until other page code reads or enumerates it - so downstream impact depends on the consuming application rather than being automatic.

Impact

Signals are consistent and point to a genuine but low-to-moderate priority. The provided CVSS 4.0 base score is 5.3 (medium) with AV:N/AC:L/AT:N/PR:L/UI:N and only Low integrity/availability impact, no confidentiality impact. The vendor priority Decision label is 'this_month' - not act_now or emergency - which matches a standard-cycle patch rather than an urgent one. No EPSS score and no KEV status were provided in the input, so there is no evidence of active exploitation; this is not a confirmed in-the-wild issue. A public PoC reference exists (a jsfiddle live demo/testing link in the advisory) but it is not verified as working exploit code and primarily demonstrates the pollution and workaround. The decisive limiter is the precondition: exploitation requires attacker-controlled dashboard configuration to reach Highcharts Dashboards (a malicious dataPool connector table id of __proto__) plus an enabled component sync - this is a configuration-trust/design flaw, not remote-unauthenticated exploitation of a default deployment, consistent with PR:L in the vector. Real-world impact is modest: it writes one enumerable property onto Object.prototype and can throw and break lasting sync states such as extremes (a self-DoS of charting features); any further consequence is inert until other page code enumerates the property, so it depends on the consuming application. Net: real and worth patching on a normal cycle, not a high-urgency emergency despite the 'prototype pollution' label.

Exploit ScenarioDerived

An attacker who can influence the Highcharts Dashboards configuration - for example an application that feeds untrusted data into dashboard/dataPool config - supplies a connector with a DataTable id of '__proto__'. When a component with an enabled sync such as 'highlight' or 'extremes' loads the board, sync registration resolves that id to Object.prototype and creates an enumerable listener-array property there, visible on every object and breaking lasting sync states. A public PoC/demo reference (jsfiddle) exists but is not verified as working exploit code; no user interaction is required beyond loading the board (CVSS AV:N/AC:L/UI:N, but PR:L requires control over the configuration).

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 28, 2026

Prototype pollution in Highcharts Dashboards 1.0.0 through 4.2.1 lets an attacker who controls dashboard configuration supply a DataTable id of __proto__ or constructor and, with an enabled stateful sync such as highlight or extremes, create an enumerable property on Object.prototype whose name suffix is influenced by the sync group option. The injected property is normally inert but can break sync bookkeeping, cause exceptions that stop features like extremes synchronization, and affect any page code that reads or enumerates it; exploitation requires untrusted data to reach the Dashboards dataPool and sync configuration and no user interaction beyond loading the board. The issue is fixed in 4.2.2; no confirmed active exploitation or CISA KEV entry is reported, and the advisory's public live demo and testing reference is not verified as working exploit code.

RemediationAI

Upgrade @highcharts/dashboards to 4.2.2 or later; package metadata lists vulnerable >= 1.0.0 and <= 4.2.1 with the fix in 4.2.2, while the advisory's installation examples use npm install @highcharts/dashboards@4.2.3 and the CDN URL https://code.highcharts.com/dashboards/4.2.3/dashboards.js. If upgrading is not immediately possible, apply the advisory's drop-in IIFE workaround after Highcharts Dashboards loads for affected versions 1.0.0 through 4.2.1; it converts listenerMap and stateMap to null-prototype objects and rejects __proto__ and constructor table IDs, with such IDs becoming auto-generated unique keys, so run it before untrusted dashboard configuration is processed. Advisory: https://github.com/highcharts/highcharts/security/advisories/GHSA-jqgh-w3cc-7jqw

Affected VersionsENISA

highcharts 1.0.0, < 4.2.2

Affected Packages

npm @highcharts/dashboards fix: 4.2.2
euvd highcharts fix: 4.2.2

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 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 and SVG dashboarding layer built on Highcharts, and the flaw sits in the DataCursor and DataTable bookkeeping used by dataPool connectors. DataCursor keeps listener and state maps as plain objects keyed by DataTable id, so a table id of __proto__ resolves to Object.prototype when a sync registers listeners and writes a property named from the library's fixed state prefix plus the attacker-influenced sync group suffix; that property is enumerable and visible on every object, and emitting a lasting state for the table id throws. This is CWE-1321 prototype pollution. The source fix in commit ade5a41a700212f09133223ca990a3737d1d9ec6 switches listenerMap and stateMap to Object.create(null) and rejects __proto__ and constructor IDs in DataTableCore, replacing them with auto-generated unique keys. The trigger requires untrusted dashboard configuration and an enabled component sync, as described in the advisory; no other trigger is stated.

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

Vendor (GitHub_M) PRIMARY 5.3 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:L/SC:L/SI:L/SA:L
vuln.today AI 6.4 MEDIUM

Requires attacker control over dashboard configuration so PR:L; polluting shared Object.prototype crosses into other components (S:C); only low integrity/availability (feature DoS), no confidentiality impact.

3.1 AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:L/A:L
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:L/SC:L/SI:L/SA:L

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
Low
Vulnerable system: Availability
Low
Subsequent system: Confidentiality
Low
Subsequent system: Integrity
Low
Subsequent system: Availability
Low

Lifecycle Timeline

1
Patch available
Oct 28, 2026 - 18:18 EUVD

DescriptionCVE.org

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.

Threat Intelligence Overview

Prevalence
Medium
Highcharts is popular, but the Dashboards module is less widely deployed
Threat Intel
1
1 source
Social Media
1
Sightings
Data Quality
4 sources
Confidence: Medium

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS N/A
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

CVE-2026-118254 HIGH POC
8.6 Oct 28

DOM-based cross-site scripting in Highcharts Grid (@highcharts/grid-lite and @highcharts/grid-pro) versions 2.0.0 throug

CVE-2026-118245 HIGH
8.6 Oct 28

Cross-site scripting in Highcharts Dashboards (npm @highcharts/dashboards) from 1.0.0 through 4.2.1 lets an attacker who

CVE-2026-118242 HIGH
8.5 Oct 28

Event-handler attribute injection in Highcharts Grid's custom SVG icon definitions (npm packages @highcharts/grid-lite a

CVE-2026-116797 HIGH
8.5 Oct 28

Cross-site scripting in Highcharts Grid Pro 2.0.0 through 3.1.0 lets an attacker who can influence column configuration

CVE-2026-118255 HIGH POC
8.4 Oct 28

A DOM-based cross-site scripting flaw in Highcharts Grid lets an attacker who can influence the Grid configuration set c

CVE-2026-118253 HIGH
8.4 Oct 28

DOM-based cross-site scripting in Highcharts Dashboards edit mode lets markup placed in the fullscreen language labels e

CVE-2026-118252 HIGH
8.4 Oct 28

Improper neutralization of HTML in the Highcharts Dashboards edit-mode sidebar lets markup supplied through the Dashboar

CVE-2026-118251 HIGH
8.4 Oct 28

Cross-site scripting in Highcharts JS (Core, plus the Stock, Maps and Gantt builds shipped from the same package) affect

CVE-2026-118246 HIGH
8.4 Oct 28

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

CVE-2026-118250 HIGH
7.2 Oct 28

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

CVE-2026-118249 HIGH
7.2 Oct 28

Prototype pollution in Highcharts JS 13.0.0 through 13.0.2 lets attacker-controlled series point data write integer-keye

CVE-2026-118244 HIGH
7.2 Oct 28

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

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy