Sploitus

Exploit for CVE-2025-30208 CVE-2025-30208 CVE-2025-31125

kitploit · 2026-08-25

Exploit Code

MARKDOWN206 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-XUEMIAN168-CVE-2025-30208
中文 | Английский

# Сканер уязвимостей Vite Dev Server

### Автоматический сканер для внутренних и внешних сетей

![Python Version](https://img.shields.io/badge/python-3.6+-blue) ![License](https://img.shields.io/badge/license-MIT-green) ![FOFA](https://img.shields.io/badge/FOFA-API-orange)

Автоматизированный инструмент для сканирования уязвимостей сервера разработки Vite. Этот инструмент использует API FOFA для сбора потенциальных целей и автоматически обнаруживает определённые уязвимости.

## Возможности

  * Авто

    * Автоматический сбор целевых активов через FOFA
    * Многопоточное конкурентное сканирование
    * Автоматическая генерация отчёта в CSV
  * Ручной режим

    * Ручной сбор целевых активов через CIDR
    * Многопоточное конкурентное сканирование
    * Импорт целей из TXT
    * Импорт полезной нагрузки из TXT
    * Автоматическая генерация отчёта в CSV



## Скриншоты — Авторежим

![image](https://assets.kitploit.com/production/public/readmes/34682/4f604606f6d09d56a0ccc7b60a01b2527ce898172bc0799c5746ca76925048cf.png)

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

![image](https://assets.kitploit.com/production/public/readmes/34682/d8025abde5313650971ef26b1eb6796fe8bbd81c4b9f6ed17ffebc0cd5bb1235.png)

## Требования

  * 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

![image](https://assets.kitploit.com/production/public/readmes/34682/d02660ec90a9025e2a4de9810e9c3b05d7637bdeccb03d1b81d34109fd4bb8a6.png)

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)



## Вывод

![image](https://assets.kitploit.com/production/public/readmes/34682/ce886b39cf182188d50c81b6c59cf8ba4f091266c0c4c840da0ea0938a4aded4.png)

Результаты сканирования сохраняются в файл `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 — Исправление: предотвращение чтения произвольных файлов через импорт