CVE Catalog

CVE-2026-59729

MediumCVSS 5.1
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.33%

25th percentile - higher than 25% of all known CVEs

Summary

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 added an INVALID_ATTR_NAME_CHAR guard to addAttribute(), but a second attribute-rendering path, renderHTMLElement(), was not updated and interpolates the attribute name unescaped, allowing XSS. This issue has been fixed in version 7.0.6.

Risk Assessment

This vulnerability allows an attacker to inject malicious JavaScript code into the page, potentially leading to session theft, redirects, or other attacks on users.

Recommendation

Update Astro to version 7.0.6 or later.

Other vulnerabilities in Astro

See all
Original NVD description (English source)

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.

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