Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2025-66478-Exploit-PoC — عرض تجريبي لاستغلال CVE-2025-66478 كإثبات للمفهوم باستخدام Node.js | Kitploit
أدوات/GitHubGitHub/zhixiangyao/cve-2025-66478-exploit-poc
التحليل الديناميكي (عزل)تحليل الثغرات الأمنيةتحليل الكودالاستغلالاستغلال تطبيقات الويبالتعلم والتعليمتطوير الحمولات
GitHubzhixiangyao/cve-2025-66478-exploit-poc

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2025-66478-Exploit-PoC

عرض تجريبي لاستغلال CVE-2025-66478 كإثبات للمفهوم باستخدام Node.js

عرض المستودع
139منذ 10 أشهرلم تتم المراجعة بعد

CVE-2025-66478 إثبات مفهوم الاستغلال (PoC)

يحتوي هذا المستودع على كود إثبات المفهوم (PoC) لإعادة إنتاج ثغرة CVE-2025-66478 في Next.js والبحث فيها. ويتضمن تطبيق Next.js ضعيفًا وسكربت استغلال مكتوبًا بلغة Node.js لاختبار الثغرة.

English · 中文

ما هي CVE-2025-66478؟

هذه ثغرة تنفيذ كود عن بُعد (RCE) تحدث أثناء معالجة Server Actions في Next.js.

النقاط الرئيسية:

  • السبب الجذري: إلغاء تسلسل غير آمن في بروتوكول Flight الخاص بـ RSC (مكونات خادم React).
  • ناقل الهجوم: تلوث النموذج الأولي (Prototype Pollution) عبر خاصية __proto__.

ملخص الثغرة

البندالوصف
CVE IDCVE-2025-66478
النوعتنفيذ كود عن بُعد (RCE)
السبب الجذريإلغاء تسلسل غير آمن في بروتوكول Flight الخاص بـ RSC
الشدة (CVSS)10.0 (حرجة)
التأثيرتنفيذ أوامر نظام عشوائية على الخادم

آلية الهجوم (تفاصيل تقنية)

  1. تسليم الحمولة (Payload Delivery): يقوم المهاجم بإنشاء حمولة باستخدام تنسيق تسلسل React Flight، محقنًا خصائص مثل __proto__.
  2. إلغاء التسلسل غير الآمن والتلوث: يقوم الخادم بإلغاء تسلسل الحمولة دون تحقق مناسب، مما يؤدي إلى تلوث Object.prototype.
  3. سلسلة استغلال الكائنات القابلة للـ then (Thenable): يؤدي التلوث إلى حقن خاصية then في جميع الكائنات. يحدد منطق Next.js هذه الكائنات بشكل خاطئ على أنها وعود (Promises/Thenables).
  4. تنفيذ RCE: عندما يحاول الخادم تنفيذ await على هذا "الوعد المزيّف"، يتم تنفيذ كود JavaScript الخبيث المحقون في دالة then (مثل child_process.execSync).
sequenceDiagram
    participant Attacker as Attacker
    participant Server as Next.js Server

    Attacker->>Server: POST / (JSON with "__proto__": {"then": ...})
    Note right of Server: JSON parsing pollutes Object.prototype

    Server->>Server: Application logic encounters an object

    rect rgb(200, 150, 150)
    Note right of Server: "Thenable" check exploitation chain
    Server->>Server: Check: typeof obj.then === 'function'?
    Server-->>Server: Yes (due to pollution)
    end

    Server->>Server: Await/execute malicious .then()
    Note right of Server: Malicious JS code runs (RCE)

    Server-->>Attacker: Response (Action redirect / Error message)

لذلك، عندما يعالج الخادم هذا Promise المتلاعب به، فإنه ينفذ كود JavaScript المحقون من قبل المهاجم، مما قد يؤدي إلى تنفيذ أوامر على النظام. الملف main.mjs المرفق هو مثال على كود لإعادة إنتاج سيناريو الهجوم هذا.

الإصدارات المتأثرة

تؤثر هذه الثغرة على تطبيقات Next.js التي تستخدم App Router.

  • الإصدارات المتأثرة:
    • 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

الإصدارات المصححة:

  • 15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7
  • 16.0.7
  • 15.6.0-canary.58 (لمستخدمي PPR)

المراجع

  • التنبيهات الأمنية لـ Next.js
  • NVD - CVE-2025-66478
  • Python - CVE-2025-66478
  • CVE-2025-55182

بنية الملفات

  • app/page.tsx: كود نموذجي للتطبيق الضعيف.
  • exploit.mjs: سكربت تنفيذ الاستغلال المكتوب بلغة Node.js.

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

  • Node.js: يُنصح باستخدام v24 أو أحدث.

1. تشغيل تطبيق Next.js

# You can also use yarn or npm.
pnpm install
pnpm dev

تحقق من أنه يمكنك الوصول إلى http://localhost:3000 عبر متصفحك.

2. تشغيل سكربت الاستغلال

pnpm exploit

بشكل افتراضي، يستهدف العنوان المحلي (http://localhost:3000). لاختبار عنوان مختلف، استخدم الخيار --url:

pnpm exploit --url http://target-ip:3000

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

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

تنزيل الأداة