Nuxt is an open-source web development framework for Vue.js. From 3.21.6 to before 4.0.0 and from 4.4.6 until 4.6.4, the /__nuxt_island path hash uses ohash serialization that does not escape quotes in string values or delimiters in object keys, allowing different island-prop tuples to produce the same path. For prerendering, substituted content is written into the generated page only if the crawler reaches a colliding URL before rendering the page with the legitimate props. Separately, a CDN or reverse proxy that keys island responses by path alone can be primed with the colliding response. If the substituted prop reaches v-html, innerHTML, or another unsafe HTML sink, the response can execute script in the application origin; otherwise the impact is content substitution. Applications that do not use server components or NuxtIsland, islands without attacker-influenced string props, and responses not cached by path alone are unaffected. This issue is fixed in version 4.6.4.
{
"cna_assigner": "GitHub_M",
"cwe_ids": [
"CWE-116",
"CWE-349"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/128xxx/CVE-2026-128076.json"
}{
"extracted_events": [
{
"range": [
{
"introduced": "3.21.6"
},
{
"fixed": "4.0.0"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"introduced": "4.4.6"
},
{
"fixed": "4.6.4"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"fixed": "6f1b93c643355688bc9e2d7434723f7fd3f25092"
}
],
"source": "REFERENCES_COMMIT"
},
{
"original_tag": "v4.6.4",
"range": [
{
"fixed": "b9a6b687018a87db72832620beec55bf46abd623"
}
],
"source": "REFERENCES_TAG"
}
]
}