CVE-2026-118247
Highcharts Dashboards / Grid Pro: `DataTable.setCell` and column writers treat `__proto__` as an existing column.
Impact
Highcharts JS is a JavaScript charting library based on SVG. From 1.0.0 until Dashboards 4.2.2, and from 2.0.0 until Grid Pro 3.2.0, Highcharts DataTable single-cell writers use an untrusted column ID as a key without rejecting __proto__ or constructor. DataTable.setCell, including Dashboards connector write-back and Grid Pro editing paths, can therefore write integer-indexed values onto Object.prototype or the Object constructor. In Dashboards releases with column aliases, a literal __proto__ ID is redirected by the alias map, while an alias targeting __proto__ reaches the unsafe write; later releases without aliases accept the unsafe ID directly. Those inherited values affect array and object reads and for-in enumeration throughout the page, which can alter application control flow or disrupt rendering. Exploitation requires control of the table or component column ID and a cell, point, or API write. This issue is fixed in Dashboards 4.2.2 and Grid Pro 3.2.0.
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| npm | @highcharts/dashboards | >= 1.0.0, <= 4.2.1 | 4.2.2 |
| npm | @highcharts/grid-pro | >= 2.0.0, <= 3.1.0 | 3.2.0 |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://github.com/advisories/GHSA-c75x-9x9h-28rm
- https://github.com/highcharts/highcharts/security/advisories/GHSA-c75x-9x9h-28rm
- https://nvd.nist.gov/vuln/detail/CVE-2026-118247
- https://github.com/highcharts/highcharts/commit/02dd9349aeb6f4cc9c98806120d917ed316b4c74
- https://github.com/highcharts/highcharts/releases/tag/dashboards-v4.2.2
- https://github.com/highcharts/highcharts/releases/tag/grid-v3.2.0