CVE-2022-27924

Synacor Zimbra Collaboration Suite (ZCS)

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

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

2022-08-04

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

Synacor Zimbra Collaboration Suite (ZCS) allows an attacker to inject memcache commands into a targeted instance which causes an overwrite of arbitrary cached entries.

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

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

CVE-2022-27924 представляет собой критическую уязвимость типа «Memcached Injection» в Zimbra Collaboration Suite (ZCS). Проблема возникает из-за некорректной обработки CRLF-последовательностей (перевода строки) в параметрах электронной почты.

Злоумышленник может отправить специально сформированный HTTP-запрос, содержащий команды Memcached. Поскольку Zimbra использует Memcached для кэширования сессий и учетных данных, это позволяет атакующему: * Перезаписывать произвольные записи в кэше. * Похищать токены аутентификации пользователей (Cleartext credentials). * Захватывать сессии пользователей без знания их паролей.

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

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

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

  1. Обновите систему до одной из следующих версий (или более новых):
  2. ZCS 9.0.0 Patch 24.1
  3. ZCS 8.8.15 Patch 31.1

  4. Процесс установки патча (выполняется от пользователя root):

apt-get update && apt-get install zimbra-patch

(Для систем на базе RHEL/CentOS используйте yum check-update и yum install zimbra-patch)

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

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

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

  1. Настройте использование бинарного протокола для Memcached (требует поддержки со стороны установленной версии):
zmlocalconfig -e memcached_is_binary_protocol=true

  1. Ограничьте доступ к Memcached (порт 11211) только для локального интерфейса (localhost), чтобы предотвратить внешние манипуляции, если Memcached доступен извне:
/opt/zimbra/bin/zmlocalconfig -e memcached_bind_address=127.0.0.1

  1. Перезапустите Memcached:
su - zimbra -c "zmmemcachedctl restart"

  1. Настройте межсетевой экран (Firewall), чтобы разрешить входящие соединения на порт 11211 только от доверенных узлов внутри инфраструктуры Zimbra (если используется мультисерверная установка).