
إثبات مفهوم لاستغلال CVE-2026-21440، وهو ثغرة اجتياز مسار حرجة في رفع الملفات متعددة الأجزاء في AdonisJS تتيح كتابة ملفات عشوائية وتنفيذ تعليمات برمجية عن بُعد.
CVE-2026-21440 هي ثغرة حرجة من نوع Path Traversal (اجتياز المسار) تؤثر على إطار عمل AdonisJS، وتحديدًا على معالجة رفع الملفات متعددة الأجزاء (multipart).
⚠️ إذا تم استغلالها، يمكن للمهاجمين كتابة ملفات في أي مكان على الخادم، مما قد يؤدي إلى تنفيذ التعليمات البرمجية عن بُعد (RCE).
| الحقل | القيمة |
|---|
| معرف CVE | CVE-2026-21440 |
| الخطورة | 🔴 حرجة |
| CVSS v4.0 | 9.2 |
| CWE | CWE-22 (Path Traversal) |
| متجه الهجوم | الشبكة |
| مطلوب مصادقة | ❌ لا |
يثق AdonisJS بشكل غير صحيح في أسماء الملفات المقدمة من المستخدم أثناء رفع الملفات متعددة الأجزاء.
عندما يستدعي المطورون:
MultipartFile.move()
بدون تعقيم صارم، يمكن للمهاجمين إرسال أسماء ملفات مثل:
../../../../app/config/startup.js
وهذا يسمح لهم بـ تجاوز دليل الرفع المقصود وكتابة ملفات في مواقع عشوائية على الخادم.
يمكن للمهاجم أن:
هذا يجعل الثغرة خطيرة بشكل خاص لـ نقاط نهاية رفع الملفات العامة.
@adonisjs/bodyparser ≤ 10.1.111.x التجريبية قبل 11.0.0-next.6➡️ قم بالترقية إلى إصدار مُصحح في أقرب وقت ممكن.
إذا لم تكن الترقية ممكنة بعد:
../، المسارات المطلقة، البايتات الفارغة)MultipartFile.move()تثبيت التبعية
pip install requests
حفظ السكربت
انسخ كود Python الكامل واحفظه باسم cve_2026_21440_poc.py
العثور على نقطة نهاية الرفع
حدد عنوان URL لرفع الملفات متعددة الأجزاء في الهدف (مثل /upload، /api/files). اختبر باستخدام المتصفح أو curl.
تشغيل اختبار آمن أولاً
python3 cve_2026_21440_poc.py http://target:port/upload --safe --random
التحقق من النجاح
إذا كان معرضًا للخطر، جرّب الصدفة (اختياري)
python3 cve_2026_21440_poc.py http://target:port/upload --shell php --depth 5
التحقق من الصدفة
قم بالوصول إلى الملف المرفوع (مثل http://target/shell.php?cmd=whoami) لعرض مخرجات الأوامر.
استخدم فقط على الأهداف المصرح بها! ابدأ بـ --safe.

╔══════════════════════════════════════════════════════════════╗
║ ⚠️ إخلاء المسؤولية ⚠️ ║
╚══════════════════════════════════════════════════════════════╝
سكربت إثبات المفهوم (PoC) الخاص بـ CVE-2026-21440 هذا مُقدَّم حصريًا لأغراض تعليمية وبحثية واختبارات أمنية مصرح بها.
❌ يُسمح لك باستخدامه على: • الأنظمة التي تمتلكها • الأنظمة التي لديك إذن كتابي صريح لاختبارها
❌ لا يُسمح لك باستخدامه من أجل: • الوصول غير المصرح به إلى أي نظام • أنشطة غير قانونية من أي نوع • أغراض خبيثة
لا يتحمل المؤلف والموزع أي مسؤولية عن: • إساءة استخدام هذه الأداة • الأضرار التي تلحق بالأنظمة • العواقب القانونية الناتجة عن الاستخدام غير المصرح به
استخدام هذا السكربت ضد أنظمة دون إذن ينتهك القوانين في معظم البلدان (مثل CFAA في الولايات المتحدة، وقانون إساءة استخدام الحاسوب في المملكة المتحدة).
باستخدامك لهذه الأداة، فإنك توافق على: • تحمل المسؤولية الكاملة عن أفعالك • الامتثال لجميع القوانين المعمول بها
ابقَ أخلاقيًا. اختبر بمسؤولية. أبلغ البائعين عن الثغرات.
✦ اخترق الكوكب — ولكن بشكل قانوني ✦