CVE-2026-71319
KrytyczneCVSS 9.6Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 29 - wyżej niż 29% wszystkich znanych CVE
Streszczenie
Nuxt przed wersją 3.3.1 w trybie deweloperskim udostępnia nieuwierzytelniony kanał RPC przez WebSocket Vite HMR. Atakujący, który może połączyć się z portem HMR, może wywołać metody takie jak updateOptions() i openInEditor(), co pozwala na wykonanie dowolnego programu na maszynie dewelopera.
Ocena ryzyka
Ryzyko przejęcia kontroli nad maszyną dewelopera, co może prowadzić do kradzieży danych, wstrzyknięcia złośliwego kodu lub eskalacji uprawnień w środowisku programistycznym.
Rekomendacja
Zaktualizuj Nuxt do wersji 3.3.1 lub nowszej. Ogranicz dostęp do portu HMR tylko do zaufanych sieci.
Inne podatności w Nuxt
Zobacz wszystkie- CVE-2026-72744Średnie
Podatność ujawniania informacji w Nuxt w wersjach od 4.4.7 do 4.5.1 oraz od 3.21.7 do 3.21.10. Punkt końcowy workspace Chrome DevTools w serwerze deweloperskim ufa nagłówkowi Host zamiast adresowi połączenia, co pozwala nieuwierzytelnionemu atakującemu w sieci LAN na odczyt ścieżki katalogu głównego projektu i identyfikatora UUID workspace.
- CVE-2026-71321Wysokie
Nuxt to framework webowy open-source dla Vue.js. Od wersji 3.1.0 do 3.21.10 i 4.5.1, wewnętrzny endpoint renderera wysp `/__nuxt_island/...` dekoduje i haszuje kontrolowane przez atakującego dane JSON z ciała żądania przed walidacją hasha w URL. Nieuwierzytelnione żądanie `POST /__nuxt_island/_.json` z dużym ciałem JSON jest w pełni odczytywane, parsowane, haszowane, a następnie odrzucane, co marnuje CPU w pętli zdarzeń Nitro i opóźnia równoległe żądania. Nie jest wymagany ważny hash ani uwierzytelnienie. Problem naprawiono w wersjach 3.21.10 i 4.5.1.
- CVE-2026-71320Wysokie
Nuxt to framework webowy open-source dla Vue.js. Od wersji 3.4.0 do 3.21.10 i 4.5.1, atakujący może wstrzyknąć klucz szablonu przez props `/__nuxt_island/` do dynamicznego komponentu, gdy `vue.runtimeCompiler: true` jest włączone, co powoduje wykonanie szablonu w procesie Nitro. Problem naprawiono w wersjach 3.21.10 i 4.5.1.
- CVE-2026-71318Średnie
Nuxt, framework web open-source dla Vue.js, w wersjach od 3.1.0 do 3.21.10 i 4.5.1 pozwala atakującemu na dostarczenie atrybutu 'as' na najwyższym poziomie do punktu końcowego /__nuxt_island/ i sterowanie dynamicznym rozwiązywaniem komponentów przez <component :is>, resolveDynamicComponent lub h(). Problem został naprawiony w wersjach 3.21.10 i 4.5.1.
- CVE-2026-71316Wysokie
Nuxt to framework webowy open-source dla Vue.js. Od wersji 4.4.0 do 4.5.1, wpisy cache runtime `nuxt:payload` dla `/strona/_payload.json` mogą być zwracane przed middleware trasy i guardami stron, ponieważ `import.meta.prerender` nie jest egzekwowane, co ujawnia dane SSR innego użytkownika. Problem naprawiono w wersji 4.5.1.
- CVE-2026-71315Wysokie
Nuxt to framework webowy open-source dla Vue.js. Od wersji 3.21.7 do 3.21.10 i 4.5.1, klucze routeRules z mieszaną wielkością liter mogą nie pasować do wyszukiwań z normalizacją wielkości liter, gdy `router.options.sensitive` jest false, i pomijają bramki autoryzacji appMiddleware. Jest to spowodowane niekompletną poprawką dla CVE-2026-53721. Problem naprawiono w wersjach 3.21.10 i 4.5.1.
- CVE-2026-71314Wysokie
Nuxt, framework do tworzenia aplikacji webowych dla Vue.js, zawiera podatność umożliwiającą nieuwierzytelnionemu atakującemu wywołanie niekontrolowanej alokacji pamięci SSR przez użycie właściwości v-for w wyspach serwerowych, co może doprowadzić do awarii procesu Nuxt. Problem dotyczy wersji od 3.1.0 do 3.21.10 oraz 4.5.1 i został naprawiony w wersjach 3.21.10 i 4.5.1.
- CVE-2026-56301Średnie
Nuxt w wersjach 4.0.0 przed 4.4.7 oraz 3.18.0 przed 3.21.7, działając na serwerze deweloperskim (nuxt dev) w systemie Linux, wiąże serwer IPC vite-node z gniazdem Unix w abstrakcyjnej przestrzeni nazw bez ograniczeń dostępu, co pozwala lokalnym użytkownikom na enumerację i połączenie.
- CVE-2026-56698Średnie
Wersje Nuxt 4.0.0 przed 4.4.7 oraz 3.x przed 3.21.7 nie walidują URL-i z możliwością skryptów w opcji open metody navigateTo, co pozwala na wykonanie skryptów po stronie klienta. Atakujący mogą dostarczyć URL-e javascript: przez parametr open, co umożliwia wykonanie dowolnych skryptów w kontekście aplikacji.
- CVE-2026-56697Średnie
Wersje Nuxt 4.0.0 przed 4.4.7 oraz 3.x przed 3.21.7 akceptują ścieżki względne do protokołu, takie jak //evil.com, w funkcji reloadNuxtApp. Te ścieżki przechodzą kontrolę protokołu skryptu, ale prowadzą do adresów URL z innego źródła w stosunku do bieżącego protokołu strony.
Oryginalny opis (angielski, źródło NVD)
Nuxt is an open-source web development framework for Vue.js. Prior to 3.3.1, Nuxt DevTools (development mode only) exposes a bidirectional RPC channel over the Vite HMR WebSocket via the nuxt:devtools:rpc plugin. On affected versions the channel has no authentication: any client that can reach the Vite HMR endpoint (ws://<host>:<port>/, subprotocol vite-hmr) can call RPC methods, with no token, handshake, or origin check before the channel is established. The updateOptions(), clearOptions(), and openInEditor() methods do not enforce the ensureDevAuthToken check that the other mutating methods use. openInEditor() reads the persisted behavior.openInEditor value and passes it to the launch-editor package, which spawns it as a child process. That value is settable through the equally unauthenticated updateOptions(). An attacker who can reach the HMR port can therefore chain updateOptions('behavior', { openInEditor: '<command>' }) then openInEditor('<any-existing-file>') to execute an arbitrary program on the developer's machine. This issue is fixed in 3.3.1.

