
Avis de sécurité pour node-tesseract-ocr ⌯⌲ 50 000 téléchargements hebdomadaires
node-tesseract-ocr jusqu'à la version 2.2.1 permet l'injection de
commande système dans recognize() dans src/index.js. Le paquet
construit une chaîne de commande shell et l'exécute avec
child_process.exec(). Parce que le chemin d'entrée est uniquement
entouré de guillemets doubles, un attaquant peut injecter une syntaxe
shell via un chemin de fichier contrefait.
| Produit | Versions affectées | Version corrigée |
|---|
| node-tesseract-ocr | toutes les versions jusqu'à 2.2.1 | aucun correctif disponible en date du 2026-03-24 |
CVE-2026-26832CWE-78 - Injection de commande système9.8 (Critique)CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:Hsrc/index.js, recognize()Le motif vulnérable est :
const command = [binary, inputOption, "stdout", ...options].join(" ");
exec(command, ...);
Cette chaîne de commande hérite de l'analyse du shell. Un chemin de fichier malveillant peut s'échapper de l'argument entre guillemets.
Les applications qui exécutent une OCR sur des images fournies par
l'utilisateur peuvent exposer le système hôte à une exécution de
commande si elles transmettent des chemins non fiables à
recognize().
test.jpg"; touch /tmp/pwned; echo "x
Aucune version npm corrigée n'est disponible au moment de la rédaction.
Si vous dépendez toujours de ce paquet :
join(" ").execFile() ou spawn() avec des arguments explicites.