CVE-2026-118905 in nvminformazioni

Riassunto

di VulDB • 29/10/2026

Node Version Manager (nvm) è una funzione shell conforme allo standard POSIX per la gestione di più versioni di node.js. Nelle versioni dalla 0.31.2 alla 0.40.5, il comando `nvm_ls` filtra le versioni installate utilizzando un programma sed che incorpora il pattern della versione richiesta in un indirizzo `\#...#`, effettuando l'escape del carattere `.` (e, a partire dalla versione 0.40.4, anche di `#`) ma non della barra rovesciata (`\`). Una stringa di versione contenente `#` (o `\#`) chiude pertanto prematuramente l'indirizzo e il resto viene interpretato come comandi sed: con GNU sed, il comando `e` esegue un comando shell con gli stessi privilegi dell'utente; con BSD sed, i comandi `w` ed `r` scrivono e leggono file. La vulnerabilità è sfruttabile ogni volta che una stringa di versione influenzata da un attaccante viene passata a `nvm use`, `nvm which`, `nvm ls`, `nvm version`, `nvm run` o `nvm exec`, oppure a `nvm-exec` tramite la variabile d'ambiente `NODE_VERSION`, purché sia installata almeno una versione. Il parser `.nvmrc` di nvm stesso rimuove i commenti, quindi un semplice `nvm use` non è interessato; tuttavia, gli hook di auto-switch bash `cdnvm` e zsh `load-nvmrc` documentati nel README leggono il file `.nvmrc` così com'è e lo passano a `nvm ls` e `nvm version`, quindi un utente con uno di questi hook installato esegue i comandi dell'attaccante semplicemente cambiando directory in una cartella contenente un `.nvmrc` malevolo; anche gli script che eseguono `nvm use "$(cat .nvmrc)"` sono interessati nello stesso modo. La versione 0.40.6 passa qualsiasi pattern di versione contenente `#` o un carattere a capo attraverso il parser del contenuto `.nvmrc` prima, quindi nessun `#` raggiunge il programma sed.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Responsabile

Harborist

Prenotare

29/10/2026

Divulgazione

29/10/2026

Moderazione

accettato

EPSS

0.00000

KEV

no

Attività

molto basso

Fonti

Interested in the pricing of exploits?

See the underground prices here!