JVNDB-2026-005469 | |
minimatch projectのminimatchにおけるアルゴリズムの複雑さに関する脆弱性 | |
| 概要 | |
minimatchは、glob式をJavaScriptの正規表現オブジェクトに変換するための最小限のマッチングユーティリティです。バージョン10.2.3、9.0.7、8.0.6、7.4.8、6.2.2、5.1.8、4.2.5、および3.1.3より前のバージョンでは、globパターンに複数の非隣接の「**」(GLOBSTAR)セグメントが含まれ、入力パスが一致しない場合、`matchOne()`が無制限の再帰的バックトラッキングを行います。この処理の時間計算量はO(C(n, k))(二項係数)であり、`n`はパスセグメントの数、`k`はglobstarの数を表します。k=11でn=30の場合、デフォルトの`minimatch()` APIの呼び出しは約5秒間停止します。k=13では15秒を超えます。この動作を制限するためのメモ化や呼び出し制限は存在しません。攻撃者が`minimatch()`に渡されるglobパターンに影響を与えられるアプリケーションはすべて、この問題に対して脆弱です。現実的な攻撃対象には、ユーザー提供のglob引数を受け付けるビルドツールやタスクランナー(ESLint、Webpack、Rollupの設定)、共有プロセスで動作する多テナントシステムにおいて一テナントがglobベースのルールを構成する場合、globとして無視ルールやフィルター設定を受け付ける管理者や開発者向けインターフェース、およびglobパターンを含むユーザー提出の設定ファイルを評価するCI/CDパイプラインが含まれます。攻撃者はこれらのいずれかの経路に細工されたパターンを配置することで、Node.jsのイベントループを呼び出しごとに数十秒間停止させることが可能です。パターンは56バイトで5秒間の停止を引き起こし、パターン入力が機能の一部である状況では認証を必要としません。バージョン10.2.3、9.0.7、8.0.6、7.4.8、6.2.2、5.1.8、4.2.5、および3.1.3でこの問題は修正されています。 | |
| CVSS による深刻度 (CVSS とは?) | |
|
CVSS v3 による深刻度
基本値: 7.5 (重要) [その他]
| |
| 影響を受けるシステム | |
|
| |
minimatch project | |
本脆弱性の影響を受ける製品の詳細については、ベンダ情報および参考情報をご確認ください。 | |
| 想定される影響 | |
当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 | |
| 対策 | |
正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。 | |
| ベンダ情報 | |
GitHub | |
| CWEによる脆弱性タイプ一覧 CWEとは? | |
| |
| 共通脆弱性識別子(CVE) CVEとは? | |
|
| |
| 参考情報 | |
| |
| 更新履歴 | |
|
| 公表日 | 2026/02/26 |
| 登録日 | 2026/03/02 |
| 最終更新日 | 2026/03/02 |



