CVE-2026-118250
Highcharts: dotted series.keys paths write to Object.prototype
Highcharts JS is a JavaScript charting library based on SVG. From 6.1.0 until 11.4.9, 12.6.1, and 3.1.0, Highcharts follows dot-separated series.keys paths without filtering each segment. An attacker who controls series.keys and matching point data can use a path through proto to assign arbitrary named properties to Object.prototype. Those properties are visible to all JavaScript in the page, and no user interaction is required beyond rendering the chart. This issue is fixed in 11.4.9, 12.6.1, and 3.1.0.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- Low
- User interaction
- None
What an attacker can affect
- Confidentiality
- Low
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
7.2
Highcharts: dotted series.keys paths write to Object.prototype
Highcharts JS is a JavaScript charting library based on SVG. From 6.1.0 until 11.4.9, 12.6.1, and 3.1.0, Highcharts follows dot-separated series.keys paths without filtering each segment. An attacker who controls series.keys and matching point data can use a path through proto to assign arbitrary named properties to Object.prototype. Those properties are visible to all JavaScript in the page, and no user interaction is required beyond rendering the chart. This issue is fixed in 11.4.9, 12.6.1, and 3.1.0.
- Record
CVE-2026-118250- CVSS 4.0
- 7.2 High
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:H/VA:H/SC:L/SI:L/SA:L - Weakness
- CWE-1321
- Updated
- 2026-11-03
EUVDEUVD-2026-112364
7.2
Highcharts JS is a JavaScript charting library based on SVG. From 6.1.0 until 11.4.9, 12.6.1, and 3.1.0, Highcharts follows dot-separated series.keys paths without filtering each segment. An attacker who controls series.keys and matching point data can use a path through proto to assign arbitrary named properties to Object.prototype. Those properties are visible to all JavaScript in the page, and no user interaction is required beyond rendering the chart. This issue is fixed in 11.4.9, 12.6.1, and 3.1.0.
- Record
EUVD-2026-112364- CVSS 4.0
- 7.2 High
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:H/VA:H/SC:L/SI:L/SA:L - Updated
- 2026-11-03
GitHub AdvisoriesGHSA-rmqc-xvr3-v46c
7.2
Highcharts: dotted series.keys paths write to Object.prototype
Impact
A dot-separated key path taken from series.keys is followed without filtering the individual segments. An attacker who controls series.keys and the matching point data can use a path such as __proto__.polluted to set arbitrary properties on Object.prototype. The resulting properties are visible to all JavaScript running in the page, not only to the chart. No user interaction is required beyond rendering the chart.
The injected properties are inert until other code on the page reads them, so consequences depend on the consuming application.
Workarounds
Drop-in fix - for any versions affected (6.1.0-13.0.2). Add the below IIFE to run after Highcharts is loaded.
((H)=>{const X = H.isObject;H.Point.prototype.setNestedProperty = function setNestedProperty(t,e,i){let s=i.split(".");return s.some(t=>"__proto__"===t||"constructor"===t)||s.reduce(function(t,i,s,o){let r=o.length-1===s;return t[i]=r?e:X(t[i],!0)?t[i]:{},t[i]},t),t};})(Highcharts);
Obtaining the patched version
The patched releases are available from all the usual distribution channels. With npm, upgrade the affected package to the patched version listed above, for example npm install [email protected]. If you load Highcharts from the CDN, use the versioned URLs on code.highcharts.com, for example https://code.highcharts.com/13.1.1/highcharts.js. For more on each installation method, see the installation guide.
- Record
GHSA-rmqc-xvr3-v46c- CVSS 4.0
- 7.2 High
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:H/VA:H/SC:L/SI:L/SA:L - Weakness
- CWE-1321
- Updated
- 2026-11-02
NVD
7.2
Highcharts JS is a JavaScript charting library based on SVG. From 6.1.0 until 11.4.9, 12.6.1, and 3.1.0, Highcharts follows dot-separated series.keys paths without filtering each segment. An attacker who controls series.keys and matching point data can use a path through proto to assign arbitrary named properties to Object.prototype. Those properties are visible to all JavaScript in the page, and no user interaction is required beyond rendering the chart. This issue is fixed in 11.4.9, 12.6.1, and 3.1.0.
- Record
CVE-2026-118250- CVSS 4.0
- 7.2 High
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:H/VA:H/SC:L/SI:L/SA:L/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - Weakness
- CWE-1321
- Updated
- 2026-11-04
OSV
7.2
Highcharts: dotted series.keys paths write to Object.prototype
Highcharts JS is a JavaScript charting library based on SVG. From 6.1.0 until 11.4.9, 12.6.1, and 3.1.0, Highcharts follows dot-separated series.keys paths without filtering each segment. An attacker who controls series.keys and matching point data can use a path through proto to assign arbitrary named properties to Object.prototype. Those properties are visible to all JavaScript in the page, and no user interaction is required beyond rendering the chart. This issue is fixed in 11.4.9, 12.6.1, and 3.1.0.
- Record
CVE-2026-118250- CVSS 4.0
- 7.2 High
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:H/VA:H/SC:L/SI:L/SA:L - Weakness
- CWE-1321
- Updated
- 2026-11-07
OSVGHSA-rmqc-xvr3-v46c
7.2
Highcharts: dotted series.keys paths write to Object.prototype
Impact
A dot-separated key path taken from series.keys is followed without filtering the individual segments. An attacker who controls series.keys and the matching point data can use a path such as __proto__.polluted to set arbitrary properties on Object.prototype. The resulting properties are visible to all JavaScript running in the page, not only to the chart. No user interaction is required beyond rendering the chart.
The injected properties are inert until other code on the page reads them, so consequences depend on the consuming application.
Workarounds
Drop-in fix - for any versions affected (6.1.0-13.0.2). Add the below IIFE to run after Highcharts is loaded.
((H)=>{const X = H.isObject;H.Point.prototype.setNestedProperty = function setNestedProperty(t,e,i){let s=i.split(".");return s.some(t=>"__proto__"===t||"constructor"===t)||s.reduce(function(t,i,s,o){let r=o.length-1===s;return t[i]=r?e:X(t[i],!0)?t[i]:{},t[i]},t),t};})(Highcharts);
Obtaining the patched version
The patched releases are available from all the usual distribution channels. With npm, upgrade the affected package to the patched version listed above, for example npm install [email protected]. If you load Highcharts from the CDN, use the versioned URLs on code.highcharts.com, for example https://code.highcharts.com/13.1.1/highcharts.js. For more on each installation method, see the installation guide.
- Record
GHSA-rmqc-xvr3-v46c- CVSS 4.0
- 7.2 High
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:H/VA:H/SC:L/SI:L/SA:L - Weakness
- CWE-1321
- Updated
- 2026-11-02
Show 7 moreShow less
OSVCLSA-2026-1793349717 No score
TuxCare security update for highcharts (5 CVEs)
TuxCare rebuilt highcharts to address 5 CVEs. Fixed in 12.5.0-tuxcare.1.
- Record
CLSA-2026-1793349717- Updated
- 2026-11-02
OSVCLSA-2026-1793359199 No score
TuxCare security update for highcharts (2 CVEs)
TuxCare rebuilt highcharts to address 2 CVEs. Fixed in 8.2.2-tuxcare.2.
- Record
CLSA-2026-1793359199- Updated
- 2026-11-02
OSVCLSA-2026-1793363381 No score
TuxCare security update for highcharts (2 CVEs)
TuxCare rebuilt highcharts to address 2 CVEs. Fixed in 7.2.2-tuxcare.2.
- Record
CLSA-2026-1793363381- Updated
- 2026-11-02
OSVCLSA-2026-1793365747 No score
TuxCare security update for highcharts (2 CVEs)
TuxCare rebuilt highcharts to address 2 CVEs. Fixed in 7.2.0-tuxcare.2.
- Record
CLSA-2026-1793365747- Updated
- 2026-11-02
OSVCLSA-2026-1793381330 No score
TuxCare security update for highcharts (1 CVE)
TuxCare rebuilt highcharts to address 1 CVE. Fixed in 6.2.0-tuxcare.4.
- Record
CLSA-2026-1793381330- Updated
- 2026-11-02
OSVCLSA-2026-1793448574 No score
TuxCare security update for highcharts (2 CVEs)
TuxCare rebuilt highcharts to address 2 CVEs. Fixed in 6.1.0-tuxcare.2.
- Record
CLSA-2026-1793448574- Updated
- 2026-11-02
OSVCLSA-2026-1793448681 No score
TuxCare security update for highcharts (2 CVEs)
TuxCare rebuilt highcharts to address 2 CVEs. Fixed in 6.1.3-tuxcare.2.
- Record
CLSA-2026-1793448681- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
highchartsnpm |
12.0.0 up to 12.6.1 | 12.6.1 |
highchartsnpm |
13.0.0 to 13.0.2 | 13.1.0 |
highchartsnpm |
6.1.0 up to 11.4.9 | 11.4.9 |
highchartsTuxCare:npm From an advisory covering 5 CVEs |
12.5.0-tuxcare.0 up to 12.5.0-tuxcare.1, plus listed versions 12.5.0 |
12.5.0-tuxcare.1 |
highchartsTuxCare:npm From an advisory covering 2 CVEs |
8.2.2-tuxcare.0 up to 8.2.2-tuxcare.2, plus listed versions 8.2.28.2.2-tuxcare.1 |
8.2.2-tuxcare.2 |
highchartsTuxCare:npm From an advisory covering 2 CVEs |
7.2.2-tuxcare.0 up to 7.2.2-tuxcare.2, plus listed versions 7.2.27.2.2-tuxcare.1 |
7.2.2-tuxcare.2 |
highchartsTuxCare:npm From an advisory covering 2 CVEs |
7.2.0-tuxcare.0 up to 7.2.0-tuxcare.2, plus listed versions 7.2.07.2.0-tuxcare.1 |
7.2.0-tuxcare.2 |
highchartsTuxCare:npm |
6.2.0-tuxcare.0 up to 6.2.0-tuxcare.4, plus listed versions 6.2.06.2.0-tuxcare.16.2.0-tuxcare.26.2.0-tuxcare.3 |
6.2.0-tuxcare.4 |
highchartsTuxCare:npm From an advisory covering 2 CVEs |
6.1.0-tuxcare.0 up to 6.1.0-tuxcare.2, plus listed versions 6.1.06.1.0-tuxcare.1 |
6.1.0-tuxcare.2 |
highchartsTuxCare:npm From an advisory covering 2 CVEs |
6.1.3-tuxcare.0 up to 6.1.3-tuxcare.2, plus listed versions 6.1.36.1.3-tuxcare.1 |
6.1.3-tuxcare.2 |
highchartsnpm |
13.0.0 up to 13.1.0 | 13.1.0 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected | NVD, OSV | |
| facts | CVE List, EUVD, NVD | |
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-118250 is a high vulnerability (CVSS 7.2) in Highcharts, published October 28, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.36%, the 30th percentile. Fixed in highcharts 12.6.1.
References
github.com/highcharts/highcharts/security/advisories/GHSA-rmqc-xvr3-v46c
github.com/highcharts/highcharts/pull/25313
github.com/highcharts/highcharts/commit/fd4ee8140732618bbe71295aba55398fb1f8fa9e
github.com/highcharts/highcharts/releases/tag/v13.1.0
nvd.nist.gov/vuln/detail/CVE-2026-118250
github.com/advisories/GHSA-rmqc-xvr3-v46c
github.com/CVEProject/cvelistV5/tree/main/cves/2026/118xxx/CVE-2026-118250.json
github.com/highcharts/highcharts