Проверяет CVE-2026-48908 в Joomla SP Page Builder с несанкционированной загрузкой иконок, приводящей к выполнению PHP-кода. Включает доказательства auditd/PCAP, временную шкалу событий и рекомендации по обнаружению SOC для оборонительных исследований.
Лабораторная валидация 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.
.
├── 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 не включены.
| Роль | Система |
|---|---|
| Хост жертвы | 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 |
| Сервис Joomla | http://172.20.10.3:8080 |
| Тестовый адрес Windows | 172.20.10.2 |
| Адрес контейнера | 172.21.0.3 |
| Дата теста | 9 июля 2026 г. |
Корневой веб-каталог Joomla /var/www/html был подкреплён томом Docker joomla5-builders_joomla_data. Это важно для обнаружения: docker diff не предоставлял детальной видимости изменений файлов внутри тома, поэтому мониторинг файлов должен был полагаться на списки файлов с учётом томов и рекомендации по мониторингу на стороне хоста.
Тест был выполнен в изолированной и авторизованной лабораторной среде. Валидация охватила следующую последовательность:
asset.uploadCustomIcon принимал загружаемые архивы иконок в лабораторной среде./media/com_sppagebuilder/assets/iconfont/ были созданы новые каталоги и файлы..htaccess, изменяющий обработку PHP для расширения .PHP./root и переключения пользователя с помощью su - завершились неудачей.Отчеты намеренно документируют доказательства и логику обнаружения без распространения повторно используемого эксплойта или реализации полезной нагрузки.
Лабораторный тест подтвердил:
asset.uploadCustomIcon;.htaccess в каталоге медиа Joomla;www-data;Внутри контейнера действующая идентификационная информация была:
uid=33(www-data) gid=33(www-data) groups=33(www-data)
Неудачная попытка повышения привилегий была видна как:
cd root
bash: cd: root: Permission denied
su -
Password:
su: Authentication failure
Публичный PoC протестировал несколько вариантов расширений и подтвердил, что комбинация расширения PHP в смешанном регистре и .htaccess может привести к выполнению в лабораторной установке.

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

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

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

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

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