# Next.js 中间件重定向问题导致 SSRF
## 概述
Next.js 是一个基于 React 的全栈 Web 应用框架。在特定条件下,其中间件功能存在 SSRF(Server Side Request Forgery)漏洞。
## 影响版本
- 所有低于 14.2.32 的 Middleware 版本
- 所有低于 15.4.7 的 Middleware 版本
## 漏洞细节
在 14.2.32 和 15.4.7 之前的版本中,如果在中间件中使用 `next()` 函数而未显式传入 `request` 对象,可能导致服务器端错误地转发用户提供的请求头,从而引发 SSRF 漏洞。
## 影响
该漏洞可能被攻击者利用,诱使服务器发起恶意请求,从而访问本应无法从外部访问的资源。此项风险主要影响自托管(self-hosted)且使用了自定义中间件逻辑的部署环境。
## 修复建议
官方已在版本 14.2.32 和 15.4.7 中修复该问题。建议所有在自托管环境中使用了自定义中间件的用户及时升级,并审查 `next()` 函数是否正确使用(特别是是否显式传入了请求对象)。
# | POC 描述 | 源链接 | 神龙链接 |
---|
标题: Improper Middleware Redirect Handling Leads to SSRF · Advisory · vercel/next.js · GitHub -- 🔗来源链接
标签: x_refsource_CONFIRM
神龙速读标题: fix router handling when setting a location response header (#82588) · vercel/next.js@9c9aaed · GitHub -- 🔗来源链接
标签: x_refsource_MISC
神龙速读暂无评论