CVE-2021-38649

Microsoft Open Management Infrastructure (OMI)

ВЕРОЯТНОСТЬ 6.5%

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

2021-11-03

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

Microsoft Open Management Infrastructure (OMI) within Azure VM Management Extensions contains an unspecified vulnerability allowing privilege escalation.

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

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

Уязвимость (OMIGOD) в агенте OMI, который автоматически разворачивается на виртуальных машинах Linux в Azure при использовании ряда расширений (например, для мониторинга, автоматизации, защиты). Злоумышленник, имеющий доступ к виртуальной машине (например, через веб-приложение), может отправить специально сформированный пакет на локальный порт OMI (по умолчанию 5985, 5986, 1270), чтобы выполнить произвольный код с правами суперпользователя (root).

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

Основной метод — обновление агента OMI до исправленной версии.

  1. Определите версию установленного OMI: bash omicli ei root/cimv2 Container_Class или bash dpkg -l omi # Для Debian/Ubuntu rpm -qa | grep omi # Для RHEL/CentOS/SUSE

  2. Обновите пакет omi до одной из исправленных версий:

    • Ubuntu/Debian: apt install omi
    • RHEL/CentOS 7/8: yum update omi
    • SUSE Linux Enterprise Server 12/15: zypper update omi

    Исправленные версии: * OMI версия 1.6.8-1 и выше.

  3. Перезапустите службу OMI для применения исправлений: bash sudo systemctl restart omi

Для виртуальных машин Azure: Самый надежный способ — перезапустить ВМ. При перезагрузке платформа Azure автоматически установит последнюю версию расширений и, соответственно, исправленный агент OMI. Альтернативно, можно вручную переустановить проблемные расширения (например, Azure Security Center, Log Analytics, Azure Automation).

Временное решение

Если немедленное обновление невозможно, выполните следующие шаги для снижения риска:

  1. Ограничьте доступ к портам OMI с помощью брандмауэра (NSG в Azure и локального iptables/firewalld). Запретите входящие подключения к портам 5985, 5986, 1270 из любых источников, кроме доверенных IP-адресов, необходимых для управления.

    • Пример для firewalld (запрет всех входящих, кроме localhost): bash sudo firewall-cmd --permanent --remove-port=5985/tcp sudo firewall-cmd --permanent --remove-port=5986/tcp sudo firewall-cmd --permanent --remove-port=1270/tcp sudo firewall-cmd --reload
  2. Используйте правила WAF (Web Application Firewall), если атака возможна через веб-приложение, для блокировки подозрительных запросов, которые могут быть связаны с эксплуатацией OMI.

  3. Рассмотрите возможность временного удаления или отключения расширений Azure, которые используют уязвимую версию OMI, если они не критичны для работы системы. Удаление расширения приведет к удалению агента OMI.

    • Внимание: Это может повлиять на мониторинг, сбор логов и другие функции облачной инфраструктуры.