つみかさね

CVE-2026-71320

High(8.1)

Nuxtのサーバーサイドテンプレートインジェクション CVE-2026-71320:影響範囲と対応方法

公開日: 2026-08-13データソース: NVD, GitHub Advisory

影響を受けるソフトウェア

製品ベンダー影響バージョン
Nuxt (3系)Nuxt< 3.21.10
Nuxt (4系)Nuxt< 4.5.1

対応ガイド

high|推奨セキュリティ修正影響: 広範

推奨アクション

  1. 1npm ls nuxt でバージョンを確認する
  2. 2nuxt.config で vue.runtimeCompiler の有効/無効を確認する
  3. 3nuxt を 3.21.10 / 4.5.1 以降へアップデートする

影響対象

Nuxt 利用者(runtimeCompiler 有効かつサーバーアイランド利用)

対応不要な人

  • Nuxt を使用していない
  • vue.runtimeCompiler を有効化していない(デフォルトは無効)
  • 3.21.10 / 4.5.1 以降を使用中

補足

  • -すぐに更新できない場合は vue.runtimeCompiler を無効化(既定値)に戻すことで緩和できます

関連するリリース情報

この脆弱性に関連するフレームワークの最新リリース・修正バージョンを確認できます。

CVENuxtRCEテンプレートインジェクションnpm

30秒で判断

  • 対応すべき人: Nuxt 3系(< 3.21.10)/ 4系(< 4.5.1)を使い、vue.runtimeCompiler: true を有効化しているうえ、サーバーアイランドの props を動的コンポーネント解決に渡している方
  • 対応不要な人: Nuxt を使っていない / runtimeCompiler を有効化していない(デフォルトは無効)/ すでに 3.21.10・4.5.1 以降を使用中の方
  • 確認コマンド: npm ls nuxt でバージョンを、grep -R "runtimeCompiler" nuxt.config.* で設定を確認

概要

Nuxt のサーバーアイランドは /__nuxt_island/ エンドポイント経由で props を受け取ります。vue.runtimeCompiler: true(既定では無効)を有効化し、アプリケーションがサーバーアイランドコンポーネントで props を Vue の動的コンポーネント解決(<component :is>resolveDynamicComponenth() 等)へ転送している場合、攻撃者が props に template キーを注入することでサーバーサイドのリモートコード実行につながります。

CVSSベクトル

指標
攻撃元区分 (AV)ネットワーク (N)
攻撃条件の複雑さ (AC)高 (H)
必要な権限 (PR)なし (N)
ユーザー関与 (UI)不要 (N)
機密性/完全性/可用性いずれも 高 (H)
基本値8.1 (High)

影響を受けるソフトウェア

製品パッケージ影響バージョン
Nuxt(3系)nuxt (npm)< 3.21.10
Nuxt(4系)nuxt (npm)< 4.5.1

修正バージョンと回避策

  • 修正: nuxt3.21.10 または 4.5.1 以降へアップデート
  • 回避策: すぐに更新できない場合は vue.runtimeCompiler を無効化(既定値)に戻す

関連リンク


データソース: NVD (NIST), OSV (Google), GitHub Advisory Database AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。

Xでシェアはてブ
データソース: NVD (NIST), OSV (Google), GitHub Advisory Database, JVN iPedia (IPA/JPCERT/CC)
AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。