Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2025-66478-POC — CVE-2025-66478 إثبات المفهوم | Kitploit
أدوات/GitHubGitHub/wangxso/cve-2025-66478-poc
الاستطلاعماسحات الثغرات الأمنيةتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبالتعلم والتعليمأداة الوصول عن بعدتطوير الحمولاتمختبرات وتدريب عملي
GitHubwangxso/cve-2025-66478-poc

CVE-2025-66478-POC

CVE-2025-66478 إثبات المفهوم

51منذ 8 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
عرض المستودع

CVE-2025-66478 إثبات المفهوم

中文版本 / Chinese Version

漏洞概述

CVE-2025-66478 是一个影响 Next.js 应用程序的严重远程代码执行 (RCE) 漏洞,源于 React Server Components (RSC) 协议中的不安全反序列化问题。该漏洞的 CVSS 评分为 10.0(最高级别),允许未经身份验证的攻击者通过特制的 HTTP 请求在易受攻击的服务器上执行任意代码。

技术细节

漏洞根源

该漏洞源于上游 React 实现中的不安全反序列化逻辑(CVE-2025-55182),并影响使用 App Router 的 Next.js 应用程序。问题出在 React Server Components 的 "Flight" 协议中,该协议负责在服务器和客户端之间序列化和反序列化数据。

影响范围

受影响的 Next.js 版本:

  • Next.js 15.x
  • Next.js 16.x
  • Next.js 14.3.0-canary.77 及更高版本的 canary 版本

不受影响的版本:

  • Next.js 13.x
  • Next.js 14.x 稳定版
  • 使用 Pages Router 的应用程序
  • Edge Runtime

攻击向量

攻击者只需向目标服务器发送一个特制的 HTTP 请求,其中包含恶意构造的 RSC payload。当服务器处理这个 payload 时,由于不安全的反序列化逻辑,攻击者控制的数据可以影响服务器端的执行流程,导致任意 JavaScript 代码的执行。

受影响的应用

特别关注: Dify 等 AI 工具成为重灾区,利用成功率较高。这些应用通常使用 Next.js App Router 和 Server Components,因此容易受到此漏洞影响。

常见受影响应用类型:

  • Dify 等 AI 应用平台
  • 使用 Next.js 15.x/16.x 的 Web 应用
  • 使用 App Router 的 Next.js 应用
  • 使用 React Server Components 的应用

Proof of Concept

免责声明

此工具仅用于教育目的和安全研究。 请勿在未经授权的系统上使用。使用此工具进行任何非法活动均与作者无关。

概念验证脚本

exploit.js 是一个概念验证脚本,演示了如何构造和发送恶意的 RSC payload。这个脚本包含以下功能:

  1. 生成恶意 payload:构造利用反序列化漏洞的 RSC payload
  2. 发送攻击请求:将恶意 payload 发送到目标服务器
  3. 漏洞扫描:扫描目标应用程序中可能存在漏洞的 RSC 端点

使用方法

基本用法

root@kitploit:~
# 执行特定命令
node exploit.js <目标URL> <命令>

# 示例
node exploit.js http://localhost:3000 "whoami"

扫描模式

root@kitploit:~
# 扫描目标应用程序中的 RSC 端点
node exploit.js <目标URL> --scan

# 示例
node exploit.js http://localhost:3000 --scan

Docker 演示环境

为了安全地演示和测试此漏洞,我们提供了一个完整的 Docker 演示环境,包含一个易受攻击的 Next.js 应用程序。

前置要求

  • Docker 和 Docker Compose
  • 至少 2GB 可用磁盘空间
  • 至少 1GB 可用内存

快速启动

方法 1: 使用启动脚本(推荐)

Windows (PowerShell):

root@kitploit:~
.\setup-demo.ps1

Linux/macOS:

root@kitploit:~
chmod +x setup-demo.sh
./setup-demo.sh

方法 2: 手动启动

root@kitploit:~
# 1. 构建 Docker 镜像
docker-compose build

# 2. 启动容器
docker-compose up -d

# 3. 查看日志(可选)
docker-compose logs -f

访问应用

启动后,等待几秒钟,然后访问:

  • 应用主页: http://localhost:3000
  • RSC 端点: http://localhost:3000/_rsc

测试漏洞

使用提供的 exploit 脚本测试漏洞:

root@kitploit:~
# 基本测试
node exploit.js http://localhost:3000/_rsc "echo test"

# 执行命令
node exploit.js http://localhost:3000/_rsc "whoami"

# 扫描端点
node exploit.js http://localhost:3000 --scan

环境信息

演示环境包含:

  • Next.js: 15.0.4 (易受攻击版本)
  • React: 19.0.0
  • Node.js: 20 (Alpine Linux)
  • 架构: 使用 App Router 和 Server Components

管理命令

root@kitploit:~
# 查看日志
docker-compose logs -f

# 停止环境
docker-compose down

# 停止并删除数据
docker-compose down -v

# 重启环境
docker-compose restart

安全注意事项

⚠️ 重要警告:

  1. 仅用于教育目的: 此环境仅用于学习和安全研究
  2. 隔离环境: 容器运行在隔离的网络中,但仍需谨慎
  3. 不要暴露到公网: 不要将端口映射到公网 IP
  4. 及时清理: 测试完成后及时停止和删除容器
  5. 不要在生产环境使用: 此配置包含已知的安全漏洞

测试工具

test-vulnerability.js 是一个用于检测应用程序是否受此漏洞影响的工具。它会执行以下检查:

  1. 版本检查:验证 Next.js 版本是否在受影响范围内
  2. 端点测试:检查应用程序中可能存在漏洞的 RSC 端点
  3. 漏洞验证:使用安全的 payload 测试漏洞是否存在

使用方法

root@kitploit:~
# 测试目标应用程序
node test-vulnerability.js <目标URL>

# 示例
node test-vulnerability.js http://localhost:3000

修复措施

立即修复

  1. 升级 Next.js:将 Next.js 升级到最新版本,该版本已修复此漏洞

    root@kitploit:~
    npm install next@latest
    # 或
    yarn upgrade next@latest
    # 或
    pnpm update next@latest
    
  2. 验证修复:使用 test-vulnerability.js 工具验证修复是否成功

    root@kitploit:~
    node test-vulnerability.js <目标URL>
    

临时缓解措施

如果无法立即升级,可以考虑以下临时缓解措施:

  1. 使用 Pages Router:将受影响的路由迁移到 Pages Router,该路由不受此漏洞影响

  2. 启用 Edge Runtime:为受影响的路由启用 Edge Runtime,该运行时不受此漏洞影响

    root@kitploit:~
    // 在页面组件或布局中
    export const runtime = 'edge';
    

技术细节

漏洞原理

该漏洞利用了 React Server Components "Flight" 协议中的不安全反序列化逻辑。当服务器接收到客户端发送的 RSC 请求时,它会反序列化包含组件数据的 payload。由于反序列化过程中缺乏充分的验证,攻击者可以构造恶意 payload,导致服务器执行任意 JavaScript 代码。

漏洞利用条件

要利用此漏洞,攻击者需要满足以下条件:

  1. 目标应用程序使用 Next.js 15.x、16.x 或 14.3.0-canary.77 及更高版本
  2. 目标应用程序使用 App Router
  3. 攻击者可以向目标服务器发送 HTTP 请求

漏洞影响

成功利用此漏洞可以导致:

  1. 远程代码执行 (RCE)
  2. 服务器完全控制
  3. 数据泄露
  4. 服务中断

目标发现

FOFA 搜索语法

root@kitploit:~
# 搜索 Next.js 应用(通用)
body="NEXT_DATA" && body="version"

# 搜索 AI 相关应用(Dify 等)
body="NEXT_DATA" && (body="AI" || body="人工智能" || body="大模型" || body="LLM")

# 搜索 Dify 应用
body="NEXT_DATA" && (body="dify" || title="Dify" || body="dify.ai")

# 组合搜索
body="NEXT_DATA" && (body="AI" || body="人工智能") && domain="edu.cn"

Hunter 搜索语法

root@kitploit:~
# 搜索教育机构中的 Next.js 应用
(web.title="Next.js" OR web.body="NEXT_DATA") && domain="edu.cn"

常见易受攻击端点

  • /_rsc - React Server Components 端点
  • /api/rsc - API RSC 端点
  • /api/chat - Dify 等 AI 工具的聊天端点
  • /api/completion - 完成端点
  • /api/v1/chat - API v1 聊天端点
  • /server-actions - Server Actions 端点

参考资料

  • Next.js 安全公告
  • React Server Components 文档
  • CVE-2025-55182 详细信息
  • CVE-2025-55182 利用工具参考

نظرة عامة على الثغرة

CVE-2025-66478 هي ثغرة حرجة في تنفيذ التعليمات البرمجية عن بُعد (RCE) تؤثر على تطبيقات Next.js، ناتجة عن إلغاء تسلسل غير آمن في بروتوكول مكونات خادم React (RSC). مع درجة CVSS تبلغ 10.0 (أعلى درجة ممكنة)، تسمح للمهاجمين غير الموثقين بتنفيذ تعليمات برمجية عشوائية على الخوادم الضعيفة عبر طلبات HTTP مصممة خصيصًا.

التفاصيل التقنية

السبب الجذري

تنشأ الثغرة من منطق إلغاء التسلسل غير الآمن في تطبيق React الأساسي (CVE-2025-55182) وتؤثر على تطبيقات Next.js التي تستخدم موجه التطبيق (App Router). تكمن المشكلة في بروتوكول "Flight" الخاص بمكونات خادم React، المسؤول عن تسلسل وإلغاء تسلسل البيانات بين الخادم والعميل.

نطاق التأثير

إصدارات Next.js المتأثرة:

  • Next.js 15.x
  • Next.js 16.x
  • Next.js 14.3.0-canary.77 والإصدارات التجريبية الأحدث

الإصدارات غير المتأثرة:

  • Next.js 13.x
  • الإصدارات المستقرة من Next.js 14.x
  • التطبيقات التي تستخدم موجه الصفحات (Pages Router)
  • بيئة التشغيل Edge Runtime

ناقل الهجوم

يحتاج المهاجم فقط إلى إرسال طلب HTTP مصمم خصيصًا يحتوي على حمولة RSC خبيثة إلى الخادم المستهدف. عندما يقوم الخادم بمعالجة هذه الحمولة، وبسبب منطق إلغاء التسلسل غير الآمن، يمكن للبيانات التي يتحكم بها المهاجم التأثير على تدفق التنفيذ من جانب الخادم، مما يؤدي إلى تنفيذ تعليمات JavaScript عشوائية.

إثبات المفهوم

إخلاء مسؤولية

هذه الأداة لأغراض تعليمية وأبحاث أمنية فقط. لا تستخدمها على أنظمة غير مصرح بها. أي أنشطة غير قانونية باستخدام هذه الأداة لا علاقة لها بالمؤلف.

نص إثبات المفهوم

exploit.js هو نص برمجي يوضح كيفية بناء وإرسال حمولات RSC خبيثة. يتضمن هذا النص الوظائف التالية:

  1. توليد حمولة خبيثة: بناء حمولات RSC تستغل ثغرة إلغاء التسلسل
  2. إرسال طلبات هجوم: إرسال الحمولات الخبيثة إلى الخوادم المستهدفة
  3. مسح الثغرات: فحص التطبيقات المستهدفة بحثًا عن نقاط نهاية RSC قد تكون ضعيفة

الاستخدام

الاستخدام الأساسي

root@kitploit:~
# تنفيذ أمر معين
node exploit.js <target-url> <command>

# مثال
node exploit.js http://localhost:3000 "whoami"

وضع المسح

root@kitploit:~
# مسح التطبيق المستهدف بحثًا عن نقاط نهاية RSC
node exploit.js <target-url> --scan

# مثال
node exploit.js http://localhost:3000 --scan

بيئة العرض التوضيحي باستخدام Docker

لإظهار واختبار هذه الثغرة بشكل آمن، نقدم بيئة عرض توضيحي كاملة باستخدام Docker تحتوي على تطبيق Next.js ضعيف.

المتطلبات الأساسية

  • Docker و Docker Compose
  • 2 جيجابايت على الأقل من مساحة القرص الحرة
  • 1 جيجابايت على الأقل من الذاكرة الحرة

بدء سريع

الطريقة 1: استخدام نص بدء التشغيل (موصى به)

Windows (PowerShell):

root@kitploit:~
.\setup-demo.ps1

Linux/macOS:

root@kitploit:~
chmod +x setup-demo.sh
./setup-demo.sh

الطريقة 2: بدء يدوي

root@kitploit:~
# 1. بناء صورة Docker
docker-compose build

# 2. بدء الحاوية
docker-compose up -d

# 3. عرض السجلات (اختياري)
docker-compose logs -f

الوصول إلى التطبيق

بعد البدء، انتظر بضع ثوانٍ، ثم قم بالوصول إلى:

  • التطبيق: http://localhost:3000
  • نقطة نهاية RSC: http://localhost:3000/_rsc

اختبار الثغرة

استخدم نص الاستغلال المقدم لاختبار الثغرة:

root@kitploit:~
# اختبار أساسي
node exploit.js http://localhost:3000/_rsc "echo test"

# تنفيذ أمر
node exploit.js http://localhost:3000/_rsc "whoami"

# فحص نقاط النهاية
node exploit.js http://localhost:3000 --scan

معلومات البيئة

تتضمن بيئة العرض التوضيحي:

  • Next.js: 15.0.4 (إصدار ضعيف)
  • React: 19.0.0
  • Node.js: 20 (Alpine Linux)
  • الهندسة المعمارية: تستخدم موجه التطبيق ومكونات الخادم

أوامر الإدارة

root@kitploit:~
# عرض السجلات
docker-compose logs -f

# إيقاف البيئة
docker-compose down

# إيقاف وحذف البيانات
docker-compose down -v

# إعادة تشغيل البيئة
docker-compose restart

ملاحظات أمنية

⚠️ تحذيرات مهمة:

  1. لأغراض تعليمية فقط: هذه البيئة للتعلم والبحث الأمني فقط
  2. بيئة معزولة: تعمل الحاوية في شبكة معزولة، ولكن لا يزال يتعين الحذر
  3. لا تعرض للإنترنت: لا تقم بتعيين المنافذ إلى عنوان IP عام
  4. نظف بعد الاستخدام: أوقف واحذف الحاويات بعد الاختبار
  5. لا تستخدم في الإنتاج: يحتوي هذا التكوين على ثغرات أمنية معروفة

أداة الاختبار

test-vulnerability.js هي أداة للكشف عما إذا كان التطبيق متأثرًا بهذه الثغرة. تقوم بإجراء الفحوصات التالية:

  1. فحص الإصدار: التحقق مما إذا كان إصدار Next.js ضمن النطاق المتأثر
  2. اختبار نقاط النهاية: البحث عن نقاط نهاية RSC قد تكون ضعيفة في التطبيق
  3. التحقق من الثغرة: اختبار الثغرة باستخدام حمولات آمنة

الاستخدام

root@kitploit:~
# اختبار التطبيق المستهدف
node test-vulnerability.js <target-url>

# مثال
node test-vulnerability.js http://localhost:3000

الإصلاح

إصلاح فوري

  1. ترقية Next.js: قم بترقية Next.js إلى أحدث إصدار، والذي يتضمن إصلاحًا لهذه الثغرة

    root@kitploit:~
    npm install next@latest
    # أو
    yarn upgrade next@latest
    # أو
    pnpm update next@latest
    
  2. التحقق من الإصلاح: استخدم أداة test-vulnerability.js للتحقق من نجاح الإصلاح

    root@kitploit:~
    node test-vulnerability.js <target-url>
    

تخفيف مؤقت

إذا لم يكن الترقية الفورية ممكنة، فكر في التخفيفات المؤقتة التالية:

  1. استخدام موجه الصفحات (Pages Router): قم بترحيل المسارات المتأثرة إلى Pages Router، والذي لا يتأثر بهذه الثغرة

  2. تمكين Edge Runtime: قم بتمكين Edge Runtime للمسارات المتأثرة، والذي لا يتأثر بهذه الثغرة

    root@kitploit:~
    // في مكون الصفحة أو التخطيط
    export const runtime = 'edge';
    

التفاصيل التقنية

آلية الثغرة

تستغل الثغرة منطق إلغاء التسلسل غير الآمن في بروتوكول "Flight" لمكونات خادم React. عندما يتلقى الخادم طلب RSC من عميل، فإنه يقوم بإلغاء تسلسل الحمولة التي تحتوي على بيانات المكون. بسبب عدم كفاية التحقق من الصحة أثناء إلغاء التسلسل، يمكن للمهاجمين بناء حمولات خبيثة تتسبب في تنفيذ الخادم لتعليمات JavaScript عشوائية.

شروط الاستغلال

لاستغلال هذه الثغرة، يحتاج المهاجم إلى:

  1. استهداف تطبيق يستخدم Next.js 15.x أو 16.x أو 14.3.0-canary.77 والإصدارات الأحدث
  2. استهداف تطبيق يستخدم موجه التطبيق (App Router)
  3. القدرة على إرسال طلبات HTTP إلى الخادم المستهدف

التأثير

يمكن أن يؤدي الاستغلال الناجح إلى:

  1. تنفيذ التعليمات البرمجية عن بُعد (RCE)
  2. السيطرة الكاملة على الخادم
  3. تسريب البيانات
  4. تعطيل الخدمة

المراجع

  • إعلانات أمان Next.js
  • وثائق مكونات خادم React
  • تفاصيل CVE-2025-55182
  • مرجع أداة استغلال CVE-2025-55182
تنزيل الأداة