
Эксплойт для CVE-2026-25732 — обход пути в FileUpload компоненте NiceGUI, позволяющий неавторизованную запись произвольных файлов. Включает примеры использования для перезаписи файлов приложения или размещения веб-шеллов.
Автор: Mohammed Idrees Banyamer
Контакты:
Название эксплойта: Path Traversal в FileUpload в NiceGUI, приводящий к произвольной записи файлов
Дата: 2025-06-06
Протестировано на: NiceGUI ≤ 3.6.1 (Python 3.8 – 3.12 на Linux / Windows)
Исправлено в: NiceGUI 3.7.0
CVE: CVE-2026-25732
Слабость: CWE-22 — Некорректное ограничение пути к ограниченному каталогу
Вектор атаки: Сеть
Требуемые привилегии: Отсутствуют
Взаимодействие с пользователем: Отсутствует
Платформа: Веб-приложение (NiceGUI / Python)
Версии NiceGUI ≤ 3.6.1 не выполняют надлежащую санитизацию поля name загружаемых файлов в обработчике ui.upload() / FileUpload, когда разработчик приложения использует исходное имя файла в пути сохранения без дополнительной санитизации.
Это позволяет неаутентифицированному злоумышленнику записывать произвольные файлы в любом месте, где процесс NiceGUI имеет права на запись, с помощью последовательностей обхода пути (../, абсолютные пути и т. д.).
Примеры типичного воздействия:
app.py / main.py → выполнение кода при перезагрузке/перезапуске приложения/etc/, домашние каталоги, .ssh/, папки конфигурации и т. д.#!/usr/bin/env python3
"""
CVE-2026-25732 — NiceGUI произвольная запись файлов (path traversal)
Эксплуатирует несанитизированный FileUpload.name, когда приложение использует его в пути сохранения.
Использование:
python exploit_cve_2026_25732.py http://target:8080 "../etc/passwd" payload.txt
python exploit_cve_2026_25732.py http://target:8080 "../app.py" malicious_app.py
python exploit_cve_2026_25732.py http://target:8080 "nicegui/../../../etc/crontab" revshell-cron
"""