| 製品 | 影響を受けるバージョン | 修正版 |
|---|
| node-tesseract-ocr | 2.2.1 までの全バージョン | 2026-03-24 時点で修正版なし |
CVE-2026-26832CWE-78 - OS コマンドインジェクション9.8 (Critical)CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:Hsrc/index.js、recognize()脆弱なパターンは以下です:
const command = [binary, inputOption, "stdout", ...options].join(" ");
exec(command, ...);
このコマンド文字列はシェルのパース処理を受けます。悪意のあるファイルパスによって、引用符で囲まれた引数の外側に脱出できます。
ユーザーが指定した画像に対して OCR を実行するアプリケーションは、信頼できないパスを recognize() に渡すと、ホストシステムに対するコマンド実行を許してしまう可能性があります。
test.jpg"; touch /tmp/pwned; echo "x
本稿執筆時点では、修正済みの npm リリースはありません。
引き続きこのパッケージに依存する場合:
join(" ") でシェルコマンド文字列を組み立てるのをやめてください。execFile() または spawn() を使用してください。