文章总结: React2Shell是一个严重漏洞,影响React19.x和Next.js15.x/16.x,允许未经身份验证的远程代码执行,CVSS评分为10.0。该漏洞源于React内置Flight协议中的不安全反序列化,影响约39%的云环境。文章建议立即打补丁至React19.0.1+和Next.js15.0.5+版本,或使用WAF作为临时防御。此事件标志着现代攻击面已从基础设施转向高级框架逻辑,对安全社区具有重要启示意义。
综合评分: 92
文章分类: 漏洞分析,漏洞预警,WEB安全,应用安全,安全大事件
再谈React2Shell
原创
破天KK
KK安全说
2025年12月6日 10:08
中国香港
🔥 什么是 React2Shell
- 2025年12月3日,React(以及许多基于它构建的框架)的核心团队披露了React Server Components (RSC)中的一个严重漏洞
- 该漏洞最初被分配了CVE-2025-55182(React)和CVE-2025-66478(Next.js),但后者已被标记为重复漏洞——根本问题相同。
- 该漏洞源于React 内置的“Flight”协议中不安全的反序列化,该协议用于在服务器和客户端组件之间进行通信。简而言之:攻击者可以发送精心构造的 HTTP 请求,并在服务器上触发任意代码执行——无需身份验证。
- 严重程度为CVSS 10.0(最高) ——这意味着这是远程代码漏洞中最严重的级别。
🌍受影响人群——剧透:影响范围很广
如果你的堆栈包含:
- React 19.x 使用服务器组件,或者
- Next.js 15.x / 16.x(或某些 canary 14.x 版本)以及 App Router(底层使用 RSC)
那么,即使您认为自己没有使用“服务器函数”,您也可能受到影响。该漏洞存在于根本性的结构层面,而非可选插件层面。
安全公司的数据显示,高达39% 的云环境扫描结果显示,其中存在易受攻击的 React 或 Next.js 实例。这意味着近五分之二的云端公共网站/API 都存在潜在风险。
简而言之:如果您在服务器端 React/Next.js 上运行现代 JS Web 应用程序——请假设您存在安全漏洞。
🎯 为什么这不仅仅是另一个 JS bug——这是一个“万能钥匙”
这并非普通的漏洞。它具有一些使其极其危险的特性:
- ❗未经身份验证的远程代码执行:攻击者不需要凭据、令牌或有效会话。
- 🚪默认配置存在漏洞:即使是普通的“开箱即用”应用程序(例如通过 创建的
create-next-app)也存在漏洞。 - 💣大规模应用:React + Next.js 是全球最流行的 Web 技术栈之一——影响规模巨大。
- ⚡预计漏洞将被迅速利用:主要云服务提供商的蜜罐在漏洞披露后数小时内就已被发现遭到扫描和利用。
对许多组织而言,这本质上是一种“零点击关键远程代码执行”——无需社交工程、无需网络钓鱼、无需利用漏洞链。只需发送一个精心构造的HTTP请求即可。
🛡️ 现在你应该做什么——React2Shell 的分类
如果您维护任何 Web 应用程序,以下是您的行动清单:
1. 清点您的技术栈
在您的代码库中搜索:React 19.x、React Server Components、带有 App Router 的 Next.js 15/16(或 canary 14.x)。
- 立即打补丁
升级可用——已发布已打补丁的 React 版本(19.0.1、19.1.2、19.2.1)和 Next.js 版本(15.0.5+、16.0.7+)。
3. 应用 WAF/虚拟补丁作为临时防御措施
如果无法立即打补丁,请考虑 Web 应用程序防火墙规则或缓解措施。一些供应商(例如 Fastly、云 WAF 提供商)已经推出了虚拟补丁来阻止攻击模式。
4. 检查服务器功能和序列化逻辑
,检查自定义 RSC 端点,确保没有未经清理的输入流入服务器端代码执行路径。
5. 扫描您的基础架构
运行自动化扫描器(SCA/静态分析器)——React2Shell 已发布了许多新的漏洞插件。
6. 监控日志和流量模式
注意异常的 HTTP 请求或可疑的有效载荷。及早发现并修复漏洞,可以减少很多麻烦。
🧠 这对 OffSec / 红队社区意味着什么
React2Shell 凸显了现代攻击性安全的一个重要真理:
现在的攻击面是高级逻辑,而不仅仅是内存或基础设施。
如果你是 2025-2026 年的红队成员或渗透测试人员,掌握底层漏洞利用仍然很有价值——但如今最赚钱、影响最大的漏洞来自:
- 高级框架中的不安全反序列化
- 服务器端逻辑滥用
- 云服务配置错误
- 身份和信任相关的漏洞
- 框架级协议缺陷
React2Shell 是一个“万能”远程代码执行漏洞——但很可能还有更多类似的漏洞隐藏在广泛使用的复杂框架中。随着现代基础设施越来越依赖可组合的云原生工具和 Web 框架,“唾手可得”的漏洞来源也变成了底层逻辑缺陷和反序列化错误。
对于攻击型安全从业者来说:少关注 shellcode,多关注序列化、框架逻辑、协议边界漏洞。
🔮 结语——React2Shell 的转折点
CVE-2025–55182 / CVE-2025–66478 (React2Shell) 不仅仅是另一个 CVE 漏洞,它对整个 Web 开发生态系统都是一个警示。
如果你维护 Web 应用程序——请将此视为“消防演习”:打补丁、审核、阻止。
如果你攻击或审核 Web 应用程序——请记住:严重的漏洞现在不仅出现在二进制文件中,也出现在高级框架中。
如果你负责基础设施防御——请把这当作一个警钟:修补依赖项是你的第一道防线。
因为在 React2Shell 之后,问题不再是“是否”会发生另一个巨大的 bug,而是“何时”会发生。
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:KK安全说 破天KK《再谈React2Shell》