
إثبات مفهوم لـ CVE-2025-65094: تصعيد امتيازات عبر IDOR في WBCE CMS. يوضح التلاعب بمعرف المجموعة للحصول على وصول المسؤول، مع تحليل مفصل وإرشادات المعالجة.
| الحقل | التفاصيل |
|---|---|
| معرف CVE | CVE-2025-65094 |
| الخطورة | HIGH |
| التنبيه | عرض التنبيه |
| تم اكتشافه بواسطة | Lukasz Rybak |
يمكن للمستخدم ذي الامتيازات المنخفضة في WBCE CMS تصعيد امتيازاته إلى مجموعة المسؤولين عن طريق التلاعب بالمعامل groups[] في طلب /admin/users/save.php.
تحد واجهة المستخدم من إمكانية تعيين المستخدمين لمجموعتهم الحالية فقط، لكن التحقق من جانب الخادم مفقود، مما يسمح للمهاجمين بالكتابة فوق عضوية مجموعتهم والحصول على صلاحيات إدارية كاملة.
يؤدي هذا إلى اختراق كامل لنظام CMS.
قام القائمون على المشروع بإصلاح المشكلة في الالتزام التالي:
9604617رسالة الالتزام ذات الصلة:
السماح فقط للمسؤولين بتعيين المستخدمين لأي مجموعة؛ يمكن للمستخدمين العاديين تعيين أنفسهم والمستخدمين الآخرين فقط للمجموعات التي هم أعضاء فيها بالفعل.
يعالج هذا بشكل مباشر مشكلة التحكم في الوصول غير الصحيح في تعيين المجموعة.
يستخدم WBCE CMS أذونات المجموعة لتقييد الوصول إلى الميزات الإدارية.
تم إنشاء مجموعة مقيدة (Users) بالأذونات التالية:
يضمن هذا الإعداد أن المستخدمين ذوي الامتيازات المنخفضة:
الإذن الإضافي الوحيد لديهم هو:
المستخدمين ← تعديل، المقصود منه فقط تعديل حسابهم الخاص.
عند تعديل ملفهم الشخصي عبر:
الوصول ← المستخدمين ← تعديل مستخدم
يفشل الخادم في التحقق من أن قيمة groups[] المرسلة تتوافق مع خيارات واجهة المستخدم المسموح بها.
يمكن للمهاجم اعتراض الطلب وتعديله:
groups[]=2 ← يغيره المهاجم إلى ← groups[]=1
يقوم هذا بتعيين المستخدم على الفور إلى مجموعة المسؤولين.
(كما تم تأكيده بواسطة الالتزام 9604617)
الملفات التالية تشارك في تعيين المجموعة ولكنها كانت تفتقر سابقًا إلى منطق التفويض المناسب:
wbce/admin/users/index.phpwbce/admin/users/users.phpwbce/admin/users/save.phpيقدم الإصلاح التحقق من جانب الخادم الذي:
يؤكد هذا وجود ثغرة تحكم غير صحيح في الوصول / IDOR في عملية تعيين المجموعة.
قم بتكوين مجموعة باسم المستخدمون مع:
انتقل إلى:
الوصول ← المستخدمين ← تعديل مستخدم
اعترض الطلب الصادر باستخدام وسيط مثل Burp Suite.
معامل الطلب الأصلي:
groups%5B%5D=2
معامل الطلب المعدل:
groups%5B%5D=1
تغيير المعامل إلى 1 يقوم بتعيين المستخدم إلى مجموعة المسؤولين.
بعد إعادة المصادقة، يحصل المستخدم على وصول كامل إلى الأدوات والميزات الإدارية.
هذه ثغرة تصعيد امتيازات تسمح لأي مستخدم مصادق ذي امتيازات منخفضة بما يلي:
تم الإفصاح عن هذه الثغرة بشكل مسؤول باتباع ممارسات الإفصاح المنسق عن الثغرات. المعلومات المقدمة هنا هي لأغراض تعليمية ودفاعية فقط.
| فئة الإذن | الإعداد |
|---|
| الصفحات | عرض |
| الوسائط | عرض |
| الإضافات | عرض |
| الإعدادات | عرض |
| الوصول ← المستخدمين | عرض + تعديل |
| الوصول ← المجموعات | عرض |
| أدوات الإدارة | (لا شيء) |