CVE-2025-43864 React Router allows a DoS via cache poisoning by forcing SPA mode

High 7.5 Published Updated

Attackers can force SPA mode via headers to corrupt SSR pages and poison caches, causing denial of service in React Router applications.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2025-43864?

CVE-2025-43864 is a high-severity denial of service vulnerability in remix-run react-router, published on 25 Apr 2025. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

React Router is a router for React. Starting in version 7.2.0 and prior to version 7.5.2, 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. This issue has been patched in version 7.5.2.

Weakness: CWE-755

Which versions are affected by CVE-2025-43864?

2 open source packages ship an affected version, including react-router.

PackageAffectedFixed in
react-router npmFrom 7.2.07.5.2
react-router npmFrom 7.2.07.5.2

How do I fix CVE-2025-43864?

Upgrade react-router to 7.5.2 or later.

Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.

Is CVE-2025-43864 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2025-43864 exists.

Public exploit code: 1 proofs of concept on GitHub.

Sources

Also known as GHSA-f46r-rw29-r322.

Is CVE-2025-43864 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free