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. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →