Skip to content
OpenAdvisories
Medium · 6.3 CVE-2026-47200 EUVD-2026-36422GHSA-hg3f-28rg-4jxj

Nuxt: Route middleware not enforced when rendering `.server.vue` pages via `/__nuxt_island/page_*`

Published Jun 12, 2026 · Updated Jun 13, 2026 · Assigned by GitHub_M

Description

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.

Affected products

VendorProductAffectedFixed
nuxt nuxt >= 3.11.0, < 3.21.6, >= 4.0.0-alpha.1, < 4.4.6 —

Affected packages

EcosystemPackageAffectedFixedRecord
npm @nuxt/nitro-server >= 3.20.0, < 3.21.6 3.21.6 GHSA-hg3f-28rg-4jxj
npm @nuxt/nitro-server >= 4.2.0, < 4.4.6 4.4.6 GHSA-hg3f-28rg-4jxj
npm nuxt >= 3.11.0, < 3.21.6 3.21.6 GHSA-hg3f-28rg-4jxj
npm nuxt >= 4.0.0-alpha.1, < 4.4.6 4.4.6 GHSA-hg3f-28rg-4jxj

References