{"id":"CVE-2026-118247","state":"PUBLISHED","title":"Highcharts Dashboards / Grid Pro: `DataTable.setCell` and column writers treat `__proto__` as an existing column.","description":"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.","publishedAt":"2026-10-28T17:50:59.526Z","updatedAt":"2026-10-28T17:50:59.526Z","severity":{"score":6.9,"label":"Medium","version":"4.0","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:A/VC:N/VI:L/VA:H/SC:L/SI:L/SA:L","source":"GitHub_M"},"assigner":"GitHub_M","products":["highcharts highcharts","@highcharts dashboards","@highcharts grid-pro"],"affected":[{"vendor":"highcharts","product":"highcharts","versions":[{"version":"< 13.1.0","status":"affected"}]},{"vendor":"@highcharts","product":"dashboards","versions":[{"version":">= 1.0.0, < 4.2.3","status":"affected"}]},{"vendor":"@highcharts","product":"grid-pro","versions":[{"version":">= 2.0.0, < 3.2.0","status":"affected"}]}],"references":["https://github.com/highcharts/highcharts/security/advisories/GHSA-c75x-9x9h-28rm","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"],"weaknesses":["CWE-1321"],"ingestedAt":"2026-10-29T20:10:52.580Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/118xxx/CVE-2026-118247.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-118247","state":"PUBLISHED","datePublished":"2026-10-28T17:50:59.526Z","dateUpdated":"2026-10-28T17:50:59.526Z","assignerShortName":"GitHub_M","assignerOrgId":"a0819718-46f1-4df5-94e2-005712e83aaa","dateReserved":"2026-10-27T20:13:55.313Z"},"containers":{"cna":{"title":"Highcharts Dashboards / Grid Pro: `DataTable.setCell` and column writers treat `__proto__` as an existing column.","descriptions":[{"lang":"en","value":"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":[{"vendor":"highcharts","product":"highcharts","versions":[{"version":"< 13.1.0","status":"affected"}]},{"vendor":"@highcharts","product":"dashboards","versions":[{"version":">= 1.0.0, < 4.2.3","status":"affected"}]},{"vendor":"@highcharts","product":"grid-pro","versions":[{"version":">= 2.0.0, < 3.2.0","status":"affected"}]}],"references":[{"url":"https://github.com/highcharts/highcharts/security/advisories/GHSA-c75x-9x9h-28rm","name":"https://github.com/highcharts/highcharts/security/advisories/GHSA-c75x-9x9h-28rm","tags":["x_refsource_CONFIRM"]},{"url":"https://github.com/highcharts/highcharts/commit/02dd9349aeb6f4cc9c98806120d917ed316b4c74","name":"https://github.com/highcharts/highcharts/commit/02dd9349aeb6f4cc9c98806120d917ed316b4c74","tags":["x_refsource_MISC"]},{"url":"https://github.com/highcharts/highcharts/releases/tag/dashboards-v4.2.2","name":"https://github.com/highcharts/highcharts/releases/tag/dashboards-v4.2.2","tags":["x_refsource_MISC"]},{"url":"https://github.com/highcharts/highcharts/releases/tag/grid-v3.2.0","name":"https://github.com/highcharts/highcharts/releases/tag/grid-v3.2.0","tags":["x_refsource_MISC"]}],"metrics":[{"cvssV4_0":{"attackVector":"NETWORK","attackComplexity":"LOW","attackRequirements":"NONE","privilegesRequired":"LOW","userInteraction":"ACTIVE","vulnConfidentialityImpact":"NONE","vulnIntegrityImpact":"LOW","vulnAvailabilityImpact":"HIGH","subConfidentialityImpact":"LOW","subIntegrityImpact":"LOW","subAvailabilityImpact":"LOW","baseScore":6.9,"baseSeverity":"MEDIUM","vectorString":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:A/VC:N/VI:L/VA:H/SC:L/SI:L/SA:L","version":"4.0"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-1321","lang":"en","description":"CWE-1321: Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution')","type":"CWE"}]}],"providerMetadata":{"shortName":"GitHub_M","orgId":"a0819718-46f1-4df5-94e2-005712e83aaa","dateUpdated":"2026-10-28T17:50:59.526Z"},"source":{"advisory":"GHSA-c75x-9x9h-28rm","discovery":"UNKNOWN"}}}}}