Skip to content
Heist/ feed
Back to feed
Medium

Highcharts Dashboards: `__proto__` data table id writes sync listeners to `Object.prototype`

Type: advisorySources: Official CVE List

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.

Products
highcharts
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-118243
Confirmed fixed CVEs
Not specified
Updated in this feed
1 Nov 2026, 20:24 UTC · Revision 1

Source evidence

Highcharts Dashboards: `__proto__` data table id writes sync listeners to `Object.prototype`

core-cve · Original source

Published 28 Oct 2026, 17:33 UTC

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.

cve:CVE-2026-118243

highcharts

Fixed versions: Not specified

Complete source record
{
  "id": "046800e1d98281595222324dd0e0ae7de2c03378f58572abfa8e95880e8fd619",
  "url": "https://www.cve.org/CVERecord?id=CVE-2026-118243",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Highcharts Dashboards: `__proto__` data table id writes sync listeners to `Object.prototype`",
    "summary": "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.",
    "evidence": "cve:CVE-2026-118243",
    "products": [
      {
        "name": {
          "value": "highcharts",
          "evidence": "/containers/cna/affected/0/product"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": []
      }
    ],
    "severity": "medium",
    "structured": {
      "id": "CVE-2026-118243",
      "aliases": [
        "CVE-2026-118243"
      ],
      "metrics": [
        {
          "cvssV4_0": {
            "version": "4.0",
            "baseScore": 5.3,
            "attackVector": "NETWORK",
            "baseSeverity": "MEDIUM",
            "vectorString": "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",
            "userInteraction": "NONE",
            "attackComplexity": "LOW",
            "attackRequirements": "NONE",
            "privilegesRequired": "LOW",
            "subIntegrityImpact": "LOW",
            "vulnIntegrityImpact": "LOW",
            "subAvailabilityImpact": "LOW",
            "vulnAvailabilityImpact": "LOW",
            "subConfidentialityImpact": "LOW",
            "vulnConfidentialityImpact": "NONE"
          }
        }
      ],
      "affected": [
        {
          "vendor": "highcharts",
          "product": "highcharts",
          "versions": [
            {
              "status": "affected",
              "version": ">= 1.0.0, < 4.2.2"
            }
          ]
        }
      ],
      "modified": "2026-10-28T17:33:31.422Z",
      "provider": "cve",
      "references": [
        "https://github.com/highcharts/highcharts/security/advisories/GHSA-jqgh-w3cc-7jqw",
        "https://github.com/highcharts/highcharts/commit/ade5a41a700212f09133223ca990a3737d1d9ec6",
        "https://github.com/highcharts/highcharts/releases/tag/dashboards-v4.2.2"
      ],
      "provider_metadata": {
        "cna": {
          "orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
          "shortName": "GitHub_M",
          "dateUpdated": "2026-10-28T17:33:31.422Z"
        }
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-118243",
        "evidence": "/cveMetadata/cveId"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/containers/cna/metrics"
  },
  "source_id": "core-cve",
  "document_id": 466451,
  "published_at": "2026-10-28T17:33:31.422+00:00"
}