Skip to content

map: MapStage on maplibre-gl 6 (critical XSS GHSA-jrc7-96c5-q579): use deck.gl MapLibreOverlay #601

Closed

Description

@mvilacad

Dependabot alerts #2 (packages/ui, dev) and #3 (site, runtime): critical, GHSA-jrc7-96c5-q579 / CVE-2026-85061, maplibre-gl <= 6.4.0, patched in 6.4.1. DOM.sanitize() iterates the live elem.attributes while removing attributes, so it skips the attribute next to a removed one (<details open onload="1" ontoggle="...">): zero-click XSS through the attribution control for untrusted or third-party attribution strings.

Our exposure: the lib never renders attribution strings of its own and ships no map data; the site demo uses an inline offline style. A consumer whose style carries untrusted attribution is exposed, and a 5.x peer range cannot take the patch (fixed only in >= 6.4.1).

#488 (bump to 6.4.1) was closed and the peer pinned to ^5 (#470/#479) because @deck.gl/mapbox 9.4 MapboxOverlay throws Cannot read properties of undefined (reading 'height') on maplibre 6. deck.gl 9.4.0 now ships @deck.gl/maplibre (MapLibreOverlay, peer maplibre-gl ^4.5.1 || ^5 || ^6), the supported way to drive maplibre.

Plan (test first):

  • MapStage uses MapLibreOverlay from @deck.gl/maplibre for engine="maplibre" (interleaved), keeps MapboxOverlay for engine="mapbox".
  • Peers: maplibre-gl ^5.0.0 || ^6.0.0, new optional peer @deck.gl/maplibre ~9.4.0.
  • Repo and site bump to maplibre-gl >= 6.4.1 (closes the alerts), @deck.gl/maplibre 9.4.0.
  • Docs and changeset.

Activity

  1. added
    bugSomething isn't working
    area:componentsSvelte components and primitives
    dependenciesPull requests that update a dependency file
    in progressSomeone is working on it (see the linked draft PR)
    on Oct 25, 2026
  2. self-assigned this
    on Oct 25, 2026
  3. mvilacad commented on Oct 25, 2026

    @mvilacad
    ContributorAuthor

    Working on this in #602 (draft). Branch fix/601-map-mapstage-on-maplibre-gl-6. Regression test first, then the fix.

  4. added a commit that references this issue on Oct 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

area:componentsSvelte components and primitivesbugSomething isn't workingdependenciesPull requests that update a dependency filein progressSomeone is working on it (see the linked draft PR)

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions