Medium severity · published Jul 27, 2026
CVE-2026-59729
Astro: XSS via unescaped spread attribute names in renderHTMLElement (incomplete fix for CVE-2026-54298)
5.1
CVSS
0.5%
EPSS
No
On KEV
Description
Astro is a web framework for content-driven websites. Versions prior to 7.0.6 are vulnerable to XSS through unescaped spread attribute names in renderHTMLElement. The fix for CVE-2026-54298 (GHSA-jrpj-wcv7-9fh9) added an INVALID_ATTR_NAME_CHAR guard to addAttribute() so that spread-prop attribute names containing "' >/= or whitespace are dropped. A second attribute-rendering path, renderHTMLElement() in packages/astro/src/runtime/server/render/dom.ts, has its own inline attribute loop that does not go through addAttribute() and was not updated. It interpolates the attribute name unescaped and only escapes the value, so untrusted prop keys spread onto a native-HTMLElement-subclass component can still break out of the attribute context. This issue has been fixed in version 7.0.6.
Exploitation
Is it being used?
Exploit prediction (EPSS)0.5% · higher than 41% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
AS
astro · withastro
< 7.0.6 · source: vendor
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2026-59729
CVE.org
https://www.cve.org/CVERecord?id=CVE-2026-59729
github.com
https://github.com/withastro/astro/commit/5240e26c9dd91f9bc7140dcfacdb48d5a132830d
github.com
https://github.com/withastro/astro/pull/17251
github.com
https://github.com/withastro/astro/releases/tag/astro@7.0.6
github.com
https://github.com/withastro/astro/security/advisories/GHSA-f48w-9m4c-m7f5
More from astro
9.1
CVE-2026-33768
Astro: Unauthenticated Path Override via `x-astro-path` / `x_astro_path`
8.6
CVE-2026-25545
Astro has Full-Read SSRF in error rendering via Host: header injection
8.2
CVE-2026-102984
Astro: Malformed port in the Host header can crash the Node adapter
8.2
CVE-2026-59731
Astro 6.4.7 Authorization Bypass via Decode Iteration Limit and Rewrite Path Canonicalization Mismatch
7.5
CVE-2026-54299
Astro: Host-header full-read SSRF in core prerendered error-page fetch (prerenderedErrorPageFetch default + unvalidated createRequestFromNodeRequest URL)
