CVE-2023-37580
Synacor Zimbra Collaboration Suite (ZCS)
2023-07-27
Synacor Zimbra Collaboration Suite (ZCS) contains a cross-site scripting vulnerability impacting the confidentiality and integrity of data.
Технический анализ и план устранения
Суть уязвимости
CVE-2023-37580 представляет собой уязвимость типа Reflected Cross-Site Scripting (XSS) в компоненте Classic Web Client системы Zimbra Collaboration Suite (ZCS). Проблема возникает из-за недостаточной фильтрации входных данных в параметрах URL.
Злоумышленник может сформировать вредоносную ссылку, содержащую JavaScript-сценарий. При переходе авторизованного пользователя по такой ссылке скрипт выполняется в контексте его сессии. Это позволяет атакующему: * Похитить сессионные куки (Session Cookies). * Получить доступ к конфиденциальным данным почтового ящика. * Выполнять действия от имени жертвы (отправка писем, изменение настроек).
Уязвимость затрагивает версии ZCS 8.8.15, 9.0.0 и 10.0.0.
Как исправить
Основным способом устранения уязвимости является установка актуальных патчей, выпущенных производителем. Перед обновлением рекомендуется создать резервную копию системы или снимок (snapshot) виртуальной машины.
Для установки обновлений выполните следующие команды от имени суперпользователя (root):
- Обновите список пакетов:
apt update
- Установите обновления для компонентов Zimbra:
apt install zimbra-patch
- Переключитесь на пользователя zimbra и перезапустите сервисы:
su - zimbra -c "zmcontrol restart"
Примечание: Для систем на базе RHEL/CentOS используйте yum check-update и yum install zimbra-patch соответственно.
Актуальные версии с исправлением: * ZCS 10.0.2 * ZCS 9.0.0 Patch 34 * ZCS 8.8.15 Patch 41
Временные меры
Если немедленное обновление системы невозможно, необходимо применить ручное исправление для блокировки вектора атаки на уровне конфигурации сервера.
- Создайте резервную копию файла
mimetypes.xml:
cp /opt/zimbra/conf/mimetypes.xml /opt/zimbra/conf/mimetypes.xml.bak
-
Отредактируйте файл
/opt/zimbra/conf/mimetypes.xml, найдя строку с расширениемjs. Убедитесь, что для JavaScript-файлов не разрешено исполнение в небезопасном контексте, или временно ограничьте обработку специфических параметров через правила фильтрации на уровне Reverse Proxy (например, Nginx), если он используется перед Zimbra. -
В случае активной эксплуатации рекомендуется принудительно завершить все активные сессии пользователей:
su - zimbra -c "zmpython -m zimbra.common.auth.session_manager --clear_all"
- Рекомендуется использовать современный интерфейс (Modern Web Client) вместо Classic UI, так как основная часть XSS-уязвимостей последнего времени затрагивает именно старый интерфейс.