GHSA-9g84-39mm-q4p3

Grafana geomap panel's XYZ tile layer has a sanitize-then-interpolate ordering bug

At a glance

Published
Updated
CVE
CVE-2026-9029
Aliases
BIT-grafana-2026-9029, GO-2026-6542
CVSS_V3
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:N

Description

The geomap panel's XYZ tile layer has a sanitize-then-interpolate ordering bug. sanitizeTextPanelContent() runs on the raw template string before getTemplateSrv().replace() substitutes the variable value, which uses the glob format with no HTML escaping. The result is passed to OpenLayers via element.innerHTML. An Editor can set a textbox variable's default value to an XSS payload that executes for every user who opens the dashboard. This is a bypass of the CVE-2023-0507 fix

Affected packages

PackageVersions
Go · github.com/grafana/grafanaintroduced 2.0.0-beta1
Go · github.com/grafana/grafanaintroduced 13.0.0
Go · github.com/grafana/grafanaintroduced 0, fixed 1.9.2-0.20260616075434-82ef13993059

References

Sources

SourceLicence
OSV.devCC-BY 4.0 — GitHub Advisory Database