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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2026-48908-joomla-sp-page-builder-detection — Лабораторная валидация CVE-2026-48908 в Joomla SP Page Builder, охватывающая несанкционированную загрузку иконок, запись PHP-файлов, выполнение кода от имени www-data, доказательства из auditd и PCAP, реконструкцию временной шкалы событий и рекомендации для обнаружения в SOC. Включает доклады на польском и английском языках. | Kitploit
Инструменты/GitHubGitHub/g0thamrabb1t/cve-2026-48908-joomla-sp-page-builder-detection
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийФорензикаВеб-безопасностьТестирование на ПроникновениеСтатьи и ИсследованияОбучение и ОбразованиеРеагирование на Инциденты

Популярное

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

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

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

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

Смотреть все инструменты →
GitHubg0thamrabb1t/cve-2026-48908-joomla-sp-page-builder-detection

CVE-2026-48908-joomla-sp-page-builder-detection

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

Описание

Лабораторная валидация CVE-2026-48908 в Joomla SP Page Builder, охватывающая несанкционированную загрузку иконок, запись PHP-файлов, выполнение кода от имени www-data, доказательства из auditd и PCAP, реконструкцию временной шкалы событий и рекомендации для обнаружения в SOC. Включает доклады на польском и английском языках.

Поделиться

CVE-2026-48908 — Валидация и обнаружение Joomla SP Page Builder

Лабораторная валидация CVE-2026-48908 в компоненте Joomla SP Page Builder, ориентированная на технические доказательства, реконструкцию событий и возможности защитного обнаружения.

В репозитории документируется контролируемый тест, в котором эндпоинт asset.uploadCustomIcon компонента SP Page Builder принимал загружаемые архивы иконок, что приводило к записи PHP-артефактов в каталог медиа Joomla. Вызов загруженного PHP-файла по HTTP приводил к выполнению команд от имени пользователя процесса веб-сервера. Результирующая HTTP, файловая, процессная, аутентификационная и сетевая активность была зафиксирована с помощью логов контейнера Apache, Linux auditd, tcpdump, телеметрии Docker, опроса изменений файлов и скриншотов с хоста Windows.

[!IMPORTANT] Этот репозиторий содержит только отчеты и скриншоты. Эксплойт-код, исходный код полезной нагрузки, сырые файлы PCAP и сырые пакеты данных с хоста намеренно не включены. Материал предназначен для валидации уязвимости, инженерии SOC, разработки обнаружения, подготовки к реагированию на инциденты и авторизованных исследований.

Отчеты

  • Отчет о валидации на английском
  • Отчет о валидации на польском

Оба отчета содержат полную методологию тестирования, выдержки из доказательств, временную шкалу событий, доказательства изменений файлов, сетевые индикаторы, рекомендации по устранению, рекомендации по аудиту и пример логики SIEM.

Структура репозитория

root@kitploit:~
.
├── README.md
├── SHA256SUMS.txt
├── reports/
│   ├── CVE-2026-48908_SP_Page_Builder_detection_EN.pdf
│   └── CVE-2026-48908_SP_Page_Builder_detection_PL.pdf
└── screenshots/
    ├── 01_poc_upload_and_code_execution.png
    ├── 02_http_whoami_www_data.png
    ├── 03_tcp_callback_ncat.png
    ├── 04_reverse_shell_session.png
    └── 05_root_access_and_su_failure_redacted.png

Исходный код эксплойта, исходный код полезной нагрузки, сырые файлы PCAP, сырые пакеты Docker-данных или исходные файлы DOCX не включены.

Тестовая среда

Корневой веб-каталог Joomla /var/www/html был подкреплён томом Docker joomla5-builders_joomla_data. Это важно для обнаружения: docker diff не предоставлял детальной видимости изменений файлов внутри тома, поэтому мониторинг файлов должен был полагаться на списки файлов с учётом томов и рекомендации по мониторингу на стороне хоста.

Что было валидировано

Тест был выполнен в изолированной и авторизованной лабораторной среде. Валидация охватила следующую последовательность:

  1. Joomla 5 была развёрнута в Docker с установленным SP Page Builder.
  2. В качестве первоначального справочного источника для валидации использовался публичный проект, указанный в разделе «Источники».
  3. Эндпоинт SP Page Builder asset.uploadCustomIcon принимал загружаемые архивы иконок в лабораторной среде.
  4. В каталоге /media/com_sppagebuilder/assets/iconfont/ были созданы новые каталоги и файлы.
  5. Загруженный контент включал расширения PHP в смешанном регистре и файл .htaccess, изменяющий обработку PHP для расширения .PHP.
  6. Загруженный PHP-артефакт был вызван по HTTP и выполнил контролируемые команды.
  7. Одноразовый TCP-обратный вызов на хост Windows подтвердил исходящее соединение.
  8. Контролируемый тест обратной оболочки подтвердил интерактивное выполнение команд от имени пользователя веб-сервера.
  9. Попытки доступа к /root и переключения пользователя с помощью su - завершились неудачей.
  10. Доказательства с телеметрии стороны жертвы и скриншотов Windows были скоррелированы в единую временную шкалу UTC.

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

Подтверждённый результат

Лабораторный тест подтвердил:

  • несанкционированную загрузку через эндпоинт SP Page Builder asset.uploadCustomIcon;
  • создание артефактов PHP и .htaccess в каталоге медиа Joomla;
  • выполнение на стороне сервера загруженного PHP-артефакта после HTTP-запроса;
  • выполнение в контексте пользователя процесса Apache/PHP;
  • исходящее TCP-соединение из контейнера Joomla на хост Windows;
  • интерактивную сессию обратной оболочки от имени www-data;
  • отсутствие подтверждённого повышения привилегий до root.

Внутри контейнера действующая идентификационная информация была:

root@kitploit:~
uid=33(www-data) gid=33(www-data) groups=33(www-data)

Неудачная попытка повышения привилегий была видна как:

root@kitploit:~
cd root
bash: cd: root: Permission denied
su -
Password:
su: Authentication failure

Ключевые доказательства

Публичная валидация PoC и поведение загрузки

Публичный PoC протестировал несколько вариантов расширений и подтвердил, что комбинация расширения PHP в смешанном регистре и .htaccess может привести к выполнению в лабораторной установке.

Загрузка PoC и выполнение кода

Выполнение кода от имени пользователя веб-сервера

Контролируемый HTTP-запрос выполнил whoami, и браузер отобразил действующего пользователя процесса.

Результат HTTP whoami

Одноразовый TCP-обратный вызов

Перед интерактивным тестом для подтверждения исходящего соединения из целевой среды на хост Windows через TCP-порт 4444 использовался более безопасный одноразовый обратный вызов.

Одноразовый TCP-обратный вызов

Сессия обратной оболочки

Интерактивная сессия подтвердила выполнение от имени www-data, Linux в качестве операционной системы и рабочий каталог в пути медиа Joomla SP Page Builder.

Сессия обратной оболочки

Неудачная попытка доступа к root

Попытки доступа к /root и аутентификации с помощью su - завершились неудачей. Скриншот отредактирован, чтобы не публиковать тестовый пароль.

Неудачный доступ к root и попытка su

Восстановленная временная шкала

Полная временная шкала доступна в обоих PDF-отчётах. Наиболее важные события:

Методология сбора доказательств

Linux и Docker

На хосте жертвы было собрано:

  • события auditd для execve;
  • захват пакетов с помощью tcpdump;
  • метаданные, логи, события, списки процессов и различия файловой системы контейнера Docker;
  • периодический опрос изменений файлов изнутри контейнера;
  • списки файлов для корневого веб-каталога Joomla, временных каталогов и соответствующих путей медиа;
  • выбранное состояние контейнера до и после теста.

Тест также выявил ограничение мониторинга: поскольку /var/www/html был подкреплён томом Docker, команда docker diff не показывала детального создания файлов в /var/www/html/media/com_sppagebuilder/assets/iconfont/. Поэтому мониторинг целостности файлов должен охватывать реальный путь хоста, на котором расположен том.

Windows

Доказательства с хоста Windows были намеренно ограничены релевантными скриншотами:

  • вывод публичного PoC;
  • вывод браузера для whoami;
  • вывод Ncat для одноразового обратного вызова;
  • вывод Ncat для сессии обратной оболочки;
  • неудачная попытка доступа к /root и su - с отредактированным паролем.

Наиболее важные возможности обнаружения

1. Загрузка через SP Page Builder

Мониторинг HTTP, обратного прокси, WAF или сетевой телеметрии на следующую комбинацию:

root@kitploit:~
POST /index.php?option=com_sppagebuilder&task=asset.uploadCustomIcon
User-Agent содержит: sppb-rce-poc
Статус: 200, 201 или 204

В производственной среде не полагайтесь только на User-Agent публичного PoC. Эндпоинт и неожиданный паттерн загрузки являются более стабильными индикаторами, чем значение User-Agent.

2. Исполняемый файл или .htaccess в пути иконок SP Page Builder

Мониторинг файловой телеметрии на новые или изменённые файлы, соответствующие:

root@kitploit:~
/media/com_sppagebuilder/assets/iconfont/*/fonts/*.php
/media/com_sppagebuilder/assets/iconfont/*/fonts/*.PHP
/media/com_sppagebuilder/assets/iconfont/*/fonts/*.pHp
/media/com_sppagebuilder/assets/iconfont/*/fonts/*.Php
/media/com_sppagebuilder/assets/iconfont/*/fonts/.htaccess

Наличие .htaccess, содержащего AddType application/x-httpd-php .PHP в каталоге загрузки медиа, является индикатором высокого приоритета.

3. GET-запрос к загруженному PHP-файлу с параметрами команд

Коррелируйте активность загрузки с последующими HTTP-запросами к путям, подобным:

root@kitploit:~
/media/com_sppagebuilder/assets/iconfont/*/fonts/*

Более высокая уверенность достигается, когда запрос нацелен на расширение, похожее на PHP, и включает такие параметры, как t= и c=.

4. Активность оболочки или интерпретатора от учётной записи веб-службы

Индикаторы процессов высокого приоритета включают:

root@kitploit:~
пользователь: www-data, apache или nginx
процесс: bash, sh, dash или php
командная строка содержит: /dev/tcp, bash -i, операторы перенаправления или необычное выполнение интерпретатора

5. Исходящее соединение из веб-контейнера

Срабатывайте, когда оболочка или интерпретатор, запущенные процессом веб-сервера, инициируют исходящее соединение с рабочей станцией или необычным портом назначения. В лабораторном тесте использовался TCP-порт 4444, но производственное обнаружение не должно зависеть от одного порта.

6. Неудачные попытки повышения привилегий после выполнения в веб-среде

Тест показал неудачную попытку su -. Мониторинг вспомогательных средств аутентификации, таких как unix_chkpwd, записей в /var/log/btmp и интерактивных команд после компрометации учётной записи веб-службы.

Рекомендации по триажу для SOC

При обнаружении индикатора HTTP-загрузки SOC должен немедленно скоррелировать его с:

  • исходным IP-адресом, user-agent и HTTP-статусом;
  • установлен ли на целевом экземпляре Joomla SP Page Builder и уязвима ли версия;
  • новые каталоги в /media/com_sppagebuilder/assets/iconfont/;
  • новые файлы, похожие на PHP, или файлы .htaccess в каталогах медиа Joomla;
  • HTTP GET-запросы к вновь созданным файлам вскоре после загрузки;
  • параметры запроса, похожие на команды, такие как t= и c=;
  • создание процессов пользователем веб-сервера, особенно процессов оболочки или интерпретатора;
  • исходящие соединения из веб-контейнера или учётной записи веб-службы;
  • команды разведки, такие как whoami, id, uname, hostname, pwd, ip, ifconfig, netstat или ss;

Одного события загрузки часто недостаточно. Самый сильный сигнал тревоги объединяет загрузку, создание файла, доступ к файлу, выполнение процесса и исходящую сетевую телеметрию в одном коротком временном окне.

Рекомендуемые меры по устранению

  1. Обновите SP Page Builder до версии 6.6.2 или новее.
  2. Проверьте /media/com_sppagebuilder/assets/iconfont/ и более широкий каталог медиа Joomla на наличие файлов, похожих на PHP, и артефактов .htaccess.
  3. Удалите любые неожиданные артефакты PHP, .htaccess, .phtml, .phar, архивов или исполняемых файлов из каталогов загрузки.
  4. Отключите выполнение PHP в каталогах загрузки и медиа на уровне Apache, Nginx и PHP-FPM.
  5. Ограничьте или оповещайте о доступе к эндпоинту asset.uploadCustomIcon из ненадёжных сетей.
  6. Мониторинг дочерних процессов веб-службы и исходящих соединений из веб-контейнеров.
  7. Разверните FIM, eBPF, auditd или покрытие EDR для томов Docker, содержащих корневой веб-каталог приложения.
  8. Не полагайтесь только на docker diff для мониторинга корневого веб-каталога, когда данные приложения хранятся в томах Docker или bind-монтированиях.

Область и ограничения

  • Валидация была выполнена для одного экземпляра Joomla 5 в Docker с установленным SP Page Builder.
  • Наблюдаемое воздействие заключалось в выполнении кода от имени пользователя процесса веб-сервера www-data; повышение привилегий до root не было подтверждено.
  • Результат подтверждает протестированный путь и конфигурацию. Это не доказывает, что каждое развёртывание, обратный прокси, веб-сервер, обработчик PHP или операционная система ведут себя идентично.
  • Исходный код эксплойта, исходный код полезной нагрузки, сырые файлы PCAP, сырые пакеты доказательств Docker и исходные файлы DOCX не распространяются в этом репозитории.
  • Отчёты содержат выбранные выдержки из доказательств, а не полные сырые логи, чтобы материал оставался читаемым и сосредоточенным на обнаружении.

Источники

  • NVD — CVE-2026-48908
  • CVE.org — CVE-2026-48908
  • Каталог известных эксплуатируемых уязвимостей CISA
  • Публичный проект, использованный в качестве первоначального справочного источника для валидации
  • JoomShaper SP Page Builder

Уведомление об ответственном использовании

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

Скачать инструмент
РольСистема
Хост жертвыUbuntu 24.04.4 LTS, kernel 6.17.0-35-generic, Docker Engine 29.5.3
Целевое приложениеJoomla 5.4.7, PHP 8.3.32, Apache HTTP Server, image joomla:5-php8.3-apache
КомпонентJoomShaper SP Page Builder
Контейнерjoomla5-builders
Рабочая станция атакующегоMicrosoft Windows 11 Home 10.0.26200
Сервис Joomlahttp://172.20.10.3:8080
Тестовый адрес Windows172.20.10.2
Адрес контейнера172.21.0.3
Дата теста9 июля 2026 г.
UTCСобытие
19:33:56Запуск аудита Linux, tcpdump, событий Docker и опроса изменений файлов
19:34:23Серия POST-запросов к /index.php?option=com_sppagebuilder&task=asset.uploadCustomIcon
19:34:23.291GET к загруженному файлу .PHP с контролируемой арифметической командой
19:34:23.329GET к загруженному файлу .pHp с контролируемой арифметической командой
19:34:23.361GET к загруженному файлу .Php с контролируемой арифметической командой
19:34:23.398GET к финальному артефакту .PHP с контролируемой арифметической командой
19:34:23.411Публичный PoC выполнил id через загруженный PHP-артефакт и получил HTTP 200
19:35:05Ручной запрос whoami вернул www-data
19:35:27Одноразовый TCP-обратный вызов на 172.20.10.2:4444 успешен
19:35:59HTTP-запрос инициировал обратное TCP-соединение на 172.20.10.2:4444
19:36:22-19:36:31whoami, uname, id и pwd подтвердили контекст выполнения
19:37:13cd root вернул Permission denied
19:37:21-19:37:28Попытка su - завершилась с Authentication failure
19:39:25Сбор данных аудита остановлен, артефакты упакованы
  • сбои аутентификации, попытки доступа к учётным данным, закрепление или боковое перемещение после начального выполнения.