概述
2025年12月3日,React 和 Next.js 团队披露了一个严重的安全漏洞(CVSS 评分 10.0),该漏洞被标识为 React2Shell,影响了使用 React 服务器组件(RSC)并结合了服务器操作或服务器函数的应用程序。
React2Shell 漏洞源于某些服务器端 React 功能中对客户端提供的数据验证不当。未经身份验证的攻击者可以通过发送特制的请求来利用此缺陷,导致服务器端出现意外行为。成功利用可能导致未经身份验证的远程代码执行(RCE)。 此漏洞无需身份验证即可利用,影响范围广泛的现代 React/Next.js 部署。
主要 CVE:CVE-2025-55182(React 核心) 下游追踪:CVE-2025-66478(Next.js)
漏洞成因
受影响的功涉及 React 用于接收和解释服务器端功能数据的机制。某些格式错误或故意构造的输入可能触发服务器上的不安全处理路径。 React 和 Next.js 团队已发布安全更新,加强了这些验证步骤并防止了意外行为。
影响
该漏洞允许在运行 React 服务器组件(RSC)的服务器上执行未经身份验证的远程代码执行(RCE)。 即使没有明确定义服务器函数端点,使用 React 服务器组件的应用程序也会受到影响。 实际上,恶意攻击者可以向易受攻击的服务器发送特制的请求,并由于对序列化负载的不安全反序列化,触发包括任意代码执行在内的意外服务器行为。 截至本公告发布时,尚无证据表明该漏洞在野外被主动利用。然而,许多未经授权或伪造的概念验证(POC)利用代码已在公开渠道传播,如果未经适当验证进行测试,可能会造成混淆或意外损害。
受影响版本:
- React:19.0.0,19.1.0–19.1.1,19.2.0
- Next.js(App Router):15.x ≤ 15.5.6,16.x ≤ 16.0.6
已修复版本:
- React:19.0.1,19.1.2,19.2.1
- Next.js:15.5.7+,16.0.7+,16.1+
Imperva 主动响应
Imperva 威胁研究团队立即启动了调查,以评估对客户环境的潜在影响。 在数小时内,我们:
- 分析了漏洞并规划了最可能的利用路径
- 开发并验证了虚拟补丁规则,旨在检测和阻止与此问题相关的恶意请求模式
- 将这些保护措施自动部署到整个 Imperva 云 WAF 客户群
所有云保护措施均已激活,无需客户进行任何更改,并将在新信息出现时持续监控和完善。本地部署的客户应查看社区指南以手动部署此策略。
结论
这是一个影响广泛使用技术的重要框架级安全问题。Imperva 客户已经通过我们快速的响应和主动的安全控制受到保护。我们将继续密切关注此漏洞,并根据新信息更新保护措施。 虽然 Imperva 的保护措施缓解了已知的攻击途径,但客户仍应:
- 将 React 和 Next.js 更新至供应商提供的已修复版本
- 审查任何直接接受客户端数据的服务器端功能
- 继续关注供应商公告以获取未来更新 如需进一步帮助,请联系 Imperva 支持或您的客户成功代表。