CVE-2022-30525
Zyxel Multiple Firewalls
2022-05-16
A command injection vulnerability in the CGI program of some Zyxel firewall versions could allow an attacker to modify specific files and then execute some OS commands on a vulnerable device.
Технический анализ и план устранения
Суть уязвимости
Уязвимость в CGI-программе (zhttpd) позволяет аутентифицированному злоумышленнику внедрить произвольные команды ОС через параметры HTTP-запроса. Это происходит из-за недостаточной фильтрации входных данных при обработке запросов к определенным CGI-скриптам (например, /cgi-bin/ViewLog).
Как это используют:
1. Злоумышленник получает доступ к веб-интерфейсу устройства (логин/пароль).
2. Отправляет специально сформированный HTTP-запрос с командами оболочки в параметрах.
3. Успешная эксплуатация позволяет изменять системные файлы и выполнять произвольные команды с привилегиями процесса zhttpd, что может привести к полному компрометированию устройства.
Как исправить
Установите фиксированную версию прошивки, соответствующую вашей модели устройства. Патч включен в следующие версии (и новее):
- USG FLEX (серии 50, 100, 200, 500, 700): Версия прошивки ZLD V5.30
- ATP (серии 100, 200, 500, 700, 800): Версия прошивки ZLD V5.30
- VPN (серии 100, 300, 1000): Версия прошивки ZLD V5.30
- USG/ZyWALL (серии 110, 310, 1100): Версия прошивки ZLD V4.70
Порядок действий: 1. Определите точную модель и текущую версию прошивки в веб-интерфейсе (например, Система > Мониторинг). 2. Скачайте корректную патченную прошивку с официального портала поддержки Zyxel. 3. Обязательно создайте резервную копию конфигурации (Система > Конфигурация > Резервная копия). 4. Установите обновление через веб-интерфейс (Система > Обслуживание > Обновление ПО).
Временное решение
Если немедленное обновление невозможно, примените следующие меры:
-
Ограничьте доступ к веб-интерфейсу:
- В настройках firewall разрешите доступ к администрированию (HTTPS/SSH) только с доверенных IP-адресов или через VPN.
- Отключите доступ к веб-интерфейсу из внешней сети (WAN), если это не требуется.
-
Используйте WAF (Web Application Firewall):
- Настройте правила в WAF (если он используется перед устройством) для блокировки запросов, содержащих в параметрах символы, характерные для инъекций команд (например,
;,|,&,$(),>).
- Настройте правила в WAF (если он используется перед устройством) для блокировки запросов, содержащих в параметрах символы, характерные для инъекций команд (например,
-
Усильте контроль учетных записей:
- Проверьте и удалите неиспользуемые учетные записи администраторов.
- Убедитесь, что для всех учетных записей используются сложные, уникальные пароли.
- Рассмотрите возможность обязательной смены паролей для всех пользователей с правами администратора.