Description
svelte performance oriented web framework. Prior to 5.51.5, when using <svelte:element this={tag}> in server-side rendering, the provided tag name is not validated or sanitized before being emitted into the HTML output. If the tag string contains unexpected characters, it can result in HTML injection in the SSR output. Client-side rendering is not affected. This vulnerability is fixed in 5.51.5.
Published: 2026-02-20
Score: 5.1 Medium
EPSS: < 1% Very Low
KEV: No
Impact: HTML Injection via server‑side rendering
Action: Patch Now
AI Analysis

Impact

A server‑side rendering feature in Svelte allows dynamic element tags via `<svelte:element this={tag}>`. Before version 5.51.5 the framework does not validate or sanitize the tag string, so an attacker can craft a tag value containing malicious characters that end up in the generated HTML, enabling HTML injection or cross‑site scripting in the rendered page. The weakness aligns with CWE‑1286 (Improper Validation of Input or Parameters) and CWE‑79 (Cross‑Site Scripting), illustrating that the lack of input validation leads to an XSS vulnerability.

Affected Systems

The vulnerability affects the Svelte framework released by sveltejs:svelte and applies to all versions prior to 5.51.5 when the SSR mode is used. Client‑side rendering is not impacted and the issue does not affect earlier releases of Node.js or other dependencies that rely on Svelte.

Risk and Exploitability

The assessment assigns a CVSS score of 5.1, indicating moderate severity, and an EPSS of less than 1%, suggesting a low probability of exploitation in the wild. Because the vulnerability is not listed in the CISA KEV catalog, no widespread exploitation campaigns are currently documented. The likely attack vector is server‑side rendering of untrusted content; an attacker would need to supply a malicious tag string that the application uses with `<svelte:element>`, which then appears in the HTML response delivered to users, potentially leading to XSS. No prerequisites beyond supplying input to the SSR endpoint are indicated by the description.

Generated by OpenCVE AI on April 18, 2026 at 11:22 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update the Svelte framework to version 5.51.5 or later to receive the vendor’s fix.
  • If an upgrade is not feasible, validate and sanitize the tag name on the server side (CWE‑1286) before passing it to `<svelte:element>`, restricting to a whitelist of safe tags, and ensure any embedded content is properly escaped (CWE‑79).
  • Avoid using `<svelte:element this={tag}>` with user‑controlled input in SSR contexts until a patch is applied.

Generated by OpenCVE AI on April 18, 2026 at 11:22 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-m56q-vw4c-c2cp Svelte SSR does not validate dynamic element tag names in `<svelte:element>`
History

Mon, 23 Feb 2026 21:00:00 +0000

Type Values Removed Values Added
CPEs cpe:2.3:a:svelte:svelte:*:*:*:*:*:node.js:*:*
Metrics cvssV3_1

{'score': 5.6, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:L'}

cvssV3_1

{'score': 5.4, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N'}


Mon, 23 Feb 2026 20:15:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Mon, 23 Feb 2026 15:00:00 +0000

Type Values Removed Values Added
First Time appeared Svelte
Svelte svelte
Vendors & Products Svelte
Svelte svelte

Sat, 21 Feb 2026 12:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-1286
References
Metrics threat_severity

None

cvssV3_1

{'score': 5.6, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:L'}

threat_severity

Moderate


Fri, 20 Feb 2026 22:45:00 +0000

Type Values Removed Values Added
Description svelte performance oriented web framework. Prior to 5.51.5, when using <svelte:element this={tag}> in server-side rendering, the provided tag name is not validated or sanitized before being emitted into the HTML output. If the tag string contains unexpected characters, it can result in HTML injection in the SSR output. Client-side rendering is not affected. This vulnerability is fixed in 5.51.5.
Title Svelte SSR does not validate dynamic element tag names in `<svelte:element>`
Weaknesses CWE-79
References
Metrics cvssV4_0

{'score': 5.1, 'vector': 'CVSS:4.0/AV:N/AC:H/AT:P/PR:H/UI:N/VC:L/VI:N/VA:N/SC:H/SI:H/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-02-23T19:23:03.403Z

Reserved: 2026-02-17T18:42:27.043Z

Link: CVE-2026-27122

cve-icon Vulnrichment

Updated: 2026-02-23T19:22:53.632Z

cve-icon NVD

Status : Analyzed

Published: 2026-02-20T23:16:02.640

Modified: 2026-02-23T20:53:01.857

Link: CVE-2026-27122

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-02-20T22:28:37Z

Links: CVE-2026-27122 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-04-18T11:30:44Z

Weaknesses