
textract に関するアドバイザリ ⌯⌲ 週間ダウンロード数 15 000
| 製品 | 影響を受けるバージョン | 修正バージョン |
|---|
| textract | 2.5.0 までの全バージョン | 2026-03-24 時点で修正版なし |
CVE-2026-26831CWE-78 - OS コマンドインジェクション9.8(重大)CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:Hlib/extractors/doc.jslib/extractors/rtf.jslib/extractors/dxf.jslib/extractors/images.jslib/util.js一例として、doc.js 抽出器があります:
exec('antiword -m UTF-8.txt "' + filePath + '"', ...)
もう一つの例は rtf.js のパス処理で、シェルコマンドを実行する前にスペースのみをエスケープします。これは ;、バッククォート、$() などのメタ文字を阻止できません。
アプリケーションは多くの場合、ユーザーがアップロードした文書に対して textract を使用します。そのような構成では、悪意のあるファイル名がテキスト抽出中にコマンド実行を引き起こす可能性があります。
次のような入力ファイル名:
test";whoami;".doc
は、脆弱な抽出器が実行されると、引用符で囲まれたコマンド文字列から抜け出すことができます。
本稿執筆時点では、修正済みの npm リリースはありません。
このパッケージに依然として依存している場合は:
textract に渡さないでください。exec() を引数安全なプロセス実行に置き換えてください。