CVE-2026-126361
Received Received - Intake

Astro Framework DOM XSS via Dynamic Element Name

Vulnerability report for CVE-2026-126361, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-11-13

Last updated on: 2026-11-13

Assigner: GitHub, Inc.

Description

Astro is a web framework for content-driven websites. Prior to 7.4.5, Astro rendered a string used as a dynamic element name as raw HTML after applying an incomplete character filter. A / in the string could make an HTML parser treat the remainder as attributes, allowing untrusted element-name input to inject event-handler markup. The .astro dynamic-tag renderer, JSX renderer, and MDX renderer were affected, and exploitation required an application to use request-controlled or stored untrusted data as all or part of an element name. This issue is fixed in version 7.4.5.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-11-13
Last Modified
2026-11-13
Generated
2026-11-13
AI Q&A
2026-11-13
EPSS Evaluated
N/A
NVD

Affected Vendors & Products

Showing 2 associated CPEs
Vendor Product Version / Range
withastro astro 7.4.5
astro astro 7.4.5

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-79 The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.
CWE-184 The product implements a protection mechanism that relies on a list of inputs (or properties of inputs) that are not allowed by policy or otherwise require other action to neutralize before additional processing takes place, but the list is incomplete.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability is a reflected or stored cross-site scripting (XSS) flaw in the Astro web framework versions 7.4.4 and earlier. It occurs when untrusted input is used as part of an element name in dynamic tags, JSX, or MDX renderers. The framework failed to properly sanitize tag names, allowing attackers to inject attributes like event handlers by including characters such as slashes or equals signs in the tag name.

Detection Guidance

To detect this vulnerability, check if your Astro application uses untrusted input as part of an element name in .astro files, JSX, or MDX. Inspect dynamic tag names for patterns like 'img/src/onerror=alert(1)' which could indicate improper sanitization. Review server logs for malformed HTML output or unexpected script execution.

Impact Analysis

If your application uses untrusted input (e.g., request parameters or CMS fields) as part of an element name, attackers could craft malicious tag names to execute arbitrary JavaScript in a victim's browser. This could lead to session hijacking, data theft, or defacement of your website.

Compliance Impact

This vulnerability could potentially affect compliance with GDPR and HIPAA by enabling cross-site scripting (XSS) attacks. If exploited, it may allow unauthorized execution of scripts in user browsers, which could lead to data theft or manipulation. This violates principles of data integrity and confidentiality required by these regulations.

Mitigation Strategies

Upgrade Astro to version 7.4.5 or later immediately. Avoid using untrusted input as an element name; map such input to a fixed set of known tags. If dynamic tag names are necessary, implement strict input validation to ensure only valid element names are used.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-126361. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart

Security Radar

News mentioning this vulnerability
Loading related security news...