
Контейнеризированная лабораторная среда для симуляции и эксплуатации CVE-2025-31486, уязвимости обхода пути в сервере разработки Vite, с пошаговыми инструкциями для практического обучения безопасности.
Практическая лабораторная среда на базе контейнеров для имитации и эксплуатации уязвимости Path Traversal в сервере разработки Vite, известной как CVE-2025-31486.
Эта лаборатория демонстрирует серьезную уязвимость Path Traversal, обнаруженную в более старых версиях Vite — современного инструмента сборки для веб-разработки. Уязвимость позволяет атакующему обойти ограничения безопасности сервера разработки Vite и прочитать произвольные файлы из локальной файловой системы.
Суть проблемы заключается в том, как плагин ресурсов Vite обрабатывает URL-адреса. Создавая специальный URL с суффиксами, такими как ?.svg и ?.wasm?init, атакующий может заставить сервер пропустить критически важные проверки безопасности (в частности, функцию server.fs.deny), получив доступ к конфиденциальным файлам, например /etc/passwd.
--host.build.assetsInlineLimit (по умолчанию 4 КБ), так как Vite встраивает такие файлы в виде строк Base64 в свой ответ.Этот репозиторий содержит всё необходимое для безопасного запуска уязвимого сервера Vite и самостоятельного выполнения эксплойта. Вы можете запустить симуляцию двумя способами:
Получите полноценную облачную среду разработки за секунды. Никакой локальной настройки не требуется.
Запуск Codespace: Нажмите кнопку «Open in GitHub Codespaces» в верхней части этого README.
Ожидание настройки: GitHub подготовит вашу облачную среду. Это может занять минуту. После готовности в нижней части редактора появится терминал.
Запуск уязвимого сервера: В терминале выполните следующую команду:
docker compose up
Вы увидите вывод, указывающий, что уязвимый сервер разработки Vite запущен и доступен.
Выполнение эксплойта:
+ в панели терминала).Если вы предпочитаете запустить лабораторию на своей машине, выполните следующие шаги.
Предварительные требования:
Инструкции:
Клонирование репозитория:
git clone https://github.com/hackmelocal/CVE-2025-31486-Simulation.git
cd CVE-2025-31486-Simulation
Запуск уязвимого сервера: В терминале выполните команду:
docker compose up
Эта команда соберет Docker-образ (если он еще не собран) и запустит уязвимый сервер Vite.
Выполнение эксплойта: