Skip to content
OpenAdvisories
Medium · 4.2 CVE-2026-54298 EUVD-2026-38336GHSA-jrpj-wcv7-9fh9

Astro: XSS via Unescaped Attribute Names in Spread Props

Published Jun 22, 2026 · Updated Jun 23, 2026 · Assigned by GitHub_M

Description

Astro is a web framework. Prior to 6.4.6, the spreadAttributes function in Astro's server-side rendering pipeline iterates over object keys and passes them directly to addAttribute, which interpolates the key into the HTML output without escaping. When a developer uses the spread syntax {...props} on an HTML element and the object keys come from an untrusted source (API, CMS, URL parameters), an attacker can inject arbitrary HTML attributes including event handlers like onmousemove, onclick, or break out of the attribute context entirely to inject new elements. This vulnerability is fixed in 6.4.6.

Affected products

VendorProductAffectedFixed
withastro astro < 6.4.6 —

Affected packages

EcosystemPackageAffectedFixedRecord
npm astro < 6.4.6 6.4.6 GHSA-jrpj-wcv7-9fh9

References