
إثبات مفهوم وإعادة إنتاج مختبري لـ CVE-2026-75816، وهو استيلاء غير مصادق عليه على حساب WordPress Frontend Admin عبر إرسال نموذج admin-ajax.
abraxaslabs.tech · github.com/abraxas · @abraxas_null · [email protected] · CVE-2026-75816
Frontend Admin by DynamiApps 3.29.11 - shabti
أنا @abraxas_null. مختبر loopback. العميل هو CVE-2026-75816-Abraxas-Labs.py.
user_1 ليس منشورًا. admin-ajax.php frontend_admin/form_submit بدون مصادقة. تُرجع ActionPost::conditions_logic() مبكرًا عندما يكون معرّف الكائن غير رقمي (user_1)، متجاوزةً current_user_can('edit_post'). حقل البريد الإلكتروني pre_update_value في 3.29.11 لا يحتوي على فحص edit_user ويقوم بـ wp_update_user لبريد المستخدم 1 الإلكتروني. يسرد NVD حتى 3.29.12؛ أضاف سجل التغييرات 3.29.12 ذلك الفحص. المختبر هو 3.29.11. الإصدار الحالي هو 3.29.13.
| CVE | CVE-2026-75816 · CVE.org |
| CWE | CWE-287 |
| CVSS | حرج: 9.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| المنتج | Frontend Admin by DynamiApps |
| المتأثر | جميع الإصدارات حتى 3.29.11 (يسرد NVD الإصدار 3.29.12؛ أضاف 3.29.12 فحص edit_user لحقل البريد الإلكتروني) |
| المُرقَّع | 3.29.12 وما بعده |
| المصادقة | لا شيء |
| الترخيص | GNU Affero GPL v3.0 |
| المختبر | 127.0.0.1 فقط |
طلب POST من زائر يغيّر البريد الإلكتروني للمسؤول. إعادة تعيين كلمة المرور إلى ذلك العنوان تعني الاستيلاء على الحساب. يتوقف المختبر عند تغيير البريد الإلكتروني. أنا لا أنشر وصفة استعادة كلمة مرور موجهة إلى مسؤول شخص آخر.
أشار Wordfence إلى pre_update_value و user_1. قرأت conditions_logic، ثم حقل البريد الإلكتروني، ثم جمعت النموذج العام.
GET /fea-lab/. استخرج _acf_nonce و _acf_objects ومفتاح حقل user_email. POST acff[post][<key>][email protected]. GET /?fea_lab_email=1. JSON صغير من ajax Post updated، ثم العنوان الجديد.
منعطفات خاطئة: action=pre_update_value أو parse_array (أسماء الدوال ليست مسارات)؛ nonce مُثبّت؛ post_id رقمي (عندها يعمل edit_post فعليًا ويُرفض الزائر)؛ who_can_see ليس all؛ 3.29.12؛ اعتبار [email protected] لا يزال في النص نجاحًا.
المنفذ 8088. Frontend Admin 3.29.11. النموذج العام /fea-lab/، who_can_see=all، الكائن user_1.
استهدف فقط 127.0.0.1:8088 (أو الـ loopback الذي ربطته).
cd lab
docker compose up --force-recreate
./run.sh
الدليل: GET /?fea_lab_email=1 هو [email protected]. HTML النموذج العام أو [email protected] ليس هو الدليل.
طرق للفشل دون تعلّم أي شيء:
[email protected] لا يزال البريد الإلكتروني للمسؤول0 / -1 / JSON صلاحيات دون تغيير البريد الإلكترونيحدّث Frontend Admin by DynamiApps إلى 3.29.12 أو أحدث (الحالي 3.29.13). أعد تشغيل CVE-2026-75816-Abraxas-Labs.py مقابل البناء المُرقَّع: يجب ألا يتغير البريد الإلكتروني للمسؤول.
plugins.trac.wordpress.org/changeset/3664865/acf-frontend-form-element
www.wordfence.com/threat-intel/vulnerabilities/id/f1637a3b-7b0f-485d-9d19-4f711f8c671b?source=cve
دليل الإضافات: acf-frontend-form-element
متصفح Trac: plugins.trac.wordpress.org/acf-frontend-form-element
وسوم SVN: plugins.svn.wordpress.org/acf-frontend-form-element
Abraxas Labs: abraxaslabs.tech · github.com/abraxas · @abraxas_null
GNU Affero GPL v3.0. انظر LICENSE.
يتحدث العميل إلى loopback. استخدامه ضد أنظمة لا تملكها غير مُصرَّح به من Abraxas Labs. لا ضمان.