Skip to content

← Public intelligence

npm package

@highcharts/grid-pro

Open actionable advisories and recorded vendor fixes. This public package view has no inventory attached and cannot establish whether your deployment is affected. A vendor fix never resolves your finding; verify your installed version and the source guidance.

Open advisories

5 actionable advisories, newest first. Withdrawn advisories and news are excluded. Coverage is partial.

  1. High, CVSS 8.4npmAmendedPublished

    Highcharts Grid: javascript: URL in credits.href runs script on click

    CVE-2026-118255 · GHSA-6hgp-fmhr-mrg4

    Affected
    • npm @highcharts/grid-pro >= 2.0.0, < 3.2.0
    Fixed in
    3.2.0· Vendor fix available
    Issue
    Impact An attacker who controls the Grid configuration can set `credits.href` to a `javascript:` URL. The value is not validated against an allowed-scheme list before it is applied to the credits link, so activating that link runs attacker-supplied script in the origin of the page hosting the Grid. Exploitation requires that untrusted data reach the Grid configuration and that a user activate the credits link. Script running this way has the same access to page data, storage and session state as the hosting application. Workarounds Paste in after the Grid Pro module is imported, before a Grid is created. ```javascript const { AST } = Grid; function sanitize(options) { const credits = options && options.credits; if (credits && typeof credits.href === 'string') { const filtered = AST.filterUserAttributes({ href: credits.href }); if (!filtered.href) { delete credits.href; } } return options; } // Both Grid.grid() and grid.update() funnel through loadUserOptions, so one // hook…

    Recommended action: Upgrade to 3.2.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.com (1)osv.dev (2)Source checked Evidence →
  2. High, CVSS 8.6npmAmendedPublished

    Highcharts Grid parses pagination language options as HTML

    CVE-2026-118254 · GHSA-r5wg-q8fc-p6w2

    Affected
    • npm @highcharts/grid-pro >= 2.0.0, < 3.2.0
    Fixed in
    3.2.0· Vendor fix available
    Issue
    Impact The pagination language strings are written into the DOM as markup rather than as text. An attacker who controls those language options can supply elements carrying event handlers, and those handlers execute in the origin of the page hosting the Grid when the pagination controls render. Exploitation requires that untrusted data reach the Grid language configuration and that pagination be enabled on the Grid. Workarounds Run this once after loading the Grid, before creating any grid: ```javascript { const Pagination = Grid.Pagination; const escapeLang = (pagination) => { const lang = pagination.lang; if (!lang) { return; } for (const key of ['pageInfo', 'pageSizeLabel']) { if (typeof lang[key] === 'string') { lang[key] = lang[key].replace(/</g, '&lt;'); } } }; for (const name of ['updatePageInfo', 'renderPageSizeSelector']) { const original = Pagination.prototype[name]; Pagination.prototype[name] = function (...args) { escapeLang(this); return original.apply(this,…

    Recommended action: Upgrade to 3.2.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.com (1)osv.dev (2)Source checked Evidence →
  3. High, CVSS 8.5npmAmendedPublished

    Highcharts Grid Pro: cell-renderer attributes map written with raw setAttribute

    CVE-2026-116797 · GHSA-5ghw-9mgr-jvx2

    Affected
    • npm @highcharts/grid-pro >= 2.0.0, < 3.2.0
    Fixed in
    3.2.0· Vendor fix available
    Issue
    Impact The input-type cell renderers copy every entry of the renderer's `attributes` option onto the input or select element they create, without checking the attribute names. An attacker who controls the Grid configuration can supply entries under a column's `cells.renderer.attributes` or `cells.editMode.renderer.attributes` whose names are event handlers, and those handlers execute in the origin of the page hosting the Grid. A view renderer places the handler on the input rendered in every row of the column as soon as the Grid renders; an edit-mode renderer places it on the input created when a cell enters edit mode, and that input is focused immediately, so a `focus` handler runs as soon as the user starts editing. Exploitation requires that untrusted data reach the Grid configuration and that a user hover over or focus one of the rendered inputs, or begin editing a cell. The Pro DataGrid that shipped inside the Dashboards package is included. Workarounds If your column…

    Recommended action: Upgrade to 3.2.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.com (1)osv.dev (2)Source checked Evidence →
  4. High, CVSS 8.5npmAmendedPublished

    Highcharts Grid: custom icon definition objects written with raw setAttribute on

    CVE-2026-118242 · GHSA-6g3c-p4fg-xv47

    Affected
    • npm @highcharts/grid-pro >= 2.3.0, < 3.2.0
    Fixed in
    3.2.0· Vendor fix available
    Issue
    Impact A custom icon supplied under `rendering.icons` as an icon definition object is built by creating an SVG path for each of its child entries and setting every key of that entry as an attribute of the path, without filtering the attribute names; only the string form of the option is passed through the markup allow-list. An attacker who controls the Grid configuration can therefore supply child entries whose keys name event handlers, and those handlers execute in the origin of the page hosting the Grid. Custom icons take precedence over the built-in ones, so the attacker can replace icons that render without any further configuration, such as the sort icon shown in every column header by default and the pagination controls where pagination is enabled, and does not need any reference to a custom icon name. Exploitation requires that untrusted data reach the Grid configuration and that a user hover over or activate an affected icon. Workarounds If your Grid configuration…

    Recommended action: Upgrade to 3.2.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.com (1)osv.dev (2)Source checked Evidence →
  5. Medium, CVSS 6.9npmAmendedPublished

    Highcharts Dashboards / Grid Pro: DataTable.setCell and column writers treat __proto__ as an existing column.

    CVE-2026-118247 · GHSA-c75x-9x9h-28rm

    Affected
    • npm @highcharts/grid-pro >= 2.0.0, < 3.2.0
    Fixed in
    3.2.0· Vendor fix available
    Issue
    Impact When a single cell value is written to a data table, the column id is used as a key on the table's column collection without filtering, so a column id of `proto` resolves to `Object.prototype`, is taken for an existing column, and the write lands at the row index on `Object.prototype`; a column id of `constructor` writes onto the `Object` constructor in the same way. In Dashboards releases that still supported column aliases, the id is first resolved through the alias map, so a literal `proto` id is redirected harmlessly there, while an alias whose target is `proto`, which the connector's data table options accept, reaches the same write. An attacker who controls the column id can thereby set integer-keyed properties on `Object.prototype`, one per row index, holding the written value; named properties cannot be reached through these paths, because the row index is a number. The integer keys still affect every object in the page: reading an out-of-range index on…

    Recommended action: Upgrade to 3.2.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.com (1)osv.dev (2)Source checked Evidence →