CVE-2025-59414

Nuxt is an open-source web development framework for Vue.js. Prior to 3.19.0 and 4.1.0, A client-side path traversal vulnerability in Nuxt's Island payload revival mechanism allowed attackers to manipulate client-side requests to different endpoints within the same application domain when specific prerendering conditions are met. The vulnerability occurs in the client-side payload revival process (revive-payload.client.ts) where Nuxt Islands are automatically fetched when encountering serialized __nuxt_island objects. During prerendering, if an API endpoint returns user-controlled data containing a crafted __nuxt_island object, he data gets serialized with devalue.stringify and stored in the prerendered page. When a client navigates to the prerendered page, devalue.parse deserializes the payload. The Island reviver attempts to fetch /__nuxt_island/${key}.json where key could contain path traversal sequences. Update to Nuxt 3.19.0+ or 4.1.0+.
Configurations

Configuration 1 (hide)

OR cpe:2.3:a:nuxt:nuxt:*:*:*:*:*:*:*:*
cpe:2.3:a:nuxt:nuxt:*:*:*:*:*:*:*:*

History

03 Dec 2025, 18:47

Type Values Removed Values Added
First Time Nuxt
Nuxt nuxt
CPE cpe:2.3:a:nuxt:nuxt:*:*:*:*:*:*:*:*
References () https://github.com/nuxt/nuxt/commit/2566d2046bccb158d98fb13e42ce4b2c33fb2595 - () https://github.com/nuxt/nuxt/commit/2566d2046bccb158d98fb13e42ce4b2c33fb2595 - Patch
References () https://github.com/nuxt/nuxt/security/advisories/GHSA-p6jq-8vc4-79f6 - () https://github.com/nuxt/nuxt/security/advisories/GHSA-p6jq-8vc4-79f6 - Exploit, Patch, Vendor Advisory
Summary
  • (es) Nuxt es un framework de desarrollo web de código abierto para Vue.js. Antes de las versiones 3.19.0 y 4.1.0, una vulnerabilidad de salto de ruta del lado del cliente en el mecanismo de reactivación de carga útil de Nuxt Island permitía a los atacantes manipular solicitudes del lado del cliente a diferentes puntos finales dentro del mismo dominio de aplicación cuando se cumplen condiciones específicas de prerrenderizado. La vulnerabilidad ocurre en el proceso de reactivación de carga útil del lado del cliente (revive-payload.client.ts) donde las Nuxt Islands se obtienen automáticamente al encontrar objetos __nuxt_island serializados. Durante el prerrenderizado, si un punto final de la API devuelve datos controlados por el usuario que contienen un objeto __nuxt_island manipulado, los datos se serializan con devalue.stringify y se almacenan en la página prerrenderizada. Cuando un cliente navega a la página prerrenderizada, devalue.parse deserializa la carga útil. El reactivador de Island intenta obtener /__nuxt_island/${key}.json donde key podría contener secuencias de salto de ruta. Actualice a Nuxt 3.19.0+ o 4.1.0+.

Information

Published : 2025-09-17 19:15

Updated : 2025-12-03 18:47


NVD link : CVE-2025-59414

Mitre link : CVE-2025-59414

CVE.ORG link : CVE-2025-59414


JSON object : View

Products Affected

nuxt

  • nuxt
CWE
CWE-22

Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')