💡
原文中文,约10500字,阅读约需25分钟。
📝
内容提要
2025年12月3日,React和Next.js出现严重RCE漏洞“React2shell”,CVSS评分10.0,影响React 19+和Next.js 15/16。攻击者可通过特定请求执行任意代码。已发布补丁修复原型链污染问题。
🎯
关键要点
- 2025年12月3日,React和Next.js出现严重RCE漏洞,CVSS评分10.0,称为React2shell。
- 该漏洞影响React 19+和Next.js 15/16,攻击者可通过特定请求执行任意代码。
- 漏洞由安全研究员Lachlan Davidson于2025年11月29日发现,并于12月3日公开。
- 最初认为只有使用rsc作为后端的环境会受到影响,但后续发现影响范围更广。
- 漏洞影响的版本包括React 19.0.0至19.2.0和Next.js 14.3.0-canary至16.x。
- 已发布的修复补丁版本包括React 19.0.1、19.1.2、19.2.1和Next.js 14.3.0-canary.88等。
- 漏洞的核心在于React的新特性RSC(React Server Components),导致原型链污染。
- Flight协议是React用于在服务端和客户端之间传递信息的协议,漏洞利用依赖于此。
- Chunk对象在React服务端处理请求时生成,漏洞利用涉及对Chunk对象的解析和处理。
- 通过特定的请求结构,攻击者可以触发原型链污染,从而实现任意代码执行。
- 补丁通过引入Symbol类型常量和hasOwnProperty检查来修复漏洞,防止原型链的未定义属性访问。
- 该漏洞是2025年的重大安全事件,展示了漏洞的影响力和利用链的复杂性。
❓
延伸问答
React2Shell漏洞的CVSS评分是多少?
CVSS评分为10.0。
React2Shell漏洞影响哪些版本的React和Next.js?
影响React 19.0.0至19.2.0和Next.js 14.3.0-canary至16.x。
React2Shell漏洞是如何被发现的?
该漏洞由安全研究员Lachlan Davidson于2025年11月29日发现,并于12月3日公开。
React2Shell漏洞的核心问题是什么?
漏洞的核心在于React的新特性RSC(React Server Components),导致原型链污染。
React2Shell漏洞的修复补丁包含哪些主要改动?
补丁引入了Symbol类型常量和hasOwnProperty检查,以防止原型链的未定义属性访问。
React2Shell漏洞的利用链是怎样的?
漏洞利用涉及对Chunk对象的解析和处理,通过特定请求结构触发原型链污染,实现任意代码执行。
➡️