Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Vulnerabilidad en nvm de nvm-sh (CVE-2026-10796)

Gravedad CVSS v4.0:
ALTA
Tipo:
CWE-78 Neutralización incorrecta de elementos especiales usados en un comando de sistema operativo (Inyección de comando de sistema operativo)
Fecha de publicación:
04/06/2026
Última modificación:
22/07/2026

Descripción

nvm (Node Version Manager) hasta la versión 0.40.4 ejecuta comandos arbitrarios a partir de cadenas de versión suministradas por el espejo de Node.js/io.js configurado. Comandos como 'nvm install' leen las versiones disponibles del archivo index.tab del espejo y usan la versión seleccionada, sin sanitización, para construir URLs de descarga y comandos de shell/awk. Dos sumideros se ven afectados por la misma entrada no confiable: nvm_download() construyó una cadena de comando curl/wget y la ejecutó con 'eval', por lo que un campo de versión que contenía sustitución de comandos (por ejemplo, $(id)) fue ejecutado por el shell local; y nvm_get_checksum() interpoló el 'slug' de descarga derivado de la versión en un programa awk, por lo que una versión manipulada podría ejecutar comandos arbitrarios a través de system() de awk. Un atacante que controla el espejo configurado, suministra contenido del espejo a un usuario o CI en un espejo no predeterminado, o realiza un ataque de intermediario en un espejo sin TLS, puede, por lo tanto, ejecutar comandos arbitrarios con los privilegios del usuario que ejecuta nvm. El espejo predeterminado (HTTPS://nodejs.org sobre TLS) no se ve afectado. Corregido en 'master' (pendiente de la próxima versión etiquetada) pasando cada argumento como un elemento literal de argv en lugar de usar 'eval', pasando el valor a awk como datos a través de -v en lugar de interpolarlo en el programa, y rechazando cualquier versión fuera de la gramática de versiones de Node.js/io.js antes de que sea utilizada.

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:a:openjsf:node_version_manager:*:*:*:*:*:node.js:*:* 0.40.5 (excluyendo)