Skip to content
OpenAdvisories
Medium · 6.1 CVE-2026-41067 EUVD-2026-25573GHSA-j687-52p2-xcff

Astro: XSS via incomplete `</script>` sanitization in `define:vars` allows case-insensitive and whitespace-based bypass

Published Apr 24, 2026 · Updated Apr 24, 2026 · Assigned by GitHub_M

Description

Astro is a web framework. Prior to 6.1.6, the defineScriptVars function in Astro's server-side rendering pipeline uses a case-sensitive regex /<\/script>/g to sanitize values injected into inline <script> tags via the define:vars directive. HTML parsers close <script> elements case-insensitively and also accept whitespace or / before the closing >, allowing an attacker to bypass the sanitization with payloads like </Script>, </script >, or </script/> and inject arbitrary HTML/JavaScript. This vulnerability is fixed in 6.1.6.

Affected products

VendorProductAffectedFixed
withastro astro < 6.1.6 —

Affected packages

EcosystemPackageAffectedFixedRecord
npm astro < 6.1.6 6.1.6 GHSA-j687-52p2-xcff

References