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.
- Проверьте текущую версию Zimbra:
zmcontrol -v
- Обновите систему до одной из следующих версий (или более новых):
- ZCS 9.0.0 Patch 24.1
-
ZCS 8.8.15 Patch 31.1
-
Процесс установки патча (выполняется от пользователя root):
apt-get update && apt-get install zimbra-patch
(Для систем на базе RHEL/CentOS используйте yum check-update и yum install zimbra-patch)
- Перезапустите службы Zimbra от имени пользователя zimbra:
su - zimbra -c "zmcontrol restart"
Временные меры
Если немедленное обновление невозможно, необходимо ограничить векторы атаки и усилить безопасность сетевого взаимодействия с Memcached.
- Настройте использование бинарного протокола для Memcached (требует поддержки со стороны установленной версии):
zmlocalconfig -e memcached_is_binary_protocol=true
- Ограничьте доступ к Memcached (порт 11211) только для локального интерфейса (localhost), чтобы предотвратить внешние манипуляции, если Memcached доступен извне:
/opt/zimbra/bin/zmlocalconfig -e memcached_bind_address=127.0.0.1
- Перезапустите Memcached:
su - zimbra -c "zmmemcachedctl restart"
- Настройте межсетевой экран (Firewall), чтобы разрешить входящие соединения на порт 11211 только от доверенных узлов внутри инфраструктуры Zimbra (если используется мультисерверная установка).