Skip to content

Commit 97b7804

Browse files
committed
add update instructions
1 parent 4704ce6 commit 97b7804

File tree

1 file changed

+110
-2
lines changed

1 file changed

+110
-2
lines changed

src/content/blog/2025/12/03/critical-security-vulnerability-in-react-server-components.md

Lines changed: 110 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,19 +44,127 @@ Some React frameworks and bundlers depended on, had peer dependencies for, or in
4444

4545
We will update this post with upgrade instructions on how to upgrade as they become available.
4646

47+
### Hosting Provider Mitigations {/*hosting-provider-mitigations*/}
48+
49+
We have worked with a number of hosting providers to apply temporary mitigations.
50+
51+
You should not depend on these to secure your app, and still update immediately.
52+
4753
### Vulnerability overview {/*vulnerability-overview*/}
4854

4955
[React Server Functions](https://react.dev/reference/rsc/server-functions) allow a client to call a function on a server. React provides integration points and tools that frameworks and bundlers use to help React code run on both the client and the server. React translates requests on the client into HTTP requests which are forwarded to a server. On the server, React translates the HTTP request into a function call and returns the needed data to the client.
5056

5157
An unauthenticated attacker could craft a malicious HTTP request to any Server Function endpoint that, when deserialized by React, achieves remote code execution on the server. Further details of the vulnerability will be provided after the rollout of the fix is complete.
5258

53-
### Timeline {/*timeline*/}
59+
## Update Instructions {/*update-instructions*/}
60+
61+
### Next.js {/*update-next-js*/}
62+
63+
All users should upgrade to the latest patched version in their release line:
64+
65+
```bash
66+
npm install [email protected] // for 15.0.x
67+
npm install [email protected] // for 15.1.x
68+
npm install [email protected] // for 15.2.x
69+
npm install [email protected] // for 15.3.x
70+
npm install [email protected] // for 15.4.x
71+
npm install [email protected] // for 15.5.x
72+
npm install [email protected] // for 16.0.x
73+
```
74+
75+
If you are on Next.js 14.3.0-canary.77 or a later canary release, downgrade to the latest stable 14.x release:
76+
77+
```bash
78+
npm install next@14
79+
```
80+
81+
See the [Next.js changelog](https://github.com/reactjs/react.dev/pull/8172) for more info.
82+
83+
### React Router {/*update-react-router*/}
84+
85+
If you are using React Router's unstable RSC APIs, you should upgrade the following package.json dependencies if they exist:
86+
87+
```bash
88+
npm install react@latest
89+
npm install react-dom@latest
90+
npm install react-server-dom-parcel@latest
91+
npm install react-server-dom-webpack@latest
92+
npm install @vitejs/plugin-rsc@latest
93+
```
94+
95+
### Expo {/*expo*/}
96+
97+
Upgrade to the latest `react-server-dom-webpack`:
98+
99+
```bash
100+
npm install react@latest react-dom@latest react-server-dom-webpack@latest
101+
```
102+
103+
### Redwood SDK {/*update-redwood-sdk*/}
104+
105+
Ensure you are on rwsdk>=1.0.0-alpha.0
106+
107+
For the latest beta version:
108+
109+
```bash
110+
npm install rwsdk@latest
111+
```
112+
113+
Upgrade to the latest `react-server-dom-webpack`:
114+
115+
```bash
116+
npm install react@latest react-dom@latest react-server-dom-webpack@latest
117+
```
118+
119+
See [Redwood docs](https://docs.rwsdk.com/migrating/) for more migration instructions.
120+
121+
### Waku {/*update-waku*/}
122+
123+
Upgrade to the latest `react-server-dom-webpack`:
124+
125+
```bash
126+
npm install react@latest react-dom@latest react-server-dom-webpack@latest
127+
```
128+
129+
### `@vitejs/plugin-rsc` {/*vitejs-plugin-rsc*/}
130+
131+
Upgrade to the latest RSC plugin:
132+
133+
```bash
134+
npm install react@latest react-dom@latest @vitejs/plugin-rsc@latest
135+
```
136+
137+
### `react-server-dom-parcel` {/*update-react-server-dom-parcel*/}
138+
139+
Update to the latest version:
140+
141+
```bash
142+
npm install react@latest react-dom@latest react-server-dom-parcel@latest
143+
```
144+
145+
### `react-server-dom-turbopack` {/*update-react-server-dom-turbopack*/}
146+
147+
Update to the latest version:
148+
149+
```bash
150+
npm install react@latest react-dom@latest react-server-dom-turbopack@latest
151+
```
152+
153+
### `react-server-dom-webpack` {/*update-react-server-dom-webpack*/}
154+
155+
Update to the latest version:
156+
157+
```bash
158+
npm install react@latest react-dom@latest react-server-dom-webpack@latest
159+
```
160+
161+
## Timeline {/*timeline*/}
54162

55163
* **November 29th**: Lachlan Davidson reported the security vulnerability via [Meta Bug Bounty](https://bugbounty.meta.com/).
56164
* **November 30th**: Meta security researchers confirmed and began working with the React team on a fix.
57165
* **December 1st**: A fix was created and the React team began working with affected hosting providers and open source projects to validate the fix, implement mitigations and roll out the fix
58166
* **December 3rd**: The fix was published to npm and the publicly disclosed as CVE-2025-55182.
59167

60-
### Attribution {/*attribution*/}
168+
## Attribution {/*attribution*/}
61169

62170
Thank you to [Lachlan Davidson](https://github.com/lachlan2k) for discovering, reporting, and working to help fix this vulnerability.

0 commit comments

Comments
 (0)