Ошибка связана с механизмом сжатия сетевых данных и в наихудшем случае может позволить выполнить произвольные команды или получить доступ к защищённой информации. Создатели программного обеспечения уже выпустили исправления.
Команда разработчиков широко используемой системы управления базами данных MongoDB сообщила о критической уязвимости в своих продуктах, которая способна привести к исполнению произвольного кода на стороне сервера.
Дефект, зарегистрированный как CVE-2025-14847, затрагивает ряд версий MongoDB и MongoDB Server. Потенциальные атакующие могут воспользоваться им с минимальными сложностями, без необходимости авторизации и какого-либо вмешательства со стороны пользователя.
Причиной CVE-2025-14847 является некорректная обработка параметра, определяющего длину входных данных.
«Если злоумышленник получает возможность изменять параметр длины входных данных так, что он перестаёт соответствовать их реальному размеру, это может спровоцировать непредсказуемое, в том числе вредоносное, поведение целевого приложения. Одна из возможных целей — передача приложению произвольно больших объёмов входной информации. Другая возможная цель — попытка изменить состояние приложения путём внедрения недопустимых данных для последующих его процедур. Подобные уязвимости обычно создают почву для атак, связанных с переполнением буфера и выполнением произвольного кода», — поясняется в описании проблемы.
Уязвимость затрагивает MongoDB следующих версий: 8.2.0 - 8.2.3, 8.0.0 - 8.0.16, 7.0.0 - 7.0.26, 6.0.0 - 6.0.26, 5.0.0 - 5.0.31 и 4.4.0 - 4.4.29.
Также затронуты все подверсии MongoDB Server v3.6, 4.0 и 4.2.
Обновление до версий 8.0.17, 7.0.28, 6.0.27, 5.0.32 и 4.4.30 соответственно устраняет данную проблему. Однако остаётся неясной ситуация с версией 8.2.3: в официальном сообщении MongoDB она указана и как уязвимая, и как содержащая исправление.
В бюллетене также отмечено, что эксплуатация дефекта, непосредственно присутствующего в алгоритме сжатия zlib в MongoDB Server, на клиентской стороне «может привести к возврату неинициализированной памяти кучи без аутентификации на сервере».
Отключение сжатия zlib в серверных версиях MongoDB — один из рекомендуемых временных способов устранения риска, который следует применять, если установка обновлений по какой-либо причине невозможна.
«В MongoDB протокол сжатия zlib способен сократить объём сетевого обмена между клиентом и сервером, — поясняет Дмитрий Пешков, специалист по кибербезопасности из компании SEQ. — Однако в облачных развёртываниях этот протокол часто оказывается общедоступным, что позволяет злоумышленникам воспользоваться данной «ошибкой» в сетевом протоколе и спровоцировать серьёзные негативные последствия. Уязвимость позволяет не только запускать произвольный код, но и извлекать конфиденциальные данные, такие как фрагменты запросов и информацию о внутренней работе сервера».
Как сообщает BleepingComputer, MongoDB — это широко распространённая нереляционная система управления базами данных, которая, в отличие от PostgreSQL или MySQL, хранит информацию в документах BSON (Binary JSON), а не в табличном формате.
Данная СУБД насчитывает свыше 62 500 пользователей по всему миру, в том числе десятки корпораций из рейтинга Fortune 500.