Skip to main content
Press slash or control plus K to focus the search. Use the arrow keys to navigate results and press enter to open a threat.
Reconnecting to live updates…

CVE-2026-31860: CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') in unjs unhead

0
Medium
VulnerabilityCVE-2026-31860cvecve-2026-31860cwe-79
Published: Thu Mar 12 2026 (03/12/2026, 17:18:20 UTC)
Source: CVE Database V5
Vendor/Project: unjs
Product: unhead

Description

CVE-2026-31860 is a medium severity cross-site scripting (XSS) vulnerability in the unhead package, a document head and template manager used in SSR contexts. Versions prior to 2. 1. 11 allow attackers to bypass the useHeadSafe() composable, which is intended to safely handle user-generated content, by injecting arbitrary HTML attributes including event handlers into <head> tags. The vulnerability arises because the acceptDataAttrs function only checks if attribute keys start with 'data-' but does not validate for spaces or special characters that can break HTML attribute parsing, enabling malicious payloads. This flaw affects server-side rendered pages and requires user interaction to trigger. Although no known exploits are reported, the vulnerability can lead to client-side script execution, impacting confidentiality and integrity of user sessions. The issue is fixed in version 2. 1. 11.

AI-Powered Analysis

Machine-generated threat intelligence

AILast updated: 03/20/2026, 02:31:35 UTC

Technical Analysis

CVE-2026-31860 is a cross-site scripting vulnerability classified under CWE-79 affecting the unhead package, a tool for managing document head and templates in server-side rendered (SSR) web applications. The vulnerability exists in versions prior to 2.1.11 due to improper input neutralization in the useHeadSafe() composable, which is recommended by Nuxt documentation for safely handling user-generated content. The root cause lies in the acceptDataAttrs function, which permits any HTML attribute key starting with 'data-' to be included in the final rendered HTML without sufficient validation. Specifically, it does not check for spaces or other special characters that can break HTML attribute parsing, allowing attackers to inject arbitrary HTML attributes, including event handlers that can execute malicious JavaScript. This injection occurs within SSR-rendered <head> tags, a critical part of the HTML document structure. Exploitation requires no privileges and no authentication but does require user interaction to trigger the malicious script. The vulnerability has a CVSS 4.0 base score of 5.3 (medium severity), reflecting its network attack vector, low complexity, no privileges required, but user interaction needed. No known exploits are currently reported in the wild. The issue was addressed and fixed in unhead version 2.1.11. This vulnerability poses a risk to applications relying on unhead for safe head management in SSR contexts, especially those handling user-generated content. Attackers could leverage this flaw to execute scripts in the context of users’ browsers, potentially stealing sensitive information or performing unauthorized actions.

Potential Impact

The vulnerability allows attackers to inject malicious scripts into SSR-rendered <head> elements, leading to cross-site scripting attacks. This can compromise the confidentiality and integrity of user data by stealing session tokens, cookies, or performing actions on behalf of the user. While availability impact is minimal, the trustworthiness of the affected web applications is undermined. Organizations using unhead in SSR frameworks like Nuxt that handle user-generated content are at risk of client-side compromise. The attack requires user interaction but no authentication, increasing the likelihood of exploitation in phishing or social engineering scenarios. The scope includes all web applications using vulnerable versions of unhead (<2.1.11), which may be widespread given Nuxt’s popularity. Although no exploits are known in the wild, the vulnerability’s presence in a recommended safe composable raises concerns about unnoticed exploitation. Failure to patch could lead to data breaches, reputational damage, and regulatory consequences for organizations worldwide.

Mitigation Recommendations

The primary mitigation is to upgrade unhead to version 2.1.11 or later, where the vulnerability is fixed. Organizations should audit their dependencies and ensure no legacy versions remain in production. Additionally, developers should review usage of useHeadSafe() and avoid relying solely on it for sanitization of user-generated content. Implementing strict input validation and sanitization on all user inputs before passing them to head management functions is critical. Employ Content Security Policy (CSP) headers to restrict script execution sources and mitigate impact of potential XSS. Monitoring and logging unusual script execution or attribute injection attempts in SSR contexts can help detect exploitation attempts. Security teams should educate developers on secure handling of HTML attributes and the limitations of data-attribute prefixes as a security boundary. Finally, conduct regular dependency vulnerability scans and integrate automated patch management to reduce exposure time.

Pro Console: star threats, build custom feeds, automate alerts via Slack, email & webhooks.Upgrade to Pro

Technical Details

Data Version
5.2
Assigner Short Name
GitHub_M
Date Reserved
2026-03-09T19:02:25.012Z
Cvss Version
4.0
State
PUBLISHED

Threat ID: 69b2fb902f860ef943d10b6a

Added to database: 3/12/2026, 5:44:48 PM

Last enriched: 3/20/2026, 2:31:35 AM

Last updated: 4/26/2026, 11:12:07 PM

Views: 55

Community Reviews

0 reviews

Crowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.

Sort by
Loading community insights…

Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.

Actions

PRO

Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.

Please log in to the Console to use AI analysis features.

Need more coverage?

Upgrade to Pro Console for AI refresh and higher limits.

For incident response and remediation, OffSeq services can help resolve threats faster.

Latest Threats

Breach by OffSeqOFFSEQFRIENDS — 25% OFF

Check if your credentials are on the dark web

Instant breach scanning across billions of leaked records. Free tier available.

Scan now
OffSeq TrainingCredly Certified

Lead Pen Test Professional

Technical5-day eLearningPECB Accredited
View courses