本文へスキップ
Estontinc

公開日 5 分で読めます

Next.jsを安全にアップデートする方法:2026年10月14日のセキュリティパッチ後に

Next.jsのセキュリティパッチが公開されました。3件の脆弱性の影響範囲、インストールすべきバージョン、本番で問題を起こさずにアップデートする手順をまとめました。

ガラスの層に差し込まれる曇りガラスの盾。Next.jsを安全にアップデートする方法を表すイラスト

Next.jsを安全にアップデートするにはどうすればよいのでしょうか。 この問いは2026年10月14日に差し迫ったものになりました。Next.jsチームがv16.4.1(Active LTS)とv15.5.28(Maintenance LTS)を公開し、3件の脆弱性(うち2件はCritical)を修正したためです。チームはアプリの安全を保つため、Next.jsの依存関係を更新するよう求めています。

この記事では、パッチで修正された内容、影響を受けるアプリ、そして稼働中のサイトを壊さずにアップデートする慎重な手順を解説します。

10月14日のパッチで修正された内容

2026年9月から10月のNext.jsセキュリティ更新:上流の都合で2件の修正が保留された9月のリリース、Critical 2件とHigh 1件が予告された10月8日、16.4.1と15.5.28が公開された10月14日
  • Critical、use cacheでのリモートコード実行: Cache Componentsを使うApp Routerのアプリで、複数のtyped arrayを返すuse cache関数があると、認証なしでリモートコード実行が可能になります。既知の回避策はなく、類似の関数がなくてもすぐにアップグレードするよう推奨されています。
  • Critical、SVGを扱うImage Optimizationでのリモートコード実行: 上流ライブラリのメモリ関連の問題により、glibcベースのLinuxでNext.jsを動かすとリモートコード実行につながる可能性があります。回避策として、Next.jsが使うsharpを0.35.5以降にしてください。
  • High、Server Actionsでのサービス拒否: Server Actionを1つ以上持つApp Routerのアプリに細工したリクエストを送ると、CPUを過剰に使い他のリクエストを処理できなくなります。Pages RouterのアプリやServer Actionsを使わないアプリは影響を受けません。

このうち2件の修正は、上流との調整のため9月のリリースから延期されたものです。前回の内容は9月のNext.jsセキュリティリリースの記事で解説しています。

インストールすべきバージョン

  • Next.js 16.4の場合: npm install next@16.4.1 を実行します。
  • Next.js 15.5の場合: npm install next@15.5.28 を実行します。
  • LinuxでのImage Optimization: Next.jsをアップグレードすると、パッケージマネージャーが修正済みのsharpを自動で提供します。すぐにアップグレードできない場合は、sharpを0.35.5以降にしてください。

古いリリースラインを使っている場合は、サポート対象のバージョンへのアップグレードを計画しましょう。最新リリースの変更点はNext.js 16.4とCache Componentsの記事で解説しています。

Next.jsを安全にアップデートする手順

Next.jsを安全にアップデートするチェックリスト:すべてのアプリとバージョンを把握、自分のバージョンのアドバイザリを読む、ブランチで更新、テストと本番ビルドを実行、プレビューで主要ページを確認、デプロイ後にエラーとCPUを監視

私たちのプロジェクト経験から、稼働中のサイトを危険にさらさずにセキュリティ更新を素早く行う順番は次のとおりです。

  1. すべてのアプリとバージョンを把握する。 マーケティングサイト、ダッシュボード、社内ツールで異なるバージョンを使っていることがよくあります。
  2. 自分のバージョンのアドバイザリを読む。 Cache Components、Image Optimization、Server Actionsなど、影響を受ける機能を使っているか確認します。
  3. ブランチで更新する。 本番で直接作業せず、更新したロックファイルもコミットします。
  4. テストと本番ビルドを実行する。 ビルドで、ユーザーに影響が出る前にほとんどの破壊的変更を検出できます。
  5. プレビューデプロイで主要ページを確認する。 トップ、ログイン、決済、画像やフォームを使うページなど。
  6. デプロイ後、エラーとCPUを監視する。 最初の数時間で問題を早めに見つけます。

これらのチェックを自動で実行するパイプラインがあれば、作業は数日ではなく数時間で終わります。その安全な構築方法はCI/CDパイプラインを守る方法の記事で紹介しています。

ビジネスへの影響

脆弱性が最も危険なのは公表直後です。詳細が公開されているからです。1日でパッチ適用、テスト、デプロイができるサイトは、数週間かかるサイトよりはるかに安全です。その速さを支えるのが日常の保守です。

Estontincのサポート

Estontincはマラン(インドネシア)のソフトウェア開発会社で、6年以上にわたり100件以上のプロジェクトと50社以上のクライアントを支援してきました。Web開発サービスでNext.jsサイトを保守し、適切なテストのうえでセキュリティパッチを適用し、アップグレードを計画します。クラウド・DevOpsチームは、パッチを素早く安全に出せるようプレビューデプロイと監視を整えます。

サイトにパッチが適用済みかわからない場合は、お問い合わせページからサイトのアドレスをお送りください。24時間以内にご返信します。

よくある質問

2026年10月の脆弱性を修正したNext.jsのバージョンは?

2026年10月14日に公開された、Active LTS向けのNext.js 16.4.1と、Maintenance LTS向けの15.5.28です。現在使っているリリースラインに応じて、npm install next@16.4.1 または npm install next@15.5.28 でインストールします。

自分のNext.jsアプリは影響を受けますか?

use cacheの問題はCache Componentsを使うApp Routerのアプリ、画像の問題はglibcベースのLinuxでのImage Optimization、サービス拒否の問題はServer Actionsを使うApp Routerのアプリに影響します。Server Actionsを使わないPages Routerのアプリは3つ目の問題を避けられますが、アップグレードが最も安全です。

すぐにアップデートできない場合の回避策はありますか?

画像の問題のみ回避策があります。Next.jsが使うsharpパッケージを0.35.5以降にしてください。use cacheの脆弱性には既知の回避策がないため、類似の関数を使っていなくても、すぐにアップグレードするようNext.jsチームは推奨しています。

サイトを壊さずにNext.jsをアップデートするには?

本番ではなくブランチで更新し、テストと本番ビルドを実行し、プレビューデプロイで重要なページを確認してから、デプロイ後にエラーとCPU使用率を監視します。こうすることで、セキュリティ更新を素早く進めながら、ユーザーが気づく前に問題を見つけられます。

出典

この記事の事実と数値は、以下の公式情報に基づいています。

  • Web development
  • Next.js
  • Security
  • Maintenance
すべての記事を見る

アイデアを、動くソフトウェアに。

つくりたいものをお聞かせください。明確な計画、スケジュール、見積もりを無料でご提案します。

  • 無料相談
  • 24 時間以内に返信
  • NDA 締結可