CVE-2020-15415

DrayTek Multiple Vigor Routers

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

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

2024-09-30

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

DrayTek Vigor3900, Vigor2960, and Vigor300B devices contain an OS command injection vulnerability in cgi-bin/mainfunction.cgi/cvmcfgupload that allows for remote code execution via shell metacharacters in a filename when the text/x-python-script content type is used.

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

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

Уязвимость CVE-2020-15415 представляет собой критическую брешь типа OS Command Injection (инъекция команд ОС) в веб-интерфейсе управления маршрутизаторов DrayTek. Проблема локализована в компоненте cgi-bin/mainfunction.cgi/cvmcfgupload.

Злоумышленник может выполнить произвольный код на уровне операционной системы устройства, отправив специально сформированный HTTP POST запрос. Уязвимость активируется при использовании Content-Type text/x-python-script. Из-за отсутствия надлежащей фильтрации метасимволов оболочки (shell metacharacters) в имени загружаемого файла, команды, внедренные в имя файла, исполняются интерпретатором командной строки устройства с высокими привилегиями.

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

Единственным надежным способом полного устранения уязвимости является обновление микропрограммы (firmware) до версии, в которой данная ошибка была исправлена производителем.

  1. Скачайте актуальную версию прошивки с официального сайта DrayTek или из раздела загрузок для вашего региона.
  2. Установите обновление через веб-интерфейс (System Maintenance >> Firmware Upgrade).

Исправленные версии прошивок: * Для Vigor2960: версия 1.5.1.1 или выше. * Для Vigor3900: версия 1.5.1.1 или выше. * Для Vigor300B: версия 1.5.1.1 или выше.

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

Если немедленное обновление прошивки невозможно, необходимо минимизировать поверхность атаки и ограничить доступ к административному интерфейсу устройства.

  1. Отключите возможность удаленного управления (Remote Management) из внешней сети (WAN). Если удаленный доступ необходим, разрешите его только с доверенных IP-адресов.
  2. Измените стандартные порты HTTP (80) и HTTPS (443) для управления устройством на нестандартные.
  3. Настройте Access Control List (ACL) для ограничения доступа к веб-интерфейсу.
  4. Используйте VPN для администрирования устройства вместо прямой публикации веб-панели в интернет.

Команда для проверки текущей версии прошивки через CLI (если доступен SSH):

status