30秒で判断
- 対応すべき人: Nuxt を使用し、
appMiddlewareによるルート単位の認証・アクセス制御を行っている方 - 対応不要な人: Nuxt を使用していない/ルートルールによる認証ゲートを利用していない/修正済みバージョンを使用中の方
- 確認コマンド:
npm ls nuxt(バージョン確認)、nuxt.configのrouteRulesとappMiddleware設定を確認
概要
大文字小文字が混在したパスに対して Nuxt のルートルールが黙って無視され、appMiddleware による認証ゲートを回避できてしまう脆弱性です。過去のCVEに対する修正が不完全だったことに起因します(incomplete fix)。認証で保護しているはずのルートに、未認証のまま到達される恐れがあります。
たとえば /admin を認証必須にルート設定していても、/Admin や /ADMIN のように大文字を混在させたパスでアクセスすると、ミドルウェアのルールが適用されずに保護対象のハンドラへ到達してしまう、という挙動です。管理画面や内部APIなど、ミドルウェアのルートルールだけで保護しているエンドポイントがある場合は影響が大きくなります。攻撃条件はネットワーク経由・権限不要・ユーザー関与不要と成立しやすく、CVSS基本値は 8.2 と高めに評価されています。
CVSSベクトル
| 指標 | 値 |
|---|---|
| 攻撃元区分 (AV) | ネットワーク (N) |
| 攻撃条件の複雑さ (AC) | 低 (L) |
| 必要な権限 (PR) | 不要 (N) |
| ユーザー関与 (UI) | 不要 (N) |
| スコープ (S) | 変更なし (U) |
| 機密性/完全性/可用性 | 高 / 低 / なし |
| 基本値 | 8.2(High) |
影響を受けるソフトウェア
| 製品 | パッケージ | 影響バージョン |
|---|---|---|
| Nuxt | nuxt (npm) | < 4.5.1 |
| Nuxt | nuxt (npm) | < 3.21.10 |
修正バージョンと回避策
- Nuxt 4.5.1 または 3.21.10 以降へアップデートしてください。
- アップデートが困難な場合は、認証をミドルウェアのルートルールのみに依存せず、各ルートハンドラ側でも認証チェックを行う多層防御を検討してください。パスの正規化(小文字化)をリバースプロキシ側で行うことも軽減策になります。
関連リンク
データソース: NVD (NIST), OSV (Google), GitHub Advisory Database
AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
