Alta

launch-editor: se puede eludir la comprobación de existencia de `fs.existsSync()` en Windows

  • Publicada: 20.10.2026
  • Actualizado: 20.10.2026 23:19

Resumen

launch-editor comprobaba fs.existsSync(fileName) antes de pasar una ruta suministrada a un comando del editor. En Windows, un atacante puede eludir esta comprobación mediante una ruta manipulada que termine en \\..:line:column. Esto elimina el requisito de que el atacante pueda colocar un archivo con un nombre malicioso.

Combinada con el problema de escape de % descrito en GHSA-698v-4r3x-3vcv,), esta evasión puede derivar en inyección de comandos del sistema operativo cuando un atacante controla el argumento del archivo.

Impacto

Solo se ven afectadas las aplicaciones que se ejecutan en Windows.

Detalles

El aviso anterior asumía que fs.existsSync() requería la existencia de un nombre de archivo controlado por el atacante. Este aviso cubre la omisión de ese requisito.

Un valor manipulado que termina en \\..:1:1 es interpretado de forma diferente por launch-editor-middleware, launch-editor y Windows:

  1. launch-editor-middleware llama a path.resolve() mientras el componente final de la ruta es ..:1:1, por lo que no se procesa como un componente de directorio principal.
  2. launch-editor procesa :1:1 como un sufijo de línea y columna y lo elimina, dejando una ruta que termina en \\...
  3. En Windows, fs.existsSync() acepta la ruta resultante como el directorio principal existente a pesar de que el componente precedente controlado por el atacante no existe.
  4. Debido a que la comprobación de existencia se supera con éxito, el nombre de archivo manipulado llega al comando del intérprete de comandos de Windows.

Qué hacer

Actualice launch-editor a la versión 2.14.2 o posterior. Si utiliza vite, actualice a 6.4.4, 7.3.7, 8.1.6, 8.2.4, 8.3.3 o posterior. Si utiliza vite-plus, actualice a 1.1.0 o posterior.

Software afectado

Haz clic en una tecnología para ver todas sus vulnerabilidades.

PlataformaPaqueteVersiones vulnerablesCorregida en
Paquete de npm launch-editor < 2.14.2 2.14.2
Paquete de npm vite >= 8.3.0, < 8.3.3, >= 8.2.0, < 8.2.4, >= 8.0.0, < 8.1.6, >= 7.0.0, < 7.3.7, < 6.4.4 8.3.3, 8.2.4, 8.1.6, 7.3.7, 6.4.4
Paquete de npm vite-plus < 1.1.0 1.1.0

Referencias

Puntuación CVSS -
Vector CVSS
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Debilidad (CWE)
CWE-77
Plataforma
npm
Paquete
launch-editor, vite, vite-plus
Publicada
20.10.2026
Actualizado
20.10.2026 23:19

Fuentes y licencias · Editado o traducido por DockRay; se mantienen los derechos y las licencias de las fuentes.

OSV / GitHub Advisory Database - GHSA-587h-7wmj-h5pm - CC BY 4.0

Historial de vulnerabilidades: launch-editor

Todas las vulnerabilidades publicadas de este paquete (Paquete de npm), de la más reciente a la más antigua. Muestra si es un fallo aislado o un paquete que hay que vigilar.

Entradas en total
4
Primera → última
06.2026 10.2026
Sin corrección
0
Explotada en ataques
0

Distribución por gravedad

  • Alta 2
  • Media 2

Divulgaciones por año

  1. 2026: 4
  1. launch-editor: se puede eludir la comprobación de existencia de `fs.existsSync()` en Windows esta entrada
    Alta CVE-2026-112942 < 2.14.2 2.14.2

Identifica las vulnerabilidades de tu aplicación

Con la integración de DockRay y el inventario de software activado, DockRay compara las versiones notificadas de los componentes con las vulnerabilidades conocidas y avisa de las coincidencias confirmadas. La cobertura depende de la tecnología compatible y de los avisos disponibles.

Conectar tu aplicación
Newsletter DockRay

La seguridad de tus aplicaciones en tu correo

Vulnerabilidades importantes, recomendaciones concretas y consejos prácticos para tus aplicaciones. Elige tus tecnologías y sigue lo que importa para tu proyecto.

  • Un resumen diario de nuevas vulnerabilidades, también las críticas.
  • Avisos sobre actualizaciones importantes.
  • Consejos prácticos sobre seguridad y monitorización de aplicaciones.

Déjalo vacío para recibir avisos de todas las tecnologías.

Suscripción gratuita. Date de baja con un clic en cualquier correo.