30秒で判断
- 対応すべき人: Nuxt を使用し、Server Islands(
/__nuxt_island/)を本番で公開している方 - 対応不要な人: Nuxt を使用していない/Server Islands を利用していない/修正済みバージョンを使用中の方
- 確認コマンド:
npm ls nuxt(バージョン確認)
概要
Nuxt の island エンドポイントで、リクエスト本文のハッシュ検証を行う前にパースとハッシュ化を実施してしまうため、未認証の攻撃者が大きな本文を送り付けることでCPUを枯渇させ、サービス妨害(DoS)を引き起こせる恐れがあります。
本来であれば、リクエストが正当かどうか(ハッシュの一致)を先に確認してから重い処理を行うべきところ、検証前に入力全体をパース・ハッシュ化する順序になっている点が問題です。このため、正当なハッシュを知らない攻撃者でも、巨大なリクエストを繰り返し送信するだけでサーバーの計算資源を消費させられます。攻撃条件はネットワーク経由・権限不要・ユーザー関与不要で、可用性への影響が「高」と評価され、CVSS基本値は 7.5 です。インターネットに公開された Nuxt アプリケーションでは、優先的な確認を推奨します。
CVSSベクトル
| 指標 | 値 |
|---|---|
| 攻撃元区分 (AV) | ネットワーク (N) |
| 攻撃条件の複雑さ (AC) | 低 (L) |
| 必要な権限 (PR) | 不要 (N) |
| ユーザー関与 (UI) | 不要 (N) |
| スコープ (S) | 変更なし (U) |
| 機密性/完全性/可用性 | なし / なし / 高 |
| 基本値 | 7.5(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 により自動生成されています。正確性については原文をご確認ください。
