Next.jsのセキュリティ脆弱性がクラウド認証情報、APIキー、管理インターフェースを漏洩

最も広く使用されているReactフレームワークの1つであるNext.jsは、攻撃者が機密性の高いクラウド認証情報、APIキー、さらには内部管理インターフェースにアクセスすることを可能にする可能性がある高重度の脆弱性に見舞われています。

CVE-2026-44578として追跡されているこの欠陥は、特定のサーバー側デプロイメントがWebSocketアップグレードリクエストをどのように処理するかについての重大な弱点を露出しています。

Next.jsセキュリティ脆弱性

この脆弱性は、組み込みNode.jsサーバー上で実行されている自己ホスト型のNext.jsアプリケーション、特にバージョン13.4.13~15.5.15および16.0.0~16.2.4に影響します。

Next.jsメンテナーのTim Neutkensが発表したGitHubアドバイザリによると、この問題はWebSocketアップグレード処理中の不適切な検証に由来し、サーバー側リクエストフォージェリ(SSRF)の条件を有効にしています。

実際には、攻撃者は悪意のあるWebSocketアップグレードリクエストを作成して、サーバーが意図しない宛先へトラフィックを転送するようにすることができます。

これには、内部サービス、クラウドインフラストラクチャのエンドポイント、およびIAM認証情報やアクセストークンなどの非常に機密性の高い情報を保存することが多いメタデータAPIが含まれます。

セキュリティ研究者は、エクスプロイトには認証もユーザーの操作も不要であると警告しており、これは公開されているNext.jsアプリケーションを実行している環境では特に危険です。

CVSS スコアが8.6で、ネットワークベースの攻撃ベクトルを持つこの欠陥は、公開されているNext.jsアプリケーションを実行している組織のリスクを大幅に増加させます。

この脆弱性の最も懸念される側面の1つは、クラウドメタデータエンドポイントを露出する可能性です。

たとえば、AWSでホストされているアプリケーションを対象にしている攻撃者は、SSRFを悪用してインスタンスメタデータサービスをクエリし、一時認証情報を取得できます。この認証情報は、その後、特権をエスカレートするか、クラウド環境内で横方向に移動するために使用できます。

この問題は、Vercelでホストされているアプリケーションには影響しません。このプラットフォームは、安全でないリクエストルーティングを防ぐ追加のセーフガードを実装しているためです。ただし、独自のインフラストラクチャを管理している組織は、直ちに対応するよう促されています。

Next.jsチームは、パッチが適用されたバージョン15.5.16および16.2.5をリリースしました。これらは、WebSocketアップグレードリクエストの検証チェックを厳密にしています。

これらの更新により、明示的に信頼された外部書き直しのみが許可されるようになり、WebSocket処理が既存のHTTPセキュリティ制御に準拠するようになります。

すぐにパッチを適用できない組織向けに、いくつかの軽減戦略が推奨されています。

管理者は、元のサーバーをインターネットに直接公開することを避け、リバースプロキシまたはロードバランサーで不要なWebSocketアップグレードリクエストをブロックし、機密性の高い内部エンドポイントまたはメタデータへのアウトバウンドトラフィックを制限する必要があります。

このインシデントは、モダンWebフレームワークがバックエンドシステムとクラウドサービスへの深い統合により高い価値のターゲットになりつつあるという増加傾向を浮き彫りにしています。

SSRFの脆弱性が進化し続ける中、開発者は意図しないデータ露出を防ぐため、より厳密なネットワーク制御と検証メカニズムを採用する必要があります。

本番環境でNext.jsを使用している組織は、パッチの適用を優先し、ネットワークアーキテクチャを見直して露出を最小化する必要があります。特にクラウド認証情報と内部サービスが関係している場所では。

翻訳元: https://gbhackers.com/next-js-security-flaw-leaks-cloud-credentials/

ソース: gbhackers.com