# React Router XSS 漏洞
## 概述
React Router 的 `meta()`/<Meta> API 在框架模式下生成 `script:ld+json` 标签时存在 XSS 漏洞,可能导致服务端渲染(SSR)过程中执行任意 JavaScript。
## 影响版本
- @remix-run/react: 1.15.0 至 2.17.0
- react-router: 7.0.0 至 7.8.2
## 细节
该漏洞存在于 React Router 的 `meta()` 函数和 `<Meta>` 组件中,当在框架模式(Framework Mode)下处理用户提供的不可信数据生成 `script` 标签且类型为 `ld+json` 时,未正确转义内容,导致可注入恶意脚本。
仅在使用框架模式(如 `createRoutesFromElements` 配合 `RouterProvider` 的特定配置)时受影响。使用声明式模式(`<BrowserRouter>`)或数据模式(`createBrowserRouter` + `<RouterProvider>`)不受影响。
## 影响
在服务端渲染期间,若使用不可信数据生成 `script:ld+json` 标签,攻击者可利用此漏洞实现任意 JavaScript 代码执行,造成跨站脚本攻击(XSS)。
是否为 Web 类漏洞: 未知
判断理由:
| # | POC 描述 | 源链接 | 神龙链接 |
|---|---|---|---|
| 1 | A XSS vulnerability exists in in React Router's meta()/<Meta> APIs in Framework Mode when generating script:ld+json tags which could allow arbitrary JavaScript execution during SSR if untrusted content is used to generate the tag. | https://github.com/boroeurnprach/CVE-2025-59057-PoC | POC详情 |
标题: XSS via Meta component when generating script:ld+json tags · Advisory · remix-run/react-router · GitHub -- 🔗来源链接
标签:x_refsource_CONFIRM
神龙速读:
### 漏洞关键信息
#### 标题
- **XSS via Meta component when generating script:ld+json tags**
#### 影响版本
- **@remix-run/react (npm):** >=1.15.0, <=2.17.0
- **react-router (npm):** >=7.0.0, <=7.8.2
#### 修复版本
- **@remix-run/react (npm):** >=2.17.1
- **react-router (npm):** >=7.9.0
#### 描述
- React Router's `meta()` / `<Meta>` APIs在Framework Mode下生成`script:ld+json`标签时存在XSS漏洞,这可能允许在SSR期间执行任意JavaScript,如果使用了不可信的内容生成标签。
#### 注意事项
- 如果您使用Declarative Mode(`<BrowserRouter>`)或Data Mode(`createBrowserRouter` / `<RouterProvider>`),这不会影响您的应用。
#### 严重性
- **CVSS 3.1 basescore:** 7.6 / 10
- **CVSS 3.1 base metrics:**
- Attack vector: Network
- Attack complexity: Low
- Privileges required: Low
- User interaction: Required
- Scope: Changed
- Confidentiality: High
- Integrity: Low
- Availability: None
#### CVE ID
- **CVE-2025-59057**
#### 贡献者
- **zaddy6:** Reporter
- **arthurgervais:** Reporter
暂无评论