
Avviso per thumbler
thumbler fino alla versione 1.1.2 consente l'iniezione di comandi del sistema operativo in thumbnail() in lib/thumbler.js. Il pacchetto concatena i valori input, output, time e size in un'unica stringa di comando ffmpeg ed esegue tale stringa con child_process.exec(). Un attaccante che controlla uno di questi valori può iniettare sintassi di shell ed eseguire comandi arbitrari.
| Prodotto | Versioni interessate | Versione corretta |
|---|---|---|
| thumbler | tutte le versioni fino alla 1.1.2 | nessuna correzione disponibile al 2026-03-24 |
CVE-2026-26833CWE-78 - Iniezione di comandi del sistema operativo9.8 (Critico)CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:Hlib/thumbler.js, thumbnail()Il percorso di codice vulnerabile costruisce la seguente stringa di shell:
exec(
'ffmpeg -ss ' + time + ' -i "' + input + '" -vframes 1 -s ' +
size + ' "' + output + '"',
...
);
Poiché il comando viene assemblato come stringa, ogni campo controllato dall'attaccante è un possibile punto di iniezione.
Qualsiasi servizio che genera miniature da contenuti multimediali controllati dall'utente può finire per eseguire comandi sull'host durante la chiamata a thumbnail().
require("thumbler").thumbnail(
'test.mp4"; id > /tmp/pwned; echo "',
"/tmp/out.jpg",
{},
() => {}
);
Nessuna versione npm corretta è disponibile al momento della stesura.
Se dipendi ancora da questo pacchetto:
thumbnail().