CVE-2026-47200
MediumCVSS 5.3Exploitation Probability (EPSS)
Low risk27th percentile — higher than 27% of all known CVEs
Summary
In Nuxt versions 3.11.0 to before 3.21.6 and 4.0.0-alpha.1 to before 4.4.6, as well as in @nuxt/nitro-server versions 3.20.0 to before 3.21.6 and 4.0.0-alpha.1 to before 4.4.6, enabling the experimental.componentIslands option caused .server.vue files under pages/ to be automatically registered as server islands. Requests through the /__nuxt_island/:name endpoint rendered the page component directly without instantiating Vue Router, resulting in route middleware not running.
Risk Assessment
The lack of route middleware execution may lead to unauthorized access to security features, posing a risk to the integrity of the application and user data.
Recommendation
It is recommended to upgrade to versions 3.21.6 or 4.4.6 to mitigate this vulnerability and ensure proper functioning of route middleware.
Original NVD description (English source)
Nuxt is an open-source web development framework for Vue.js. In Nuxt versions 3.11.0 to before 3.21.6 and 4.0.0-alpha.1 to before 4.4.6 and @nuxt/nitro-server versions 3.20.0 to before 3.21.6 and 4.0.0-alpha.1 to before 4.4.6, when experimental.componentIslands is enabled (default in Nuxt 4), any .server.vue file under pages/ is automatically registered as a server island under the key page_<routeName> and exposed via the /__nuxt_island/:name endpoint. Until this fix, requests through that endpoint rendered the page component directly via the SSR renderer without instantiating Vue Router, which meant route middleware declared on the page (including definePageMeta({ middleware })) did not run. This issue has been patched in versions 3.21.6 and 4.4.6.

