Next.js: CVEVE-2025-29927 TryHackMe 技术分析报告
Next.js是由Vercel开发的流行React框架,通过静态站点生成(SSG)和服务器端渲染(SSR)等功能简化了Web开发流程。然而,最近发现的一个漏洞CVE-2025-29927暴露了Next.js中间件授权机制中的严重安全缺陷。本文将对这一漏洞的利用与检测技术进行深入分析。
任务1:漏洞概述
理解CVE-2025-29927
该漏洞由研究人员Rachid和Yasser Allam发现。攻击者可以通过在HTTP请求中包含特定的请求头,绕过在中间件中实现的授权检查。Next.js中的中间件作为桥梁,在请求到达路由系统之前对其进行控制。由于Next.js采用基于文件的路由系统,中间件中的任何安全缺陷都可能导致未经授权的访问。
1.1 问题:我们将在下一个任务中利用演示应用程序进行漏洞测试。
无需回答。
任务2:漏洞利用技术分析
利用CVE-2025-29927的过程异常简单。攻击者只需在HTTP请求中添加以下请求头:
x-middleware-subrequest: middleware
通过添加该请求头,攻击者可以绕过Next.js中间件的安全检查,实现未经授权的访问。该漏洞的核心在于Next.js中间件处理请求时,对x-middleware-subrequest头部的验证存在缺陷,导致攻击者可以伪造该头部值来欺骗中间件,使其认为请求已经通过了授权验证。FINISHED
CSD0tFqvECLokhw9aBeRqkh8OiNbaSNRyXRp1SdhAdmUwzNa8IxnL18uI5gndgw81TDrITyCAxi4jLy0G2Hg7MXSiYi2du0UPQB9cQ999AE=