
Avis pour thumbler
thumbler jusqu'à la version 1.1.2 permet une injection de commandes système dans
thumbnail() dans lib/thumbler.js. Le package concatène les valeurs
input, output, time et size dans une seule chaîne de commande
ffmpeg et exécute cette chaîne avec child_process.exec().
Un attaquant qui contrôle l'une de ces valeurs peut injecter une syntaxe
shell et exécuter des commandes arbitraires.
| Produit | Versions affectées | Version corrigée |
|---|---|---|
| thumbler | toutes les versions jusqu'à 1.1.2 | aucun correctif disponible au 2026-03-24 |
CVE-2026-26833CWE-78 - Injection de commandes système9.8 (Critique)CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:Hlib/thumbler.js, thumbnail()Le chemin de code vulnérable construit la chaîne shell suivante :
exec(
'ffmpeg -ss ' + time + ' -i "' + input + '" -vframes 1 -s ' +
size + ' "' + output + '"',
...
);
Étant donné que la commande est assemblée sous forme de chaîne, chaque champ contrôlé par l'attaquant est un point d'injection potentiel.
Tout service qui génère des vignettes à partir de médias contrôlés par
l'utilisateur peut finir par exécuter des commandes sur l'hôte lors de
l'appel à thumbnail().
require("thumbler").thumbnail(
'test.mp4"; id > /tmp/pwned; echo "',
"/tmp/out.jpg",
{},
() => {}
);
Aucune version npm corrigée n'est disponible au moment de la rédaction.
Si vous dépendez encore de ce package :
thumbnail().