CVE-2025-61686: React Router has Path Traversal in File Session Storage
React Router is a router for React. In @react-router/node versions 7.0.0 through 7.9.3, @remix-run/deno prior to version 2.17.2, and @remix-run/node prior to version 2.17.2, if createFileSessionStorage() is being used from @react-router/node (or @remix-run/node/@remix-run/deno in Remix v2) with an unsigned cookie, it is possible for an attacker to cause the session to try to read/write from a location outside the specified session file directory. The success of the attack would depend on the permissions of the web server process to access those files. Read files cannot be returned directly to the attacker. Session file reads would only succeed if the file matched the expected session file format. If the file matched the session file format, the data would be populated into the server side session but not directly returned to the attacker unless the application logic returned specific session information. This issue has been patched in @react-router/node version 7.9.4, @remix-run/deno version 2.17.2, and @remix-run/node version 2.17.2.
Security readout for executives and security teams
Plain-English summary
React Router and Remix applications can be exposed when they store sessions in files and use an unsigned session cookie. An attacker may influence where the server reads or writes session data outside the intended directory. The issue is serious because it can affect integrity and availability, but file contents are not directly returned to the attacker.
Executive priority
Prioritize remediation for internet-facing React Router or Remix services using file-based sessions. Treat this as urgent where session state controls authorization, account state, or operational workflows.
Technical view
CVE-2025-61686 is a CWE-22 path traversal in createFileSessionStorage() affecting @react-router/node 7.0.0 through 7.9.3 and @remix-run/node or @remix-run/deno before 2.17.2. It requires file session storage with an unsigned cookie. Reads only populate session state if the target file matches the expected session format.
Likely exposure
Exposure is likely limited to React Router or Remix deployments using createFileSessionStorage() with unsigned cookies. Risk depends on server process file permissions and application logic that trusts or returns session data.
Exploitation context
The source bundle reports network-reachable, unauthenticated exploitation characteristics in CVSS, but KEV is false and no provided source confirms active exploitation. Successful impact depends on writable or readable paths available to the web server process.
Researcher notes
Do not assume arbitrary file disclosure. Sources state read files are not directly returned and reads require expected session file format. Focus validation on affected versions, unsigned cookie configuration, file permissions, and application behavior using populated session values.
Mitigation direction
Upgrade @react-router/node to version 7.9.4 or later.
Upgrade @remix-run/node to version 2.17.2 or later.
Upgrade @remix-run/deno to version 2.17.2 or later.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · medium confidence lookup
CWE-22: File access and web shell behavior lookup
File traversal and upload weaknesses can lead teams to review file, web shell, execution, and collection telemetry. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
The CVE wording references file access or upload behavior, so file telemetry and web shell review may help. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-22 · source CWE mapping
Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.