CVE-2024-8957

PTZOptics PT30X-SDI/NDI Cameras

ВЫСОКАЯ ВЕРОЯТНОСТЬ

Дата обнаружения

2024-11-04

Официальное описание

PTZOptics PT30X-SDI/NDI cameras contain an OS command injection vulnerability that allows a remote, authenticated attacker to escalate privileges to root via a crafted payload with the ntp_addr parameter of the /cgi-bin/param.cgi CGI script.

🛡️
Технический анализ и план устранения

Суть уязвимости

CVE-2024-8957 представляет собой критическую уязвимость типа OS Command Injection (инъекция команд ОС) в камерах PTZOptics серии PT30X-SDI/NDI. Проблема локализована в CGI-скрипте /cgi-bin/param.cgi.

Уязвимость возникает из-за недостаточной фильтрации входных данных в параметре ntp_addr. Удаленный аутентифицированный злоумышленник может внедрить произвольные системные команды в этот параметр. Поскольку веб-сервер камеры или соответствующий скрипт выполняются с высокими привилегиями, выполнение специально сформированного запроса позволяет атакующему получить полный контроль над устройством с правами root.

Как исправить

Основным и единственным надежным способом устранения уязвимости является обновление прошивки (firmware) устройства до версии, в которой производитель реализовал корректную валидацию входных данных.

  1. Перейдите на официальный сайт технической поддержки PTZOptics в раздел загрузок.
  2. Найдите актуальную версию прошивки для вашей модели (PT30X-SDI или PT30X-NDI).
  3. Скачайте файл прошивки и проверьте его контрольную сумму (если предоставлена).
  4. Зайдите в веб-интерфейс камеры, перейдите в раздел System -> Upgrade.
  5. Загрузите файл прошивки и запустите процесс обновления.
  6. После перезагрузки убедитесь, что версия ПО обновилась.

Временные меры

Если немедленное обновление прошивки невозможно, необходимо принять меры по снижению риска эксплуатации (Workarounds):

  1. Ограничение сетевого доступа: Изолируйте камеры в отдельный VLAN. Настройте правила Firewall (ACL), чтобы доступ к веб-интерфейсу (порты 80, 443) имели только доверенные IP-адреса администраторов.

  2. Смена стандартных учетных данных: Поскольку для эксплуатации требуется аутентификация, установите сложные пароли для всех учетных записей. Это предотвратит атаку через подбор пароля (Brute-force) или использование дефолтных данных.

  3. Отключение неиспользуемых служб: Если вы не используете NTP для синхронизации времени через веб-интерфейс, попробуйте отключить данную функцию, однако это не гарантирует полной защиты от прямого обращения к CGI-скрипту.

  4. Мониторинг логов: Настройте логирование обращений к веб-серверу и отслеживайте подозрительные GET/POST запросы к /cgi-bin/param.cgi, содержащие спецсимволы (;, &, |, $, `) в параметрах.

Пример проверки версии прошивки через curl (для автоматизации инвентаризации):

curl -u admin:password "http://<camera_ip>/cgi-bin/param.cgi?get_sys_info"