Mattermost Server исчерпывает память крупными запросами и обращается к внутренним адресам через OAuth

mattermost

Mattermost раскрыл три уязвимости в серверной части своего мессенджера 22 сентября 2026 года. Одна позволяет вывести сервер из строя объёмным запросом, две другие дают нагрузить базу данных и заглянуть во внутреннюю сеть компании через настройки единого входа. Оценки по шкале CVSS лежат в диапазоне от 4.3 до 6.5, то есть речь о проблемах средней тяжести. Затронуты четыре ветки продукта сразу. Обновляться придётся и крупным заказчикам, и небольшим командам, которые держат Mattermost на своём сервере.

Детали уязвимостей

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

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

Вторая уязвимость получила оценку 4.3. Проблема в ветке API, которая собирает реакции к списку сообщений. Массив идентификаторов принимается без ограничения длины. Каждый элемент массива требует отдельного обращения к базе данных. Один запрос с сотнями тысяч идентификаторов перегружает базу, и мессенджер замедляется для всех. Права администратора для такой отправки не нужны, достаточно обычной учётной записи.

Третья проблема, CVE-2026-96259 с оценкой 5.5, относится к классу подделки запросов на стороне сервера. Так называют случай, когда сервер обращается к чужим адресам от своего имени. Ответ он возвращает тому, кто его об этом попросил. В Mattermost фильтр, отсекающий подключения к внутренним адресам, не применяется к настройкам OAuth. Это протокол единого входа, через который сотрудники авторизуются корпоративной учётной записью. Администратор системы прописывает внутренний адрес в настройках и читает ответ через точки получения токена и сведений о пользователе.

Формально речь о привилегированном пользователе. По этой причине часть специалистов отнесёт случай к малозначимым. Довод спорный. Администратор мессенджера далеко не всегда обладает правами в других корпоративных системах. Уязвимость позволяет обойти такое разделение. В ответах могут прийти сведения из панелей управления инфраструктурой, внутренних реестров и служебных интерфейсов, доступных только из закрытого сегмента сети.

Затронуты сборки 11.7.x младше 11.7.11, 11.8.x младше 11.8.6, 11.9.x младше 11.9.2 и 11.10.x младше 11.10.2. Ветку 11.11.0 перечисленные уязвимости не касаются. Сведений о применении этих уязвимостей в реальных атаках нет. Все три требуют учётной записи на сервере, а одна ещё и прав администратора. Порог входа падает там, где открыта свободная регистрация. Так же обстоят дела в компаниях, чьи учётные данные сотрудников попадали в утечки раньше, и там, где к серверу подключены подрядчики.

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

Исправления вышли 22 сентября, закрытые сборки - 11.7.11, 11.8.6, 11.9.2 и 11.10.2. Установить их лучше через штатный механизм обновления. Если перенести работы сразу нельзя, положение смягчает ограничение размера запросов на обратном прокси. Полезно также сократить число учётных записей с правами администратора системы и наладить контроль нагрузки на базу данных. Отдельного внимания заслуживают исходящие соединения с сервера Mattermost: они помогают заметить попытку воспользоваться подделкой запросов.

Над находками работали сторонние исследователи: n1nj4sec, alimursaliyev и Hassan Mohammed. О проблемах они сообщили по программе ответственного раскрытия, поэтому до публикации бюллетеней детали не разглашались.

Бюллетень затрагивает не логику мессенджера, а границы входных данных. Ограничения на длину массива, размер тела запроса и список разрешённых адресов для исходящих подключений легко упустить при добавлении новых маршрутов API. Такие пропуски дешевле закрывать вместе с обновлением. Разбираться с последствиями перегруженной базы и остановленного канала оповещений выходит дороже.

Ссылки

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