## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-XUEMIAN168-CVE-2025-30208
中文 | Английский
# Сканер уязвимостей Vite Dev Server
### Автоматический сканер для внутренних и внешних сетей
  
Автоматизированный инструмент для сканирования уязвимостей сервера разработки Vite. Этот инструмент использует API FOFA для сбора потенциальных целей и автоматически обнаруживает определённые уязвимости.
## Возможности
* Авто
* Автоматический сбор целевых активов через FOFA
* Многопоточное конкурентное сканирование
* Автоматическая генерация отчёта в CSV
* Ручной режим
* Ручной сбор целевых активов через CIDR
* Многопоточное конкурентное сканирование
* Импорт целей из TXT
* Импорт полезной нагрузки из TXT
* Автоматическая генерация отчёта в CSV
## Скриншоты — Авторежим

## Скриншоты — Ручной режим

## Требования
* Python 3
* Аккаунт FOFA API
## Детали уязвимостей
### CVE-2025-30208
* Название уязвимости: Неавторизованный доступ к Vite Dev Server
* Описание: Сервер разработки Vite содержит уязвимость неавторизованного доступа, которая позволяет злоумышленникам получать доступ к конфиденциальной информации через определённые URL.
* Затронутые версии: Vite версии >=6.2.0, <=6.2.2, >=6.1.0, <=6.1.1, >=6.0.0, <=6.0.11, >=5.0.0, <=5.4.14, <=4.5.9
* Простыми словами: `server.fs.deny` — это параметр конфигурации в сервере разработки Vite, который ограничивает доступ к файловой системе сервера. Этот параметр позволяет разработчикам задавать массив регулярных выражений для блокировки доступа к определённым файлам. Хотя это важная функция безопасности, предназначенная для предотвращения неавторизованного доступа к конфиденциальным файлам на сервере, этот механизм можно обойти, добавив `?raw??` или `?import&raw??` к URL. Если целевой файл существует, его содержимое может быть напрямую прочитано. Это приводит к следующим потенциальным рискам безопасности:
* Чтение произвольных файлов на сервере
* Доступ к системным конфигурационным файлам
* Получение конфиденциальной информации приложения
* Исследование структуры каталогов сервера
### CVE-2025-31125
* Название уязвимости: Чтение произвольных файлов Vite Dev Server через импорт
* Описание: Сервер разработки Vite содержит уязвимость чтения произвольных файлов, которая позволяет злоумышленникам читать конфиденциальные файлы через механизм импорта.
* Затронутые версии: Vite версии >=6.2.0, <=6.2.2, >=6.1.0, <=6.1.1, >=6.0.0, <=6.0.11, >=5.0.0, <=5.4.14, <=4.5.9
* Простыми словами: Уязвимость существует в механизме импорта сервера разработки Vite. Злоумышленники могут обойти ограничения доступа к файлам, добавив `?import&?inline=1.wasm?init` к URL. Это позволяет читать произвольные файлы на сервере, включая:
* Системные файлы (например, /etc/passwd в Linux, C:/Windows/win.ini в Windows)
* Файлы конфигурации приложения
* Исходные коды
* Учётные данные баз данных
* Переменные окружения
## Конфигурация
Создайте файл `.env` в корневом каталоге проекта со следующим содержимым:
root@kitploit:~
some-email@example.com
FOFA_KEY=your_fofa_api_key
COUNTRY=AU
Распространённые коды стран:
* CN: Китай
* US: США
* AU: Австралия
* DE: Германия
* CA: Канада
* FR: Франция
* GB: Великобритания
* IN: Индия
* JP: Япония
* RU: Россия
* ZA: ЮАР
* BR: Бразилия
* MX: Мексика
* ES: Испания
* ...и т.д.
## Использование — FOFA
root@kitploit:~
pip install -r requirements.txt
python main.py
## Использование — CIDR

root@kitploit:~
# Установка зависимостей
pip install -r requirements.txt
# Получить справку
python manual.py -h
usage: manual.py [-h] [-t TARGETS] [-f FILE] [-p PORTS] [-d DICT]
Vite Dev Server Vulnerability Scanner - Manual Mode
options:
-h, --help show this help message and exit
-t TARGETS, --targets TARGETS
Target IP addresses, supports single IP, CIDR format (e.g., 192.168.1.0/24) or
domain, separate multiple targets with commas
-f FILE, --file FILE Load targets from file (one target per line)
-p PORTS, --ports PORTS
Port list, separate with commas (default: 80,443,3000,5173,8080)
-d DICT, --dict DICT Custom dictionary file path (format: one path per line, lines starting with #
are ignored)
# Сканирование 192.168.1.0/24 с портами по умолчанию
python manual.py -t 192.168.1.0/24
## Параметры конфигурации
Следующие параметры можно настроить в `main.py`:
* `MAX_PAGE`: Максимальное количество страниц запросов (по умолчанию: 5)
* `RESULTS_PER_PAGE`: Результатов на страницу (по умолчанию: 100)
* `TIMEOUT`: Тайм-аут запроса в секундах (по умолчанию: 10)
* `MAX_THREADS`: Максимальное количество конкурентных потоков (по умолчанию: 20)
## Вывод

Результаты сканирования сохраняются в файл `vite_vulnerable_targets.csv` со следующими полями:
* url: Целевой URL
* vulnerable_url: URL уязвимости
* status_code: HTTP-код состояния
* domain: Доменное имя
* ip: IP-адрес
* content_preview: Первые 200 символов уязвимого содержимого
* vulnerability_type: Либо "CVE-2025-30208", либо "CVE-2025-31125"
По окончании сканирования инструмент отображает статистику попаданий:
* Общее количество просканированных целей
* Количество попаданий CVE-2025-30208 и процент попадания
* Количество попаданий CVE-2025-31125 и процент попадания
* Общее количество найденных уязвимостей
Пример вывода:
root@kitploit:~
[+] Scan complete!
[*] Total targets scanned: 100
[*] CVE-2025-30208 hits: 15 (15.00%)
[*] CVE-2025-31125 hits: 8 (8.00%)
[*] Total vulnerabilities found: 23
## Отказ от ответственности
Этот инструмент предназначен только для исследований в области безопасности и авторизованного тестирования. Не используйте его в незаконных целях. Убедитесь, что у вас есть соответствующие разрешения перед тестированием любых целей.
## Лицензия
Лицензия MIT
## Ссылки
* NIST 30208
* NIST 31125
* Уведомление о безопасности GitHub — GHSA-x574-m823-4x7w
* Уведомление о безопасности GitHub — GHSA-4r4m-qw57-chr8
* Коммит Vite — Исправление: предотвращение чтения произвольных файлов через импорт