[GHSA-qwww-vcr4-c8h2] React Router: RSC Mode CSRF Bypass Allows Action Execution Before 400 Response - #8868
Conversation
|
Hi there @brophdawg11! A community member has suggested an improvement to your security advisory. If approved, this change will affect the global advisory listed at github.com/advisories. It will not affect the version listed in your project repository. This change will be reviewed by our Security Curation Team. If you have thoughts or feedback, please share them in a comment here! If this PR has already been closed, you can start a new community contribution for this advisory |
There was a problem hiding this comment.
Pull request overview
Updates React Router advisory ranges for patched v7 and v8 releases.
Changes:
- Adds separate affected ranges for v7 and v8.
- Records fixed versions and last-known affected ranges.
Comments suppressed due to low confidence (1)
advisories/github-reviewed/2026/07/GHSA-qwww-vcr4-c8h2/GHSA-qwww-vcr4-c8h2.json:51
- As with the v7 range, an OSV
fixedevent must contain the exact boundary version rather than a comparator expression.">= 8.3.0"is not a valid package version and may prevent consumers from closing this affected interval correctly.
"fixed": ">= 8.3.0"
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| }, | ||
| { | ||
| "fixed": "8.3.0" | ||
| "fixed": ">= 7.18.2" |
|
Hi, until this version update goes through, we are blocked for a project release as it causes the audit step in our pipeline to fail. Would be great to have this merged ASAP. Thank you. |
|
Independent confirmation that the proposed Comparing } catch (error) {
onError?.(error);
potentialCSRFAttackError = error;
request = new Request(request.url, {
method: "GET",
headers: request.headers,
signal: request.signal
});
}
if (!potentialCSRFAttackError) {That matches remix-run/react-router#15311 ("harden RSC CSRF codepaths") as backported by remix-run/react-router#15353 ("Backport RSC CSRF hardening to v7"), and the 7.18.2 changelog entry ("Harden RSC CSRF codepaths"). So 7.18.2 is patched, and the current single The two-range split in this PR also looks preferable to the |
|
Hi team, please get this merged ! |
|
Hi @taladrane I hope you are doing well. I just wanted to ask if you could take a look at this PR. We are currently blocked because the release with the patched version was completed, but the ranges need to be updated so the audit does not flag it as a high vulnerability. |
|
Is this the correct multiple range example: https://ossf.github.io/osv-schema/#multiple-range-example |
|
Hey all, anything we can do to get this merged in? I'm a maintainer of React Router. The current range is causing a lot of frustration for current users since it's (erroneously) forcing them to upgrade to v8 @alinawww thanks for the approval, anything you need from me to get this merged in? |
| "introduced": "8.0.0" | ||
| }, | ||
| { | ||
| "fixed": ">= 8.3.0" |
There was a problem hiding this comment.
| "fixed": ">= 8.3.0" | |
| "fixed": "8.3.0" |
Fixes the open-redirect and SSR error-deserialization CVEs (GHSA-wrjc-x8rr-h8h6, GHSA-337j-9hxr-rhxg). npm audit still flags GHSA-qwww-vcr4-c8h2 (RSC Mode CSRF bypass) against this version, but that's a stale advisory range: the react-router v7 changelog confirms "Harden RSC CSRF codepaths" shipped in 7.18.2 itself (github.com/remix-run/react-router/blob/v7/CHANGELOG.md#v7182). A correction to the advisory's version range is pending upstream (github.com/github/advisory-database/pull/8868). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
Hi team, This is currently blocking our development and release process. We'd really appreciate it if this update could be reviewed and merged as soon as possible. |
- ip-address 10.2.0 -> 10.4.0: fixes GHSA-mwp4-54f8-5fhr (SSRF via leading-zero octet decoding), GHSA-4xrf-jv44-h6hh, GHSA-22jq-vg5j-6vgg. - fast-uri 3.1.4 -> 3.1.5: fixes GHSA-7p8r-x3mc-p8w7 (host confusion via backslash authority introducer). - brace-expansion: bumped the nested copies pulled in via minimatch 3.1.5/9.0.9 (eslint, jest toolchains) to 1.1.18/2.1.4, within their parents' already-declared semver ranges. Bumped the scoped minimatch@10.2.5 override from ^5.0.8 to ^5.0.9 since 5.0.8 is itself vulnerable to GHSA-rgw5-rvv9-x895 (bypasses the prior DoS mitigation). - react-router-dom 7.18.1 -> 7.18.2: fixes GHSA-qwww-vcr4-c8h2 (RSC mode CSRF bypass). npm's advisory database still flags this as requiring a major bump to react-router-dom@8.x (github/advisory-database#8868 not yet merged), but 7.18.2's changelog confirms the CSRF hardening fix ("Harden RSC CSRF codepaths", remix-run/react-router#15353), so no major upgrade is needed. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
Hi @brookslybrand, it looks like the current commit still contains a small OSV schema issue that is preventing this PR from being ready to merge. As Copilot noted, the "fixed": "7.18.2"and: "fixed": "8.3.0"rather than @brophdawg11 also suggested this correction for |
|
Hey @Dron007 I'm unable to make changes to this PR, so I'm just waiting on a maintainer to this repo to make the changes they want and merge it in |
Updates
Comments
We backported the fix to React Router v7, so the ranges need to be updated: