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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-29057-POC — مختبر قائم على Docker يعيد إنتاج تهريب الطلبات CVE-2026-29057 في Next.js، ويقارن الإصدار المصاب 15.5.12 مع الإصدار المُرقَّع 15.5.13 باستخدام حمولة HTTP مجزأة خام. | Kitploit
أدوات/GitHubGitHub/learnerxuan/cve-2026-29057-poc
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبأمن الويباختبار الاختراقالأوراق والأبحاثالتعلم والتعليممختبرات وتدريب عملي
GitHub
learnerxuan/cve-2026-29057-poc

CVE-2026-29057-POC

مختبر قائم على Docker يعيد إنتاج تهريب الطلبات CVE-2026-29057 في Next.js، ويقارن الإصدار المصاب 15.5.12 مع الإصدار المُرقَّع 15.5.13 باستخدام حمولة HTTP مجزأة خام.

عرض المستودع
منذ 8س 17دلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-29057 — مختبر تهريب الطلبات في Next.js

هذا المستودع هو مختبر عرض تقديمي مُركّز على CVE-2026-29057. وهو يقارن هدف Next.js المُعرّض للثغرة (15.5.12) مع الإصدار المُرقّع (15.5.13) باستخدام نفس البنية ونفس حِمل HTTP الخام.

استخدمه فقط في مختبر معزول. يمكن لفحوصات إلغاء تزامن الطلبات أن تُعطّل الاتصالات المشتركة في البيئات الحقيقية.

الإسناد

هذا المستودع مُقتبس من مستودع إثبات المفهوم الأصلي لـ Next.js من Nayaka Ghana Subrata. يعود الفضل الكامل للمؤلف الأصلي على العمل التأسيسي لإثبات المفهوم.

لقد أعدت تنظيم ذلك العمل وتعديله ليركّز تحديدًا على CVE-2026-29057، بما في ذلك مواد العرض التقديمي، والعرض التوضيحي الموجّه، وسيناريو المختبر، والتعليقات التوضيحية، والمقارنة بين النسخة المُعرّضة والنسخة المُرقّعة. هذا المستودع هو اقتباس تعليمي ولا ينبغي الخلط بينه وبين مستودع المؤلف الأصلي.

العرض التقديمي

  • شرائح عرض CVE-2026-29057
  • نص العرض التقديمي
  • دليل تشغيل العرض التوضيحي
  • أسئلة وأجوبة المُقدِّم

ما الذي يثبته المختبر

  1. يُرسل العميل طلبًا واحدًا مُجزّأً DELETE /api/workspace/tasks/1042.
  2. يحتوي جسمه على بايتات تُشكّل طلبًا ثانيًا: GET /secret.
  3. يُزيل الوسيط المُعرّض للثغرة ترويسة Transfer-Encoding ويضيف Content-Length: 0، بينما لا تزال بايتات الجسم تُمرَّر.
  4. يُحلّل الوسيط اللاحق البايتات المتبقية كطلب ثانٍ ويُمرّر كلا الطلبين المُحلّلين إلى الواجهة الخلفية النهائية.
الهدفNext.jsطلبات الواجهة الخلفية
مُعرّض للثغرة15.5.12DELETE /api/workspace/tasks/1042، ثم GET /secret
مُرقّع15.5.13DELETE /api/workspace/tasks/1042 فقط

هيكل المستودع

root@kitploit:~
.
├── docker-compose.yml
├── DEMO-RUNBOOK.md
├── PRESENTATION-SCRIPT.md
├── PRESENTATION-QA.md
├── pocs/cve-2026-29057/
│   ├── app/
│   ├── support/server.js
│   ├── next.config.js
│   └── Dockerfile
└── scripts/run-cve-2026-29057.mjs

تشغيل المختبر

المتطلبات: Docker Compose و Node.js 18 أو أحدث.

root@kitploit:~
docker compose up --build cve-2026-29057-vuln cve-2026-29057-fixed
  • المُعرّض للثغرة: http://localhost:3105
  • المُرقّع: http://localhost:3106

تشغيل العرض التوضيحي التفاضلي

root@kitploit:~
node scripts/run-cve-2026-29057.mjs http://localhost:3105
node scripts/run-cve-2026-29057.mjs http://localhost:3106

الدليل المتوقع من النسخة المُعرّضة للثغرة:

root@kitploit:~
[after] {"backendRequests":["DELETE /api/workspace/tasks/1042","GET /secret"],"flag":"FLAG{one_stream_two_requests}"}
PoC result: vulnerable behavior reproduced.
Flag: FLAG{one_stream_two_requests}

الدليل المتوقع من النسخة المُرقّعة:

root@kitploit:~
[after] {"backendRequests":["DELETE /api/workspace/tasks/1042"],"flag":null}
PoC result: smuggled request was not observed. This usually means the target is patched.

الدليل ذو المعنى هو الدليل التفاضلي: تبقى البنية والحِمل دون تغيير؛ فقط إصدار Next.js هو ما يختلف.

قصة الاكتشاف بالصندوق الأسود

لا يتطلب المختبر من المُقدِّم أن يتظاهر بأن المهاجم يعرف كلا المسارين بطريقة سحرية:

  1. تُصنّف الصفحة بشكل مرئي Launch brief على أنه Task #1042. انقر على Delete task أثناء التصفح عبر Burp. يُظهر سجل الوسيط الطلب الشرعي DELETE /api/workspace/tasks/1042، لذا يأتي مسار الناقل مباشرةً من حركة التطبيق الطبيعية.
  2. اطلب /robots.txt. يُشير إلى الملف /ops/release-manifest المنشور عن طريق الخطأ.
  3. اطلب ذلك الملف. يُحدّد /api/workspace/ كبادئة الخدمة العامة، ويُسرّب /secret كمسار داخلي، ويُسمّي /api/state كسجل الطلبات. لا يكشف عن العلامة (flag) نفسها.

الملف هو ضعف إفصاح عن المعلومات متعمّد لأجل سردية المختبر. وهو منفصل عن CVE-2026-29057؛ إذ تُوفّر الثغرة تجاوز تأطير الطلبات الذي يصل إلى مسار الواجهة الخلفية المُفصح عنه.

أسماء المسارات هي عناصر ثابتة في المختبر، وليست مسارات مُستعادة من ضحية حقيقية. أضاف التصحيح الرسمي من Vercel اختبار انحدار يُعرّف /rewrites/:path*، ويستخدم /rewrites/poc كناقل، ويُنشئ /secret على الواجهة الخلفية للاختبار. يمنح هذا المختبر الناقل اسمًا بشكل منتج مع الحفاظ على بنية ذلك الاختبار.

ترتيب استعراض الكود

  1. docker-compose.yml — النسخ المُعرّضة للثغرة مقابل المُرقّعة.
  2. pocs/cve-2026-29057/next.config.js — حدود إعادة الكتابة الخارجية.
  3. pocs/cve-2026-29057/support/server.js — محلّلات الوسيط والواجهة الخلفية.
  4. scripts/run-cve-2026-29057.mjs — الحِمل الخام المُجزّأ ومدقّق النتائج.
  5. pocs/cve-2026-29057/app/api/ — نقاط نهاية إعادة تعيين الأدلة والقراءة.

إيقاف المختبر

root@kitploit:~
docker compose down

المصادر

  • GitHub Security Advisory GHSA-ggv3-7p47-pfv8
  • Next.js patch commit
  • NVD record
تنزيل الأداة