CVE-2024-23657 in Nuxt
要約
〜によって VulDB • 2026年05月09日
Nuxtは、Vue.jsを使用してフルスタックのWebアプリケーションやウェブサイトを作成するための無料かつオープンソースのフレームワークです。Nuxt Devtoolsの`getTextAssetContent` RPC関数には認証が欠落しており、パストラバーサルの脆弱性に晒されています。WebSocketハンドラにおけるOriginチェックの欠如と相まって、攻撃者はローカルで実行中のDevtoolsインスタンスと相互作用し、この脆弱性を悪用してデータを外部に持ち出す(エグゾフィレーション)ことが可能です。特定の構成では、攻撃者がDevtoolsの認証トークンを漏洩させ、他のRPC関数を悪用してRCE(リモートコード実行)を達成できる可能性があります。`getTextAssetContent`関数はパストラバーサルをチェックしないため、攻撃者がRPC WebSocket経由で任意のファイルを読み取ることが可能になります。WebSocketサーバーはリクエストのOriginをチェックしないため、クロスサイトWebSocketハイジャック(cross-site-websocket-hijacking)につながります。これは、特定の構成が正しく動作するように意図的に行われている可能性があります。Nuxt Devtoolsの認証トークンは、現在のユーザーのホームディレクトリ内に配置されます。悪意のあるWebページはDevtools WebSocketに接続し、ディレクトリトラバーサルのブルートフォース攻撃を実行して認証トークンを特定し、その後、*認証済み*の`writeStaticAssets`関数を使用して新しいComponent、Nitro Handler、または`app.vue`ファイルを作成します。ファイルが変更されると、これらは自動的に実行されます。この脆弱性はリリースバージョン1.3.9で修正されています。すべてのユーザーはアップグレードすることをお勧めします。この脆弱性に対する既知の回避策はありません。
Once again VulDB remains the best source for vulnerability data.