@vitest/browserにおいて、ブラウザモードのビルトインコマンドがファイルアクセスの許可ゲートを回避してしまう脆弱性が存在する。本来、ネットワーク経由でブラウザモードAPIが公開され、`allowWrite`が`false`に設定されている環境ではファイルアクセスが制限されるべきところ、複数のプロバイダコマンド(アップロード、スクリーンショット撮影、トレース管理など)がこの権限チェックやプロジェクトディレクトリへのパス制限を無視して動作する。これにより、Vitestプロセスがアクセス可能な任意のファイルの読み取り、作成、上書き、削除が可能となる。特にブラウザモードAPIが外部ネットワークへ公開されている環境において重大なリスクとなる。
対象ソフト
@vitest/browserは、JavaScriptテストフレームワークであるVitestのブラウザモード機能を提供するnpmパッケージである。フロントエンドアプリケーションのテストをブラウザ環境で実行する開発現場やCI環境などで広く利用されている。
影響
攻撃者がネットワーク経由でブラウザモードAPIにアクセスできる場合、任意のローカルファイルの読み取りによる機密情報の流出、任意の場所へのファイル作成・上書き、および任意のファイルの削除といった不正な操作が行われるおそれがある。
対応策
影響を受けるバージョンに応じて、@vitest/browserをパッチ適用済みバージョン(3.2.7、4.1.10、5.0.0-beta.6以降)にアップグレードすること。