NestJSの開発者ツールにRCE脆弱性(CVE-2025-54782)

セキュリティニュース

投稿日時: 更新日時:

NestJSの開発者ツールにRCE脆弱性(CVE-2025-54782)

2025年8月初旬、Node.js向けフレームワーク「NestJS」の開発補助パッケージ「@nestjs/devtools-integration」において、重大なリモートコード実行(RCE)脆弱性(CVE-2025-54782)が報告されました。CVSS v4スコアは9.4と評価されており、開発環境における深刻なリスクとなっています。

脆弱性の対象バージョン

該当パッケージのバージョンが v0.2.0 以下

脆弱性の対策バージョン

v0.2.1以上

脆弱性の概要

この脆弱性は、同パッケージがローカル開発環境で起動するHTTPサーバーに存在する「/inspector/graph/interact」エンドポイントが、開発者のローカルマシン上で任意のJavaScriptコードを実行できてしまう点に起因します。問題の根幹は、以下の2点です

  1. 安全でないサンドボックスの利用
    • Node.jsの vm.runInNewContext による簡易な実装で、古くに放棄されたsafe-evalライブラリに類似した手法が取られており、既知のサンドボックス回避手法で容易に脱出可能です。
  2. クロスオリジン制限の不備(CORSの設定ミス)

これらの脆弱性を組み合わせることで、攻撃者は悪意のあるWebページを介し、開発者がそのページを閲覧しただけで、ローカル環境のNestJS開発サーバーに対して任意のコードを実行させることができます。

攻撃シナリオの例

  • 開発者が @nestjs/devtools-integration を有効にしてローカルでNestJSアプリを起動
  • 悪意のあるWebサイトにアクセス
  • HTMLフォームやXHR経由で localhost:<port>/inspector/graph/interact へ細工されたリクエストを送信
  • NestJS開発サーバーがリクエストを信用し、悪意のあるコードを実行
  • 攻撃者がローカル環境にアクセス可能