¿Qué es la vulnerabilidad CVE-2026-63395 en isomorphic-git?

CVE-2026-63395 es una vulnerabilidad crítica de seguridad descubierta en isomorphic-git, una implementación pura en JavaScript de Git para Node.js y navegadores, catalogada con una puntuación CVSS de 8.8. En versiones anteriores a la 1.38.6, la función git.checkout escribe nuevas rutas hijas a través de componentes de directorios principales enlazados simbólicamente sin realizar comprobaciones previas.

Este fallo permite que un repositorio malicioso coloque inicialmente un enlace simbólico de directorio y posteriormente reemplace el estado del árbol con un archivo hijo debajo de esa ruta. Este tipo de fallos de control de límites recuerda a problemas como la escalada de privilegios local en otros entornos de software.

¿A quién afecta este fallo de seguridad?

Los sistemas Linux y macOS que ejecutan Node fs son los más afectados, ya que el sistema operativo puede resolver la operación de escritura fuera del directorio de trabajo actual. Esto posibilita la escritura arbitraria de archivos en el host y abre la puerta a una posible ejecución de código.

Por el contrario, Node fs en Windows suele bloquear la creación de symlinks sin privilegios adicionales, mientras que los entornos de navegador o en memoria limitan el impacto a su sistema de archivos virtual, afectándoles únicamente si implementan la creación y seguimiento de symlinks.

¿Cómo se activa esta brecha en los repositorios?

El disparador habitual del problema es una operación de clonado seguida de un pull posterior. No obstante, un único proceso de clonación puede desencadenar el problema si ya existe un enlace simbólico o si la aplicación consumidora accede al árbol.

Fallos lógicos relacionados con la gestión incorrecta de estados y punteros se documentan frecuentemente, de manera similar a una vulnerabilidad use-after-free con CVSS 8.4, donde la validación deficiente compromete la estabilidad del sistema.

¿Cómo me protejo?

La recomendación principal de seguridad es actualizar de inmediato la dependencia afectada a la versión corregida. También es útil revisar avisos relacionados como la vulnerabilidad crítica en ActivityStarter.java para comprender vectores de ataque similares.

Siga estos pasos concretos para mitigar el riesgo en sus entornos de desarrollo y producción:

  1. Audite sus proyectos para identificar el uso de la librería isomorphic-git en las dependencias.
  2. Actualice el paquete isomorphic-git a la versión 1.38.6 o superior mediante su gestor de paquetes.
  3. Evite clonar repositorios de fuentes no confiables o desconocidas en servidores de producción.
  4. Restrinja los permisos de escritura del sistema de archivos en los entornos Linux y macOS expuestos.