В MongoDB выявили уязвимость высокой критичности CVE-2025-14847 с оценкой 8.7 по CVSS. Суть неприятная: неаутентифицированный клиент (то есть без логина/пароля) потенциально может заставить сервер вернуть неинициализированные данные из heap-памяти, по факту, куски того, что лежало в оперативной памяти.
Причина уязвимости классическая, ошибка работы с длинами: когда в заголовке/поле длины написано одно, а реальная длина данных другая, и код обрабатывает это криво. В данном случае речь про несоответствие length-полей в заголовках протокола при сжатии Zlib: из-за такого рассинхрона сервер может прочитать и отдать клиенту неинициализированную heap-память.
Уязвимость затрагивает довольно широкий пласт веток MongoDB:
- MongoDB 8.2.0–8.2.3
- MongoDB 8.0.0–8.0.16
- MongoDB 7.0.0–7.0.26
- MongoDB 6.0.0–6.0.26
- MongoDB 5.0.0–5.0.31
- MongoDB 4.4.0–4.4.29
- а также все версии MongoDB Server веток 4.2, 4.0 и 3.6 (полностью)
Исправления уже выпущены. Проблема закрыта в версиях: MongoDB 8.2.3, 8.0.17, 7.0.28, 6.0.27, 5.0.32 и 4.4.30.
MongoDB прямо отмечает, что клиентская эксплуатация zlib-реализации на сервере может вернуть неинициализированную heap-память без прохождения аутентификации, поэтому рекомендация простая и честная: обновиться как можно быстрее.
И да, неинициализированная память это не абстракция. Как объясняет OP Innovate, в таких утечках иногда всплывают чувствительные данные, которые временно были в оперативке: внутренние состояния, указатели, куски структур, обрывки информации, которые могут помочь злоумышленнику в дальнейших шагах.
Если апдейт мгновенно невозможен, временная мера, отключить zlib-сжатие на стороне сервера MongoDB. Для этого при запуске mongod или mongos нужно явно настроить параметры networkMessageCompressors или net.compression.compressors так, чтобы zlib там не было.
MongoDB поддерживает и другие компрессоры: snappy и zstd. То есть совсем без сжатия уходить не обязательно: можно просто убрать именно zlib и остаться на альтернативе.
Есть новость? Станьте автором.
Мы сотрудничаем с независимыми исследователями и специалистами по кибербезопасности. Отправьте нам новость или предложите статью на рассмотрение редакции.
Читайте также
Как построить секретное хранилище
Фишинг под заказчика ударил по заводам
DEBULL атакует Microsoft 365 без кражи паролей: фишинг ведёт пользователя на настоящий вход Microsoft и забирает токены доступа