一个头部字段如何攻破Next.js身份验证——CVE-2025-29927漏洞剖析
作者: #$ubh@nk@r
阅读时长: 3 分钟
发布日期: 2025年4月7日
[收听] [分享]
引言: 大家好,黑客朋友们:waving_hand:。最近怎么样?希望一切顺利。今天我们的讨论主题是Next.js CVE。这是一个在Next.js(一个基于React的Web应用开发框架)中发现的关键授权绕过漏洞。让我们直接开始吧。
什么是CVE-2025-29927:
该漏洞允许攻击者利用对内部请求头 x-middleware-subrequest 的不当验证,来绕过基于中间件的授权检查。通过向HTTP请求中注入此请求头,恶意攻击者可以规避负责身份验证和访问控制等关键任务的中间件逻辑,从而可能获得对应用程序敏感部分的未授权访问。
查看详情:
Next.js中间件中的授权绕过
这篇文章描述了在Next.js应用程序中绕过授权检查的可能性,如果授权检查发生在...
该漏洞影响12.3.5之前、13.5.9之前、14.2.25之前以及15.2.3之前的Next.js版本。
接下来,我们通过一些实验室环境来更好地理解。
实验室 1:
这是我们的第一个Web应用程序。
这是我需要绕过的页面。在Burp中的请求是这样的。
检查Next.js版本后,我注意到它实际上是存在漏洞的版本 (12.2.5)。
现在我将使用这个请求头:x-middleware-subrequest: middleware。在您的收件箱中获取 #$ubh@nk@r 的故事。免费加入Medium以获取此作者的更新。订阅订阅。
这将绕过登录页面。之前我收到的是307重定向,但现在它是200 OK。这意味着身份验证已被绕过。(我们甚至不需要登录:smiling_face_with_horns:)
通过Burp探索页面后,我看到有一个 /events 页面。
该页面披露了内容以及第一个Flag(标志)。
实验室 2:
在下一个实验室中,我得到了不同的子域名:subdomain.kappa.ctfio.com。这个页面看起来和之前一样,是一个简单的登录页面。
在这里,重复之前的步骤后,我得到了这个结果。(使用 x-middleware-subrequest: middleware)
但在访问 /events 页面后,我什么也没得到。(虽然我可以利用这个漏洞,但这里的主要目标是找到Flag。)
是时候进行侦察了💥。检查JS文件后,我发现了一些有趣的端点。这里我发现了之前没有显示的 /events/create。
请求该页面后,我得到了有效的响应,并且也找到了Flag2。
如果您想亲自尝试,请查看这里。
:backhand_index_pointing_right: https://app.hackinghub.io/hubs/cve-2025-29927
这就是Next.js漏洞被利用的方式。希望您学到了一些新东西。
感谢阅读!
如果您喜欢这篇文章,别忘了点赞并关注我以获取更多文章。
祝黑客愉快~
CSD0tFqvECLokhw9aBeRqqy7pDVE9jtHSghPeFdiPyFK+1nZWAlorvflXa3Q1hNjib0e+9eFcGFktVnNHXZEDP8wZRfSi56X0bWzNdt1q3/Y/UGbZUvmPrzjTy0902ZCP4Mmlxi6YwhWLNb9yT3hbg==
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)
对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)
公众号二维码

公众号二维码
