2026年1月8日(現地時間)に、React Routerのセキュリティアドバイザリとして「createFileSessionStorage() を未署名Cookieで使っている場合、セッションが指定ディレクトリ外のファイルを読み書きしようとする可能性がある」脆弱性が公開されました。深刻度はCriticalで、CVE-2025-61686、CVSS 9.1として扱われています。
概要
GitHub上のセキュリティアドバイザリで、React RouterのNode向け実装(およびRemix v2系の関連パッケージ)において、createFileSessionStorage() 利用時に未署名Cookieを許容していると、攻撃者がセッションID相当の値を操作し、セッションファイルの参照先を本来の保存先ディレクトリの外へ誘導できる可能性があると説明されています。
攻撃の成否は、Webサーバープロセスがファイルシステム上でどの範囲にアクセス権限を持つかに依存します。
脆弱性の対象バージョン
CVE-2025-61686は、createFileSessionStorage() を使う環境で、次のバージョン範囲が影響を受けます。
-
@react-router/node:7.0.0 〜 7.9.3 -
@remix-run/node:2.17.1 以下 -
@remix-run/deno:2.17.1 以下
脆弱性の対策バージョン
CVE-2025-61686は、次のバージョン以降で修正されています。
-
@react-router/node:7.9.4 以降 -
@remix-run/node:2.17.2 以降 -
@remix-run/deno:2.17.2 以降
まずは依存関係を修正版へ更新し、そのうえで本番環境でCookie署名が有効になっているか(secret未設定で署名が無効になっていないか)まで確認するのが安全です。
影響
この問題は「任意ファイルの内容がそのまま攻撃者に返る」というタイプではありません。
読み取りが成功するには、期待されるセッションファイル形式に一致する必要があるなどの制約がある一方で、攻撃者が意図した場所への読み書きを誘導できる足場ができるのは危険です。
特に、Webサーバープロセスの権限が強い環境だと、改ざんや障害(可用性低下)につながる余地が広がります。








