
تحذير: هذا تطبيق هشّ لاختبار استغلال ثغرة التحكم في الوصول المكسور في Jetpack < 13.9.1 (CVE-2024-9926). قم بتشغيله على مسؤوليتك الخاصة!
هذا تطبيق هش لاختبار استغلال ثغرة التحكم بالوصول المعطوب في Jetpack إصدار < 13.9.1 (CVE-2024-9926).
يحتوي هذا التطبيق على ثغرات أمنية خطيرة. قم بتشغيله على مسؤوليتك الخاصة! يُنصح باستخدام بيئة معزولة وبنُسخ احتياطية (مثل جهاز افتراضي بأحدث لقطة وشبكة مخصصة للمضيف فقط). لا ترفع هذا التطبيق إلى أي خوادم متصلة بالإنترنت، لأنه سيتم اختراقها.
إخلاء مسؤولية: لا أتحمل مسؤولية الطريقة التي يستخدم بها أي شخص هذا التطبيق. الغرض الوحيد من هذا التطبيق هو أن يكون سيناريو اختبار لاستغلال ثغرة التحكم بالوصول المعطوب في Jetpack < 13.9.1 (CVE-2024-9926) ويجب عدم استخدامه بشكل خبيث. إذا تم اختراق خادمك عبر تثبيت هذا التطبيق، فإن ذلك ليس مسؤوليتي، بل مسؤولية الشخص (أو الأشخاص) الذين رفعوه وثبّتوه.
فيما يلي خطوات إعداد البيئة:
./up.sh لبدء التشغيل.سيُطلق على الحاوية اسم vuln-wp-jetpack.
لإيقاف البيئة (teardown) استخدم الأمر ./down.sh أو الأمر ./down_and_delete.sh لإزالة الصور وحجم قاعدة البيانات أيضًا.
بالنظر إلى الإصلاح، من السهل فهم أن الفحص الوحيد الذي يتم إجراؤه بواسطة كل من الطريقتين get_items_permissions_check() و get_item_permissions_check() هو عضوية المستخدم في المدونة.
كلا الطريقتين مُعلنتان في الصنف Contact_Form_Endpoint الموجود في الملف automattic/jetpack-forms/src/contact-form/class-contact-form-endpoint.php. وكما يقول التعليق في بداية الصنف، هذا الصنف يُستخدم...
كمعامل
rest_controller_classعند تسجيل نوع المنشورfeedbackفي\Automattic\Jetpack\Forms\ContactForm\Contact_Form
يمكن ملاحظة ذلك في الملف automattic/jetpack-forms/src/contact-form/class-contact-form-plugin.php في السطر 201، حيث يتم تسجيل نوع المنشور المخصص feedback.
يمكن استرجاع الأنواع المتاحة عبر REST APIs بطلب مثل التالي.
GET /?rest_route=/wp/v2/types
يحتوي الرد على النوع feedback.
لاستغلال الثغرة، يكفي طلب مثل التالي.
GET /?rest_route=/wp/v2/feedback
يجب أن يحتوي الطلب على ترويسة Authorization تحتوي على كلمة مرور التطبيق مثل التالية.
Authorization: Basic eW91cl91c2VybmFtZTp5b3VyX2FwcGxpY2F0aW9uX3Bhc3N3b3Jk
يمكن العثور على سكربت استغلال بلغة بايثون هنا.
هذا المشروع مرخّص بموجب رخصة Unlicense - راجع ملف LICENSE للحصول على التفاصيل.