Read the docs
TI-2026-49977 Aliases CVE-2026-71319GHSA-279x-mwfv-vcqv

Nuxt.js Unauthenticated WebSocket RPC Call Leading to Remote Code Execution

Priority MEDIUM 44CWE-306Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
Required
Attack complexity
Low
Impact type
Security bypass, Code execution
Confidentiality · integrity · availability
High · High · High
Fix status
Fixed

Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-306 and CWE-94.

Summary

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.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00629 50th percentileScored 2026-11-07
Fix Fixed devtools (nuxt): 3.3.1@nuxt/devtools (npm): 3.3.1

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Total

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
nuxtdevtoolsbefore 3.3.13.3.1Patch availableCNA
—@nuxt/devtools (npm)before 3.3.13.3.1Patch availableGHSA-279x-mwfv-vcqv
  • devtools Vendornuxt Affected before 3.3.1 Fixed in 3.3.1 Patch available CNA
  • @nuxt/devtools (npm) Vendor— Affected before 3.3.1 Fixed in 3.3.1 Patch available GHSA-279x-mwfv-vcqv

Remediation

  • Fix · CNA devtools (nuxt) Fixed in 3.3.1
  • Fix · GHSA-279x-mwfv-vcqv @nuxt/devtools (npm) Fixed in 3.3.1 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-71319
  2. 2026-10-03 Alias added: GHSA-279x-mwfv-vcqv
  3. 2026-10-28 EPSS moved to the 50th–90th percentile

References

  • TI-2023-03020 Code Injection in nuxt/nuxt CVSS 3.1CRITICAL 9.8
  • TI-2024-28339 Server-Side Request Forgery (SSRF) in nuxt-icon CVSS 3.1HIGH 8.6
  • TI-2024-22685 Remote code execution via the browser when running the test locally in nuxt CVSS 3.1HIGH 8.8
  • TI-2026-26689 Nuxt OG Image vulnerable to DoS via image generation CVSS 4.0MEDIUM 6.9
  • TI-2022-04037 Cross-site Scripting (XSS) - DOM in nuxt/framework CVSS 3.1MEDIUM 6.1
  • TI-2022-04036 Cross-site Scripting (XSS) - Reflected in nuxt/framework CVSS 3.1MEDIUM 6.1
See all 44 →

Sources