Next.jsに3件の重大な脆弱性、認証不要RCE2件を修正―CVE-2026-96889 他

セキュリティニュース

投稿日時: 更新日時:

Next.jsに3件の重大な脆弱性、認証不要RCE2件を修正―CVE-2026-96889 他

Next.js開発チームは2026年10月14日、Reactや画像処理ライブラリなど上流の依存関係に起因する脆弱性を修正したセキュリティ更新を公開しました。対象は、認証不要でリモートコード実行(RCE)につながるおそれがある2件と、サービス拒否(DoS)を引き起こす1件の計3件です。修正版はNext.js 16.4.1と15.5.28で、開発元は利用アプリケーションの依存関係を更新するよう呼びかけています。

Next.jsの2026年10月セキュリティ更新のサマリー

  • 公表日:2026年10月14日。通常のリリースサイクル外で実施したセキュリティ更新です。
  • 修正版:Next.js 16.4.1(Active LTS)、15.5.28(Maintenance LTS)。
  • use cacheを利用する一部のApp Routerアプリケーションでは、複数の型付き配列を返す処理を介して認証不要のRCEが成立するおそれがあります。
  • Image Optimization APIのSVG画像処理では、glibcベースのLinux環境においてRCEにつながり得る問題が修正されました。
  • App RouterのServer Actionsを利用するアプリケーションでは、細工したリクエストによりCPU使用率が上昇し、同一プロセスで後続リクエストを処理できなくなるDoSの問題がありました。
  • 3件のうちRCE2件は「Critical」、DoSは「High」。Next.jsの各アドバイザリではCVSS v4.0で、それぞれ9.5、9.5、8.2と評価されています。
  • use cacheのRCEとServer ActionsのDoSに既知の回避策はなく、修正版への更新が案内されています。SVG処理のRCEにはsharp 0.35.5以降への更新が暫定対応として示されています。
脆弱性 識別子 主な影響条件 影響バージョン 修正版
use cacheによる認証不要RCE(Critical/CVSS v4.0:9.5) GHSA-673q-mjm6-r5xr App RouterとCache Componentsを使用し、use cache関数が複数の型付き配列を返す場合 16.0.0~16.4.0 16.4.1
SVG画像最適化処理による認証不要RCE(Critical/CVSS v4.0:9.5) CVE-2026-96889/GHSA-2464-fhr4-w9xw Image Optimization API、上流の画像処理ライブラリ、glibcベースのLinux環境などの条件 10.0.0~15.5.27、16.0.0~16.4.0 15.5.28/16.4.1
Server ActionsによるDoS(High/CVSS v4.0:8.2) GHSA-p3m5-59mp-jv5r App Routerで少なくとも1つのServer Actionを使用する場合 13.0.0~15.5.27、16.0.0~16.4.0 15.5.28/16.4.1

※影響バージョンはNext.jsの公式GitHubアドバイザリに記載された範囲です。実際の影響は、ルーター、利用機能、実行環境、依存ライブラリの構成によって異なります。

use cacheにおける型付き配列処理の問題―Next.js 16系でRCEのおそれ

GHSA-673q-mjm6-r5xrは、React Server Componentsを扱う上流実装に由来する問題です。Next.jsでは16.0.0から16.4.0までのApp Routerアプリケーションが対象となります。Cache Componentsを利用する環境で、use cache関数が複数のTypedArray(型付き配列)を返す処理がある場合、認証を必要としないリクエストからサーバー側で任意のコードが実行されるおそれがあります。

関連するReactの一次アドバイザリはGHSA-xqc2-xf4c-x3h3です。React側は、複数の型付き配列に加えて攻撃者が制御できる値が関係する、限られた条件下の問題と説明しています。一方、Next.jsチームは同様の関数を利用していないと考えられる場合も直ちに更新するよう求めており、機能の利用状況だけを根拠に更新を見送る判断は推奨していません。

この問題に対するNext.js 15系の修正バージョンは案内されていません。該当するNext.js 16系では16.4.1へ更新します。

SVG画像の最適化処理にもRCE―CVE-2026-96889

CVE-2026-96889は、Next.jsの画像最適化処理で使われるsharpの上流依存ライブラリlibrsvgのメモリ管理に関する脆弱性です。Next.jsのGHSA-2464-fhr4-w9xwでは、glibcベースのLinux上で画像最適化処理が実行される場合、リモートコード実行に至る可能性があると説明しています。

sharpの開発元はGHSA-wq5f-xc86-pv6wで、0.35.5未満が影響を受けると公表しています。修正版のsharp 0.35.5には、修正されたlibrsvg 2.63.2が含まれます。Next.js本体の更新が直ちに行えない場合、Next.jsが実際に使用するsharpを0.35.5以降にする方法が公式の回避策として案内されています。

ただし、sharpのみの更新で緩和できるのは今回のSVG画像処理の問題です。他の2件まで解消するものではありません。実運用では、更新後の依存関係を確認したうえでアプリケーションを再ビルド・再デプロイする必要があります。

Server ActionsへのリクエストでDoS―GHSA-p3m5-59mp-jv5r

GHSA-p3m5-59mp-jv5rは、App RouterでServer Actionsを使用するアプリケーションに影響します。細工したリクエストを処理するとCPU使用率が過剰に高まり、同じプロセスが後続リクエストを処理できなくなる可能性があります。

この問題は、Pages Routerのみを使用するアプリケーションやServer Actionsを使用していないアプリケーションには該当しないとNext.jsチームが説明しています。対応するReact側のアドバイザリはGHSA-h3gv-c5rc-p453です。Next.js 13.0.0以降の該当バージョンについては、15.5.28または16.4.1への更新が示されています。

Next.js利用企業・開発部門が確認する事項

まず、公開中のアプリケーションごとに、使用中のNext.jsのバージョン、App Router・Cache Components・Server Actionsの有無、画像最適化処理と実行OSを確認します。特に本番のデプロイ環境で使われる依存関係が、ローカル開発環境と一致しているかを確認してください。

既に15.5系を使用している場合は15.5.28、16.4系の場合は16.4.1への更新が公式に案内されています。古いメジャーバージョンを使用している環境では、対象となる脆弱性と互換性への影響を確認したうえで、サポート対象の修正版へ移行する必要があります。

# アプリケーションの依存パッケージを確認
npm ls next sharp react-server-dom-webpack react-server-dom-turbopack react-server-dom-parcel

# Next.js 15.5系を使用している場合
npm install [email protected]

# Next.js 16.4系を使用している場合
npm install [email protected]

Next.jsとは別にReact Server Components関連パッケージを直接管理している場合は、React開発元の修正版19.0.9、19.1.10、19.2.9、19.3.1のうち使用系列に対応するものを確認します。

更新後は依存関係のロックファイルを反映し、本番環境を再ビルド・再デプロイしてください。影響範囲の切り分けには、対象パッケージだけでなく、画像処理に渡される入力形式、Server Actionsの公開状況、アプリケーションの実行環境も確認対象となります。

なお、今回の新たなGHSAと、2025年12月に公開されたReact2Shell(CVE-2025-55182)の脆弱性は別の問題です。既存のReact2Shell対策が完了していても、今回の更新への対応状況を確認する必要があります。

出典