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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-1657 — رفع ملف تعسفي غير مصادق عليه في إضافة EventPrime | Kitploit
أدوات/GitHubGitHub/d3kc4rt1/cve-2026-1657
تحليل الثغرات الأمنيةتحليل الكودالاستغلالأمن الويباختبار الاختراقالتعلم والتعليم
GitHubd3kc4rt1/cve-2026-1657

CVE-2026-1657

رفع ملف تعسفي غير مصادق عليه في إضافة EventPrime

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-1657: ثغرة رفع ملفات عشوائية غير موثقة في إضافة EventPrime

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

ملخص

تم اكتشاف ثغرة رفع ملفات عشوائية غير موثقة في إضافة EventPrime لووردبريس (الإصدارات <= 4.2.8.1). يسمح هذا الخلل لأي زائر غير موثق برفع الملفات مباشرة إلى دليل uploads الخاص بووردبريس وإنشاء سجلات مرفقات في مكتبة الوسائط.

توجد الثغرة لأن نقطة نهاية AJAX محددة تم تسجيلها صراحةً مع nopriv (قابلة للوصول العام) وتفتقر إلى كل من فحوصات التفويض والتحقق السليم من محتوى الملف. يمكن للمهاجمين إساءة استخدام نقطة النهاية هذه لاستنزاف التخزين، أو إغراق مكتبة الوسائط، أو ربما تحميل حمولات ضارة متنكرة في شكل صور.

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

  • معرف CVE: CVE-2026-1657
  • المنتج: EventPrime (إضافة ووردبريس)
  • الإصدارات المتأثرة: <= 4.2.8.1
  • نوع الثغرة: رفع غير مقيد لملف من نوع خطير (CWE-434)
  • لا شيء (غير موثق)
الصلاحيات المطلوبة:

فحص فني معمق والسبب الجذري

السبب الجذري هو مزيج من تسجيل هوك AJAX غير آمن والتحقق غير الكافي من الملف.

1. تسجيل نقطة نهاية AJAX غير آمنة: في includes/class-eventprime-event-calendar-management.php، تسجل الإضافة إجراء upload_file_media. حول السطر 557، تقوم بتعيين {upload_file_media: true} في خريطة الإجراءات الخاصة بها، حيث يشير true إلى دعم _nopriv. وبالتالي، يتم تسجيل هوك wp_ajax_nopriv_ep_upload_file_media، مما يجعل نقطة النهاية متاحة للجميع.

2. عدم وجود فحوصات التفويض و nonce: لا تستخدم دالة المعالج upload_file_media() (في includes/class-ep-ajax.php، الأسطر 1659-1697) current_user_can() للتحقق من صلاحيات الرفع، ولا تتحقق من nonce أمني.

3. منطق تحقق معيب: يقوم المعالج فقط بالتحقق من امتداد الملف (مثل jpg/jpeg/png/gif) بناءً على اسم الملف المقدم من العميل (الأسطر 1661-1664). لا يقوم بتحقق قوي من محتوى الملف على جانب الخادم (مثل getimagesize() أو wp_check_filetype_and_ext()). وهذا يعني أن البرامج النصية الضارة أو أنواع الملفات الأخرى المعاد تسميتها إلى harmless.jpg سيتم كتابتها على القرص قبل أن يحاول ووردبريس توليد البيانات الوصفية.

4. الثبات: يتم حفظ الملف باستخدام move_uploaded_file() مباشرة في wp_upload_dir()['path'] ويتم إنشاء مرفق ووردبريس عبر wp_insert_attachment().

الأثر التجاري

  • استنزاف التخزين (هجوم رفض الخدمة): يمكن للمهاجم أتمتة عمليات الرفع التي تحتوي على ملفات كبيرة، مما يستهلك كل مساحة القرص المتاحة على الخادم أو حصة التخزين السحابي، مما قد يؤدي إلى تعطيل الموقع.
  • إغراق مكتبة الوسائط: يمكن للمهاجم إغراق مكتبة الوسائط بصور غير مناسبة أو عديمة الفائدة، مما يجعلها غير قابلة للاستخدام من قبل المسؤولين.
  • احتمالية المزيد من الاستغلال: عند دمجها مع ثغرات أخرى (مثل تضمين ملف محلي - LFI، أو إذا كان الخادم مهيأً بشكل خاطئ لتنفيذ الصور)، قد يؤدي ذلك إلى تنفيذ تعليمات برمجية عن بُعد (RCE).

إثبات المفهوم (PoC)

خطوات إعادة الإنتاج

1. إعداد الحمولة: قم بإنشاء ملف صورة نموذجي على جهازك المحلي باسم poc.jpg.

2. تنفيذ الطلب: أرسل طلب POST متعدد الأجزاء/نموذج البيانات إلى نقطة نهاية AJAX العامة دون أي ملفات تعريف ارتباط جلسة:

root@kitploit:~
curl -i \
  -F "[email protected];filename=poc.jpg" \
  "http://TARGET_SITE/wp-admin/admin-ajax.php?action=ep_upload_file_media"

3. مراقبة الاستجابة: سيرد الخادم برمز 200 OK ويعيد كائن JSON يحتوي على معرف المرفق الذي تم إنشاؤه حديثًا:

root@kitploit:~
{"success":true,"data":{"attachment_id":117}}

4. التحقق:

  • يتم الآن تخزين الملف في wp-content/uploads/<year>/<month>/poc.jpg.
  • سيرى المسؤول الذي يزور مكتبة الوسائط في ووردبريس الملف الذي تم رفعه.

المعالجة

لحل هذه الثغرة، يجب على المطورين القيام بما يلي:

  1. تقييد الوصول إلى نقطة النهاية: قم بإزالة تعريف nopriv إذا كان الرفع مخصصًا للمستخدمين الموثوقين فقط حسب التصميم.
  2. تنفيذ فحوصات الصلاحية: استخدم current_user_can('upload_files') لضمان أن المستخدمين المصرح لهم فقط هم من يمكنهم الرفع.
  3. التحقق من nonces: قم بتنفيذ check_ajax_referer() لمنع هجمات تزوير الطلبات عبر المواقع (CSRF).
  4. تحقق صارم من الملف: استخدم وظائف معالجة الصور التقليدية في ووردبريس (مثل wp_handle_upload()) التي تقوم بإجراء فحوصات أكثر صرامة لنوع MIME والمحتوى.

الجدول الزمني

  • التاريخ (2026-01-29): تم الإبلاغ إلى Wordfence.
  • التاريخ (2026-02-17): تم تصحيح الثغرة / الإفصاح العام.

المراجع والإسنادات

  • قاعدة بيانات ثغرات Wordfence
  • CVE-2026-1657 على NVD
  • إضافة EventPrime على WordPress.org
تنزيل الأداة