【已复现】Next.js middleware 权限绕过漏洞(CVE-2025-29927)

admin 2025年3月24日16:35:42评论43 views字数 1604阅读5分20秒阅读模式

点击关注,获取更多漏洞预警,技术分享

0x01 组件介绍

  Next.js 是由 Vercel 开发的基于 React 的现代 Web 应用框架,具备前后端一体的开发能力,提供服务器端渲染、静态网站生成和集成路由系统等功能。

fofa语法:app="NEXT.JS"

0x02 漏洞描述近日,Next.js 官方披露了一个严重级别的安全漏洞(CVE-2025-29927/GHSA-f82v-jwr5-mffw),该漏洞影响了大量使用 Next.js 中间件实现授权功能的应用程序。该漏洞源于Next.js使用中间件进行身份验证和授权的过程存在漏洞,该漏洞允许攻击者通过操作 x-middleware-subrequest 请求头来绕过基于中间件的安全控制,从而可能获得对受保护资源和敏感数据的未授权访问。

该漏洞的根本原因在于 Next.js 中间件处理子请求的机制存在缺陷:

  1. 内部子请求标识:当中间件需要向内部路由发出请求时(例如获取数据或验证信息),Next.js 会自动添加x-middleware-subrequest头,以标识这是一个内部请求,防止中间件陷入无限循环。

  2. 来源验证缺失:漏洞出现的关键点是 Next.js 没有正确验证这个头的来源。当外部请求携带此头时,中间件错误地将其识别为内部子请求。

  3. 中间件执行逻辑:当检测到x-middleware-subrequest头时,Next.js 会跳过对该请求的中间件执行,直接将请求传递给目标路由或 API。

  4. 授权绕过实现:攻击者只需在请求中添加特殊的头部信息,就能使中间件的授权检查被完全跳过,直接访问受保护资源。

漏洞分类
权限绕过
CVSS 3.1分数
9.1
漏洞等级
严重
POC/EXP
已公开
可利用性
0x03 影响版本
15.* <= Next.js <15.2.3
14.* <= Next.js <14.2.25
11.1.4 <= Next.js <= 13.5.6

0x04 漏洞验证

目前POC/EXP已经公开(需要知道复现过程的,后台留言:CVE-2025-29927)

概念性验证:

发送数据包,出现下面的即可证明漏洞存在

(1)正常访问,无法绕过权限认证

【已复现】Next.js middleware 权限绕过漏洞(CVE-2025-29927)
(2)在请求头中加入特殊头部信息,即可直接访问到需要权限的页面
【已复现】Next.js middleware 权限绕过漏洞(CVE-2025-29927)

0x05 漏洞影响

由于该漏洞影响范围较广,危害较大。通过以上复现过程,我们可以知道该漏洞的利用过程比较简单,且能造成的危害是高危的,可以对受保护资源和敏感数据的未授权访问。企业应该尽快排查是否有使用该组件,并尽快做出对应措施。

0x06 修复建议

1.升级 Next.js 版本

对于 Next.js 15.x,升级到 15.2.3 或更高版本
对于 Next.js 14.x,升级到 14.2.25 或更高版本
对于 Next.js 11.1.4 至 13.5.6,应考虑升级到最新的安全版本

2.     临时缓解措施(如无法立即升级):

在网关/代理层过滤或删除所有外部请求中的x-middleware-subrequest

Nginx 配置示例:

# 所有传入的x-middleware-subrequest头置为空proxy_set header x-middleware-subrequest ""

0X07 参考链接

https://github.com/vercel/next.js/security/advisories/GHSA-f82v-jwr5-mffw

0x08 免责声明> 本文所涉及的任何技术、信息或工具,仅供学习和参考之用。> 请勿利用本文提供的信息从事任何违法活动或不当行为。任何因使用本文所提供的信息或工具而导致的损失、后果或不良影响,均由使用者个人承担责任,与本文作者无关。> 作者不对任何因使用本文信息或工具而产生的损失或后果承担任何责任。使用本文所提供的信息或工具即视为同意本免责声明,并承诺遵守相关法律法规和道德规范。

原文始发于微信公众号(安全探索者):【已复现】Next.js middleware 权限绕过漏洞(CVE-2025-29927)

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年3月24日16:35:42
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【已复现】Next.js middleware 权限绕过漏洞(CVE-2025-29927)https://cn-sec.com/archives/3878569.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息