GHSA-f22v-gfqf-p8f3
React Router has stored XSS via unescaped Location header in prerendered redirect HTML
Packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| npm | react-router | >= 7.5.1, < 7.13.2 | 7.13.2 |
Details
As written in the advisory (Markdown source, shown as plain text).
When using React Router v7 [Framework Mode](https://reactrouter.com/start/modes#framework) with [Pre-rendering](https://reactrouter.com/how-to/pre-rendering) enabled, an improper neutralization of the HTTP `Location` header value can permit Cross-Site Scripting (XSS) in statically generated HTML files if the redirect location comes from an untrusted source.
> [!NOTE]
> This does not impact your React Router application if you are using [Declarative Mode](https://reactrouter.com/start/modes#declarative) (`<BrowserRouter>`) or [Data Mode](https://reactrouter.com/start/modes#data) (`createBrowserRouter`/`<RouterProvider>`).
References
External links from the advisory. They lead to third-party sites.
- https://github.com/remix-run/react-router/security/advisories/GHSA-f22v-gfqf-p8f3
- https://nvd.nist.gov/vuln/detail/CVE-2026-33244
- https://github.com/remix-run/react-router/pull/14880
- https://github.com/remix-run/react-router/commit/ea28e66926460656815cee9b7f2dfaa872513a8c
- https://github.com/remix-run/react-router
- https://github.com/remix-run/react-router/blob/react-router%407.13.2/CHANGELOG.md#v7132