CVE-2022-27925

Synacor Zimbra Collaboration Suite (ZCS)

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

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

2022-08-11

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

Synacor Zimbra Collaboration Suite (ZCS) contains flaw in the mboximport functionality, allowing an authenticated attacker to upload arbitrary files to perform remote code execution. This vulnerability was chained with CVE-2022-37042 which allows for unauthenticated remote code execution.

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

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

CVE-2022-27925 представляет собой критическую уязвимость типа Directory Traversal (обход путей) в функционале mboximport. Проблема заключается в недостаточной проверке имен файлов внутри загружаемых ZIP-архивов.

Авторизованный злоумышленник (или неавторизованный при использовании цепочки с CVE-2022-37042) может создать специально сформированный архив, содержащий файлы с путями вида ../../../../shell.jsp. При импорте такого архива через эндпоинт /service/extension/backup/mboximport система распаковывает файлы за пределы предназначенной директории, что позволяет разместить веб-шелл в корневых каталогах веб-сервера Jetty и выполнить произвольный код (RCE) с правами пользователя zimbra.

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

Основным способом устранения уязвимости является обновление Zimbra Collaboration Suite до версий, в которых исправлена логика обработки архивов.

  1. Проверьте текущую версию ZCS:
zmcontrol -v

  1. Установите актуальные патчи для вашей ветки:
  2. Для ZCS 9.0.0: установите Patch 24.1 или выше.
  3. Для ZCS 8.8.15: установите Patch 31.1 или выше.

  4. Процесс обновления (на примере Ubuntu/Debian):

apt-get update
apt-get install zimbra-patch

  1. Процесс обновления (на примере RedHat/CentOS):
yum check-update
yum update zimbra-patch

  1. Перезапустите службы Zimbra для применения изменений:
su - zimbra -c "zmcontrol restart"

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

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

  1. Настройте ограничение доступа к эндпоинту /service/extension/backup на уровне обратного прокси (Nginx) или внешнего Firewall (WAF), разрешив доступ только доверенным IP-адресам администраторов.

  2. Проверьте наличие подозрительных JSP-файлов в каталогах веб-сервера:

find /opt/zimbra/jetty/webapps -name "*.jsp"

  1. Проанализируйте логи почтового сервера на предмет использования mboximport и необычных путей:
grep "mboximport" /opt/zimbra/log/mailbox.log

  1. Проверьте целостность системы, сравнив текущие файлы в директориях веб-панели с эталонными из дистрибутива вашей версии.