CVE-2025-43864: React Router allows a DoS via cache poisoning by forcing SPA mode
(updated )
After some research, it turns out that it is possible to force an application to switch to SPA mode by adding a header to the request. If the application uses SSR and is forced to switch to SPA, this causes an error that completely corrupts the page. If a cache system is in place, this allows the response containing the error to be cached, resulting in a cache poisoning that strongly impacts the availability of the application.
References
- github.com/advisories/GHSA-f46r-rw29-r322
- github.com/remix-run/react-router
- github.com/remix-run/react-router/blob/e6c53a0130559b4a9bd47f9cf76ea5b08a69868a/packages/react-router/lib/server-runtime/server.ts
- github.com/remix-run/react-router/commit/c84302972a152d851cf5dd859ff332b354b70111
- github.com/remix-run/react-router/security/advisories/GHSA-f46r-rw29-r322
- nvd.nist.gov/vuln/detail/CVE-2025-43864
Code Behaviors & Features
Detect and mitigate CVE-2025-43864 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →