CVE-2023-34048
VMware vCenter Server
2024-01-22
VMware vCenter Server contains an out-of-bounds write vulnerability in the implementation of the DCERPC protocol that allows an attacker to conduct remote code execution.
Технический анализ и план устранения
Суть уязвимости
CVE-2023-34048 представляет собой критическую уязвимость типа «запись за пределами границ» (out-of-bounds write) в реализации протокола DCERPC в составе VMware vCenter Server.
Злоумышленник, имеющий сетевой доступ к vCenter Server, может отправить специально сформированный пакет, что приведет к переполнению буфера и позволит выполнить произвольный код (RCE) с правами суперпользователя. Уязвимость получила оценку 9.8 по шкале CVSS v3, так как для эксплуатации не требуются права доступа или взаимодействие с пользователем.
Как исправить
Единственным надежным способом устранения уязвимости является обновление VMware vCenter Server до версий, в которых ошибка исправлена.
- Определите текущую версию vCenter Server через VAMI (порт 5480) или в разделе «About VMware vSphere».
- Выполните резервное копирование (snapshot) виртуальной машины vCenter перед обновлением.
- Установите соответствующий патч в зависимости от вашей ветки:
Для vCenter Server 8.0: Обновитесь до версии 8.0 U2 или 8.0 U1d.
Для vCenter Server 7.0: Обновитесь до версии 7.0 U3o.
Для vCenter Server 6.7 и 6.5 (End of General Support): Несмотря на окончание поддержки, VMware выпустила специальные обновления. Обновитесь до: - 6.7 Update 3t - 6.5 Update 3v
Команда для проверки версии через CLI:
vpxd -v
Команда для установки обновлений через программный менеджер (после монтирования ISO):
software-packages install --iso
Временные меры
Если немедленное обновление невозможно, необходимо ограничить сетевой доступ к уязвимым компонентам.
-
Настройте межсетевой экран (Firewall), чтобы ограничить доступ к портам DCERPC (в частности, порт 2012/tcp). Доступ должен быть разрешен только для доверенных административных сетей и доверенных хостов ESXi.
-
Проверьте текущие правила iptables на vCenter Server Appliance:
iptables -L -n
- В качестве временной меры на уровне сети заблокируйте входящий трафик на порт 2012 со всех недоверенных сегментов:
iptables -A INPUT -p tcp --dport 2012 -s <TRUSTED_NETWORK> -j ACCEPT
iptables -A INPUT -p tcp --dport 2012 -j DROP
Примечание: Использование временных мер не гарантирует полную защиту и может нарушить работу некоторых функций кластера. Настоятельно рекомендуется приоритетное обновление системы.