CVE-2026-31873
NONEunjs/unhead < 2.1.11 - Cross-Site Scripting via Case-Insensitive URI Scheme Bypass
Title source: llmDescription
Unhead is a document head and template manager. Prior to 2.1.11, The link.href check in makeTagSafe (safe.ts) uses String.includes(), which is case-sensitive. Browsers treat URI schemes case-insensitively. DATA:text/css,... is the same as data:text/css,... to the browser, but 'DATA:...'.includes('data:') returns false. An attacker can inject arbitrary CSS for UI redressing or data exfiltration via CSS attribute selectors with background-image callbacks. This vulnerability is fixed in 2.1.11.
References (1)
Core 1
Core References
Vendor Advisory x_refsource_confirm
https://github.com/unjs/unhead/security/advisories/GHSA-5339-hvwr-7582
Scores
CVSS v3
0.0
EPSS
0.0024
EPSS Percentile
14.5%
Attack Vector
NETWORK
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:N
CISA SSVC
Vulnrichment
Exploitation
poc
Automatable
yes
Technical Impact
partial
Details
CWE
CWE-79
Status
published
Products (1)
unjs/unhead
< 2.1.11
Published
Mar 12, 2026
Tracked Since
Mar 13, 2026