CVE-2026-114128 Astro: Reflected/Stored XSS via unescaped <script>/<style> tag content in JSX/MDX rendering
- Exploited in the wild
- Not known
- Fix
- Available
What is CVE-2026-114128?
CVE-2026-114128 is a medium-severity vulnerability in withastro astro, published on 21 Oct 2026.
Official description
Astro is a web framework for content-driven websites. Prior to 7.3.2, Astro's JSX and MDX rendering pipeline treats string children of script and style elements as trusted HTML without distinguishing compiler-generated literal content from dynamic expression values. An application that passes attacker-controlled data directly as a dynamic child can allow a value containing a closing script or style tag to terminate the element and inject arbitrary HTML and JavaScript. Other JSX expression contexts escape dynamic strings automatically; the issue is limited to script and style children rendered through the astro:jsx renderer, including MDX components. Successful exploitation can produce reflected or stored cross-site scripting under the application's origin. This issue is fixed in 7.3.2.
Weakness: CWE-79
Which versions are affected by CVE-2026-114128?
2 open source packages ship an affected version, including astro.
| Package | Affected | Fixed in |
|---|---|---|
astro npm | All versions | 7.3.2 |
astro npm | All versions | 7.3.2 |
How do I fix CVE-2026-114128?
Upgrade astro to 7.3.2 or later.
Is CVE-2026-114128 being exploited?
There is no known exploitation of CVE-2026-114128 in the wild and no public exploit code.
Sources
Also known as GHSA-98hj-9722-w3j8.