概要
@fastify/middie の パススコープ ミドルウェア 使用時 に、Fastify ルーター の 正規化 オプション と の 不整合 を 悪用 した 認証・認可 バイパス の 脆弱性 が 存在 します。
CWE-20(入力検証不備)に 分類 される この 問題 は、Fastify ルーター が 提供 する ignoreDuplicateSlashes や ignoreTrailingSlash 等 の URL 正規化 オプション と、@fastify/middie の パス マッチング 処理 の 間 に 不整合 が ある こと に 起因 します。攻撃者 は URL を 巧妙 に 変形(例: 二重 スラッシュ の 挿入)する こと で、認証 ミドルウェア を バイパス し つつ、保護 された ルート に アクセス できます。
Express 互換 ミドルウェア を Fastify で 使用 する ため に @fastify/middie を 導入 して いる プロジェクト で、パス ベース の 認証・認可 ミドルウェア を 使用 して いる 場合 に 影響 を 受けます。
CVSSベクトル
| 項目 | 値 |
|---|---|
| CVSSスコア | 9.1 |
| 深刻度 | Critical |
| CWE | CWE-20 (入力検証不備) |
影響を受けるソフトウェア
| 製品 | ベンダー | 影響バージョン |
|---|---|---|
| @fastify/middie | Fastify | 9.2.0 未満 |
修正バージョンと回避策
- 修正バージョン: @fastify/middie 9.2.0 へ アップデート して ください
- 暫定回避策: Fastify の URL 正規化 オプション(
ignoreDuplicateSlashes,ignoreTrailingSlash)を 無効化 する。認証・認可 を ミドルウェア ではなく Fastify のonRequestフック で 実装 する - 確認方法:
npm ls @fastify/middieで 現在 の バージョン を 確認 して ください
関連リンク
データソース: NVD (NIST) AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
