React 服务器组件中的关键安全漏洞

57 阅读3分钟

React 服务器组件中的关键安全漏洞

React团队于2025年12月3日发布


React 服务器组件中存在未经身份验证的远程代码执行漏洞。

我们建议您立即升级。


11 月 29 日,Lachlan Davidson 报告称 React 中存在一个安全漏洞,该漏洞允许未经身份验证的远程代码执行,其原理是利用 React 解码发送到 React 服务器函数端点的有效负载的方式中的一个缺陷。

即使您的应用没有实现任何 React 服务器函数端点,但如果您的应用支持 React 服务器组件,它仍然可能存在安全漏洞。

该漏洞已披露为CVE-2025-55182,CVSS 评级为 10.0。

该漏洞存在于以下版本的软件中:19.0、19.1.0、19.1.1 和 19.2.0:

必须立即采取行动

版本19.0.1、19.1.219.2.1中已引入修复程序。如果您正在使用上述任何软件包,请立即升级到已修复版本。

如果您的应用 React 代码未使用服务器,则您的应用不受此漏洞影响。如果您的应用未使用支持 React 服务器组件的框架、打包工具或打包工具插件,则您的应用不受此漏洞影响。

受影响的框架和打包程序

一些 React 框架和打包工具依赖于存在漏洞的 React 包,或与这些包存在对等依赖关系,或包含了这些包。受影响的 React 框架和打包工具包括:nextreact-routerwaku@parcel/rsc@vitejs/plugin-rscrwsdk

我们将在此帖中更新升级说明,并在升级说明发布后提供相关信息。

托管服务提供商缓解措施

我们已与多家主机托管服务商合作,采取临时缓解措施。

您不应依赖这些措施来保护您的应用程序,仍需立即更新。

漏洞概述

React 服务器端函数允许客户端调用服务器上的函数。React 提供了一系列集成点和工具,供框架和打包工具使用,以帮助 React 代码在客户端和服务器端同时运行。React 将客户端请求转换为 HTTP 请求,并将其转发到服务器。在服务器端,React 将 HTTP 请求转换为函数调用,并将所需数据返回给客户端。

未经身份验证的攻击者可以构造恶意 HTTP 请求,发送到任何服务器函数端点。当 React 反序列化该请求时,攻击者即可在服务器上执行远程代码。漏洞的更多详细信息将在修复程序发布完成后提供。

更新说明

Next.js

所有用户都应升级到其版本系列中的最新补丁版本:

npm install next@15.0.5   // for 15.0.x

npm install next@15.1.9   // for 15.1.x

npm install next@15.2.6   // for 15.2.x

npm install next@15.3.6   // for 15.3.x

npm install next@15.4.8   // for 15.4.x

npm install next@15.5.7   // for 15.5.x

npm install next@16.0.7   // for 16.0.x

如果您使用的是 Next.js 14.3.0-canary.77 或更高版本的 canary 版本,请降级到最新的稳定版 14.x:

npm install next@14

更多信息请参阅Next.js 更新日志。

React Router

如果您使用的是 React Router 不稳定的 RSC API,则应升级 package.json 文件中存在的以下依赖项:

npm install react@latest

npm install react-dom@latest

npm install react-server-dom-parcel@latest

npm install react-server-dom-webpack@latest

npm install @vitejs/plugin-rsc@latest