概要
React Router(および Remix v1/v2)の Framework Mode・Data Mode・unstable RSC モードにおいて、ローダーやアクションから発生するリダイレクトが外部入力を含む場合、javascript: URI 等の unsafe な URL が生成されクライアント側でスクリプトが実行されます(CWE-79)。
この脆弱性は、リダイレクト先のパスを信頼できないコンテンツから構築している場合、またはオープンリダイレクトが存在する場合にのみ影響します。宣言型モード(<BrowserRouter>)を使用しているアプリは影響を受けません。
CVSSベクトル
| 項目 | 値 |
|---|---|
| CVSSスコア | 8.0 |
| 深刻度 | High |
| 攻撃元区分 | ネットワーク |
| 攻撃条件の複雑さ | 低 |
| 必要な特権 | 低 |
| ユーザー関与 | 必要 |
| CWE | CWE-79(クロスサイトスクリプティング) |
影響を受けるソフトウェア
| 製品 | ベンダー | 影響バージョン |
|---|---|---|
| react-router | Remix Software / ReactTraining | v7.0.0〜v7.11.0 |
| @remix-run/router | Remix Software | v1.23.1 以前 |
修正バージョンと回避策
- 修正バージョン: react-router v7.12.0 / @remix-run/router v1.23.2 以降
- 回避策:
- ローダー・アクションからのリダイレクトに外部入力を含める場合は、許可リストによる URL 検証を実施する
- オープンリダイレクトが存在する場合は優先的に修正する
関連リンク
データソース: NVD (NIST) AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
