CVE-2025-61686: CWE-22: Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') in remix-run react-router
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.
AI Analysis
Technical Summary
CVE-2025-61686 is a critical security vulnerability classified under CWE-22 (Improper Limitation of a Pathname to a Restricted Directory, or Path Traversal) affecting the React Router and Remix Run frameworks used in JavaScript/TypeScript web applications. The flaw exists in the createFileSessionStorage() function within @react-router/node (versions 7.0.0 through 7.9.3), @remix-run/deno (prior to 2.17.2), and @remix-run/node (prior to 2.17.2). When an unsigned cookie is used, an attacker can manipulate the session storage path to read or write files outside the designated session directory. This occurs because the pathname is not properly sanitized or restricted, allowing traversal sequences (e.g., ../) to escape the intended directory boundaries. The vulnerability depends on the web server process permissions; if the server has access to sensitive files, these could be accessed or overwritten. However, direct file content disclosure to the attacker is not possible unless the file matches the expected session file format, in which case the data could be loaded into the server-side session. This could lead to session poisoning or denial of service by corrupting session data. The vulnerability requires no authentication or user interaction and can be exploited remotely over the network. The issue was patched in @react-router/node 7.9.4, @remix-run/deno 2.17.2, and @remix-run/node 2.17.2. The CVSS v3.1 score is 9.1 (critical), reflecting high impact on integrity and availability with low attack complexity and no privileges required.
Potential Impact
For European organizations, this vulnerability poses a significant risk to web applications built using the affected versions of React Router and Remix Run frameworks. Exploitation could allow attackers to corrupt session data or cause denial of service by manipulating session storage files, potentially disrupting user sessions and application availability. Although direct data exfiltration is limited, session poisoning could lead to unauthorized actions or privilege escalation depending on application logic. Organizations in sectors with high reliance on web applications—such as finance, e-commerce, healthcare, and government—may face operational disruptions and reputational damage. The vulnerability's ease of exploitation and lack of required authentication increase the risk of widespread attacks, especially against public-facing applications. Additionally, if the web server process has elevated file system permissions, the impact could extend to unauthorized file modifications beyond session files, increasing the attack surface. Given the popularity of React and Remix in European software development, many organizations could be affected if patches are not applied promptly.
Mitigation Recommendations
European organizations should immediately upgrade to the patched versions: @react-router/node 7.9.4 or later, @remix-run/deno 2.17.2 or later, and @remix-run/node 2.17.2 or later. Beyond upgrading, developers should audit session management code to ensure that file paths are properly sanitized and restricted to intended directories. Implement strict file system permissions for the web server process to minimize access to sensitive files outside session storage directories. Employ runtime application self-protection (RASP) or web application firewalls (WAFs) with custom rules to detect and block path traversal patterns in session cookie values or related inputs. Conduct thorough testing of session handling logic to verify that corrupted or malicious session data cannot escalate privileges or cause application errors. Monitor application logs for unusual session file access patterns or errors indicative of attempted exploitation. Finally, integrate secure coding practices and static code analysis tools to detect similar path traversal issues in future development.
Affected Countries
Germany, France, United Kingdom, Netherlands, Sweden, Italy, Spain
CVE-2025-61686: CWE-22: Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') in remix-run react-router
Description
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.
AI-Powered Analysis
Technical Analysis
CVE-2025-61686 is a critical security vulnerability classified under CWE-22 (Improper Limitation of a Pathname to a Restricted Directory, or Path Traversal) affecting the React Router and Remix Run frameworks used in JavaScript/TypeScript web applications. The flaw exists in the createFileSessionStorage() function within @react-router/node (versions 7.0.0 through 7.9.3), @remix-run/deno (prior to 2.17.2), and @remix-run/node (prior to 2.17.2). When an unsigned cookie is used, an attacker can manipulate the session storage path to read or write files outside the designated session directory. This occurs because the pathname is not properly sanitized or restricted, allowing traversal sequences (e.g., ../) to escape the intended directory boundaries. The vulnerability depends on the web server process permissions; if the server has access to sensitive files, these could be accessed or overwritten. However, direct file content disclosure to the attacker is not possible unless the file matches the expected session file format, in which case the data could be loaded into the server-side session. This could lead to session poisoning or denial of service by corrupting session data. The vulnerability requires no authentication or user interaction and can be exploited remotely over the network. The issue was patched in @react-router/node 7.9.4, @remix-run/deno 2.17.2, and @remix-run/node 2.17.2. The CVSS v3.1 score is 9.1 (critical), reflecting high impact on integrity and availability with low attack complexity and no privileges required.
Potential Impact
For European organizations, this vulnerability poses a significant risk to web applications built using the affected versions of React Router and Remix Run frameworks. Exploitation could allow attackers to corrupt session data or cause denial of service by manipulating session storage files, potentially disrupting user sessions and application availability. Although direct data exfiltration is limited, session poisoning could lead to unauthorized actions or privilege escalation depending on application logic. Organizations in sectors with high reliance on web applications—such as finance, e-commerce, healthcare, and government—may face operational disruptions and reputational damage. The vulnerability's ease of exploitation and lack of required authentication increase the risk of widespread attacks, especially against public-facing applications. Additionally, if the web server process has elevated file system permissions, the impact could extend to unauthorized file modifications beyond session files, increasing the attack surface. Given the popularity of React and Remix in European software development, many organizations could be affected if patches are not applied promptly.
Mitigation Recommendations
European organizations should immediately upgrade to the patched versions: @react-router/node 7.9.4 or later, @remix-run/deno 2.17.2 or later, and @remix-run/node 2.17.2 or later. Beyond upgrading, developers should audit session management code to ensure that file paths are properly sanitized and restricted to intended directories. Implement strict file system permissions for the web server process to minimize access to sensitive files outside session storage directories. Employ runtime application self-protection (RASP) or web application firewalls (WAFs) with custom rules to detect and block path traversal patterns in session cookie values or related inputs. Conduct thorough testing of session handling logic to verify that corrupted or malicious session data cannot escalate privileges or cause application errors. Monitor application logs for unusual session file access patterns or errors indicative of attempted exploitation. Finally, integrate secure coding practices and static code analysis tools to detect similar path traversal issues in future development.
Affected Countries
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- GitHub_M
- Date Reserved
- 2025-09-29T20:25:16.182Z
- Cvss Version
- 3.1
- State
- PUBLISHED
Threat ID: 6961c40f19784dcf52ace864
Added to database: 1/10/2026, 3:14:23 AM
Last enriched: 1/10/2026, 3:29:54 AM
Last updated: 1/10/2026, 11:22:25 PM
Views: 24
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Related Threats
CVE-2026-0824: Cross Site Scripting in questdb ui
MediumCVE-2025-13393: CWE-918 Server-Side Request Forgery (SSRF) in marceljm Featured Image from URL (FIFU)
MediumCVE-2025-12379: CWE-79 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') in averta Shortcodes and extra features for Phlox theme
MediumCVE-2026-0822: Heap-based Buffer Overflow in quickjs-ng quickjs
MediumCVE-2026-0821: Heap-based Buffer Overflow in quickjs-ng quickjs
MediumActions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
External Links
Need more coverage?
Upgrade to Pro Console in Console -> Billing for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.