Недавнее исследование выявило серию критических уязвимостей в Common UNIX Printing System (CUPS) — широко используемом принт-сервере для Linux и Unix-подобных систем. Эти уязвимости потенциально позволяют злоумышленникам удаленно выполнять произвольный код на уязвимых машинах, что представляет серьезную угрозу для безопасности затронутых систем.
Детали обнаруженных уязвимостей
Итальянский специалист по информационной безопасности Симоне Маргарителли идентифицировал четыре уязвимости, получившие идентификаторы CVE-2024-47076, CVE-2024-47175, CVE-2024-47176 и CVE-2024-47177. Эти уязвимости затрагивают различные компоненты CUPS, включая libcupsfilters, libppd, cups-browsed и cups-filters.
Основная проблема связана с демоном cups-browsed, который отвечает за поиск сетевых принтеров. При определенных условиях злоумышленник может эксплуатировать эти уязвимости для внедрения вредоносного принтера в систему жертвы и последующего выполнения произвольного кода.
Механизм атаки и потенциальные риски
Процесс эксплуатации уязвимостей включает несколько этапов:
- Атакующий разворачивает вредоносный IPP-сервер в сети жертвы.
- Создается специально сформированный PostScript Printer Description (PPD) файл.
- Вредоносный принтер «рекламируется» для cups-browsed на UDP-порту 631.
- Система жертвы автоматически устанавливает этот принтер.
- При попытке печати на этом принтере выполняется вредоносный код.
Несмотря на серьезность уязвимостей, для успешной атаки требуется выполнение ряда условий, что снижает вероятность массовой эксплуатации.
Факторы, ограничивающие риск эксплуатации
Эксперты отмечают несколько факторов, снижающих риск широкомасштабной эксплуатации данных уязвимостей:
- Демон cups-browsed обычно отключен по умолчанию в большинстве систем.
- Атакующему необходим доступ к локальной сети жертвы.
- Требуется активное действие пользователя (попытка печати) для выполнения вредоносного кода.
Тем не менее, на некоторых системах, особенно на определенных конфигурациях Ubuntu, cups-browsed может быть активен по умолчанию, что повышает риск успешной атаки.
Рекомендации по защите
До выпуска официальных патчей специалисты рекомендуют следующие меры по снижению рисков:
- Отключение и запрет автозапуска cups-browsed:
sudo systemctl stop cups-browsed sudo systemctl disable cups-browsed
- Блокировка доступа к UDP-порту 631.
- Рассмотрение возможности блокировки DNS-SD для предотвращения альтернативных векторов атаки.
Администраторам систем настоятельно рекомендуется следить за обновлениями безопасности и применять патчи сразу после их выпуска. Регулярный аудит безопасности и мониторинг сетевой активности также помогут выявить потенциальные попытки эксплуатации этих и других уязвимостей.
Данный инцидент подчеркивает важность постоянного внимания к безопасности даже широко используемых и проверенных временем компонентов системы. Организациям следует регулярно пересматривать свои политики безопасности и обеспечивать своевременное обновление всех программных компонентов для минимизации рисков кибератак.