CVE Catalog

CVE-2026-85061

CriticalCVSS 10.0
Published: Translated: NVD NIST

Summary

MapLibre GL JS prior to 6.4.1 has a vulnerability in DOM.sanitize() in src/util/dom.ts, which iterates elem.attributes as a live NamedNodeMap while removeAttributes() removes attributes from the same collection, shifting indexes and skipping an adjacent dangerous attribute. An attacker who controls untrusted third-party style attribution strings or user-supplied custom attributions can supply consecutive dangerous attributes, causing an attribute such as onload or ontoggle to survive sanitization and execute when the attribution control inserts the content into innerHTML. A victim must render the affected map content for the script to execute. This issue is fixed in version 6.4.1.

Risk Assessment

An attacker can execute script in the victim's browser context, potentially leading to data theft, session hijacking, or other XSS attacks.

Recommendation

Immediately update MapLibre GL JS to version 6.4.1 or later and avoid rendering untrusted attribution content.

Related vulnerabilities

Original NVD description (English source)

MapLibre GL JS is an interactive vector tile map library for web browsers. Prior to 6.4.1, DOM.sanitize() in src/util/dom.ts iterates elem.attributes as a live NamedNodeMap while removeAttributes() removes attributes from the same collection, shifting indexes and skipping an adjacent dangerous attribute. An attacker who controls untrusted third-party style attribution strings or user-supplied custom attributions can supply consecutive dangerous attributes, causing an attribute such as onload or ontoggle to survive sanitization and execute when the attribution control inserts the content into innerHTML. A victim must render the affected map content for the script to execute. This issue is fixed in version 6.4.1.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS