Roundcube закрывает уязвимости с выполнением кода и подделкой запросов

roundcube

Разработчики Roundcube Webmail выпустили обновления безопасности для веток 1.6 LTS и 1.7. Через веб-клиент можно выполнить произвольный код, подделать запрос от имени пользователя и обойти ограничения политики безопасности. Часть находок связана с фильтрами Sieve и с конвертацией вложений-изображений. Затронуты самостоятельно развёрнутые почтовые системы, где веб-клиент открыт сотрудникам.

Что меняется после обновления

Исправления вышли в версиях 1.6.21 и 1.7.6. Уязвимы более ранние выпуски обеих веток. Полный список правок разработчики приводят в описании релиза на странице загрузки.

Внедрение команд и скриптов

Фильтры Sieve раскладывают входящую почту по папкам на стороне сервера, а веб-клиент позволяет пользователю править эти правила. Уязвимость в обработке оператора правила давала внедрить собственный скрипт. Похожий сценарий работал через модификаторы set и include. Отдельная уязвимость позволяла запустить разрушительные действия managesieve чужим межсайтовым запросом через GET. Чтобы такой запрос ушёл, пользователю с активной сессией достаточно открыть подготовленную страницу.

Подменённый скрипт меняет маршрутизацию почты конкретного ящика: копии писем уходят в другую папку или на сторонний адрес. Заметить это непросто, потому что веб-клиент продолжает работать как обычно. Проверять стоит правила фильтрации у тех сотрудников, чьи ящики чаще всего вызывают вопросы.

Отдельный блок исправлений касается почтовых команд. Перевод строки в параметре идентификатора сообщения при включённом кэше дописывал в сессию IMAP собственную команду. Такая команда выполняется на почтовом сервере, а не в браузере. Обновление закрывает и внедрение запросов через серверную часть проверки орфографии ATD.

Проверки адресов

SSRF, то есть подделка запросов на стороне сервера, заставляет сервер обратиться к внутреннему адресу вместо внешнего. Через веб-клиент так можно дотянуться до служебных сервисов внутренней сети, которые снаружи недоступны. Фильтр в CSS-прокси обходили через домены nip.io и sslip.io. Второй обход шёл через адреса 6to4 - механизма переноса IPv6 поверх IPv4, который фильтр не распознавал как локальный. Функция построения ссылок игнорировала настройку доверенных хостов, из-за этого ограничение на внешние адреса не срабатывало.

Открытый редирект при восстановлении после ошибки IMAP на скачивании вложения уводил пользователя на чужой сайт. Ссылка при этом ведёт с доверенного домена, поэтому её удобно вставлять в письма-приманки.

Доступность и вложения

Отрицательное значение длины в токене сессии отправляло сервер в бесконечный цикл. Одно такое обращение отнимало процессорное время у всех, кто работал с этим процессом. При конвертации изображений содержимое вложения попадало в ImageMagick без проверки.

Проверку CSRF, то есть подделку запросов от имени пользователя, обходили для POST-запросов, состоящих только из файлов, и для команд очистки и удаления почты. Ограничение disabled_actions снималось подстановкой подчёркивания вместо дефиса в имени действия. Заголовок письма подделывали через тему уведомления о прочтении. Заголовок Received теперь собирается только из доверенного имени хоста и адреса пересылающего прокси. Ввод имени хоста IMAP проверяется строже.

Обновлять нужно серверную часть веб-клиента, на станциях сотрудников ничего не меняется. В установках с балансировщиком проверьте все узлы: иначе часть пользователей останется на уязвимой версии.

Авторы находок перечислены в бюллетене безопасности Roundcube security-updates-1.6.21-and-1.7.6 от 09 ноября 2026 года. Большую часть сообщили исследователи Squirt1e, Atum, N0b0dy и Gh0u1L5. Сведений об эксплуатации в реальных атаках в бюллетене нет.

Разработчики просят обновить все рабочие установки. Ветке 1.6 уже четыре года: переносить в неё исправления становится дороже и рискованнее, поэтому 1.6 вскоре снимут с поддержки. Тем, кто ещё на 1.6, стоит заранее планировать переход на 1.7.

Ссылки

Комментарии: 0