Уязвимости MarkLogic: делегированные права могли открыть путь к администраторскому контролю

12 октября Progress Software сообщила о 31 уязвимости в MarkLogic Server: пять получили критическую оценку. Две из них могли позволить пользователям с ограниченными или делегированными правами управления создать постоянный административный доступ. Исправления выпустили 10 сентября: для ветки 11.x это MarkLogic 11.3.7, для 12.x — MarkLogic 12.1.0. Уязвимы версии до этих выпусков. MarkLogic 11.3 — ветка долгосрочной поддержки (LTS), тогда как MarkLogic 12 Progress называет инновационным выпуском. Исправленной версии 12.0 нет: исправление включено в 12.1.0 вместе с новыми функциями.
Уязвимости MarkLogic: делегированные права могли открыть путь к администраторскому контролю
Изображение носит иллюстративный характер

Обновления 11.3.6 и 12.0.3, выпущенные после августовского раскрытия десяти уязвимостей, от новой серии не защищают: обе версии также затронуты. В записях CVE и примечаниях к обновлению Progress не указано, эксплуатировали ли какую-либо из 31 уязвимости. По состоянию на 13 октября ни одной из них не было в каталоге известных эксплуатируемых уязвимостей CISA. Обходных мер для тех, кто пока не может обновиться, компания тоже не приводит.
Три критические уязвимости получили 9,9 балла CVSS, две — 9,6. Во всех случаях атакующему, согласно записям Progress, уже нужны определённые привилегии или возможность запускать код на сервере. CVE-2026-85947 позволяет обладателю прав управления лесом MarkLogic создать постоянную учётную запись администратора и потенциально получить полный контроль над сервером. Лес (forest) — это набор документов, привязанный к базе данных. Исправление уточняет, что одной административной привилегии на уровне леса теперь недостаточно, чтобы прикрепить его к выбранной пользователем базе. До обновления Progress советует проверить делегированные права на леса и базы, а также роли с привилегией xdmp-eval-in.
CVE-2026-85948 оценена в 9,9: пользователь с правами управления учётными записями мог получить постоянный административный контроль через внедрение XQuery в устаревшем пути Management API. CVE-2026-85955 с той же оценкой позволяет запускать серверный код с повышенными правами, если атакующий может выполнять запросы и имеет xdmp-eval-in. У CVE-2026-85956 оценка 9,6; делегированный администратор базы мог создавать резервные копии или восстанавливать леса за пределами своей базы, получая доступ к «критически важным для безопасности данным» или изменяя их. Ещё одна уязвимость с оценкой 9,6, CVE-2026-9191, затрагивает отдельные пути выполнения кода через REST и XDBC: возможны несанкционированные действия или компрометация аутентифицированной сессии. Исследователь rexnets сообщил о CVE-2026-85947, CVE-2026-85948 и CVE-2026-85956 через Bugcrowd; WaltWhitehat получил указание в качестве исследователя CVE-2026-9191.
Из оставшихся 26 уязвимостей 24 получили высокую оценку, две — среднюю. Самая серьёзная в этой группе, CVE-2026-85954, набрала 8,6 балла: передавая значения некоторым функциям XQuery, атакующий мог получить привилегии сверх выданных. Progress предупреждает, что после исправления пользователи могут лишиться ранее доступных им прав, поскольку те предоставлялись ошибочно. Для SAML-систем CVE-2026-85962 позволяла удалённому злоумышленнику без аутентификации добиться принятия недействительного утверждения; в MarkLogic 11.x CVE-2026-85957 затрагивала обработку внешних DTD и сущностей. CVE-2026-85958 позволяла использовать OAuth-токен, который сервер должен был отклонить: исправление добавляет проверки издателя и аудитории для Ping Identity и других OAuth-конфигураций. В некоторых конфигурациях парольного Kerberos атакующий с доступом к сетевому трафику мог выдать себя за службу аутентификации — CVE-2026-85972.
Для облачных установок указаны отдельные риски. Аутентифицированный атакующий мог обращаться к внутренним облачным сервисам и получать облачные учётные данные в Azure (CVE-2026-85951) и в облачных развёртываниях на Linux (CVE-2026-85952). При определённых настройках конфиденциальные сведения попадали в диагностические журналы: CVE-2026-85949, а в Azure также CVE-2026-85961. Если был включён затронутый путь трассировки IAM, журналы могли содержать открытые секретные ключи AWS и токены сессий. CVE-2026-85975 приводила к тому, что соединения с Amazon S3 по умолчанию могли использовать незашифрованный канал. Через Query Console удалённый атакующий мог заставить вошедшего пользователя открыть вредоносную страницу и выполнять серверный код с его правами (CVE-2026-85960); аутентифицированный пользователь Query Console мог читать произвольные файлы сервера (CVE-2026-85964). Устаревший OpsDirector позволял без аутентификации отправлять запросы внутренним сервисам или подделывать доверенные запросы (CVE-2026-85963), а модули InfoStudio могли раскрывать файлы сервера (CVE-2026-85953). Среди остальных проблем — три ошибки безопасности памяти, межсайтовый скриптинг, разделение HTTP-ответов в Query Console, непоследовательная проверка имён узлов TLS в некоторых исходящих соединениях и незашифрованный трафик управления кластером в ветке 12.x.
Выпуски затрагивают и привычную работу с инструментами. В примечаниях к MarkLogic 11.3.7 описаны изменения, связанные с 22 уязвимостями, к 12.1.0 — с 21; для обоих выпусков Progress опубликовала сведения о несовместимостях. Старые версии MarkLogic Content Pump (mlcp) перестают работать с новыми версиями и выдают ошибку XDMP-ISOLATED. Рекомендуются mlcp 11.3.7 и 12.1.0; старые сборки можно запускать с параметром -restrict_hosts, установленным в true, но это может снизить производительность. Удаляются API /manage/v2/packages, InfoStudio и OpsDirector. Обработка внешних XML-сущностей теперь выключена по умолчанию, соединения S3 по умолчанию переходят на HTTPS, а новые и пересозданные файлы ErrorLog.txt и AuditLog.txt получают права 0640 вместо 0666. Уже существующие журналы сохраняют прежние права, пока их не пересоздадут или не ротируют.
Меняются и проверки доступа. Для xdmp:eval-in() теперь нужны обе привилегии — xdmp-eval-in и xdmp-eval. Чтение заголовков Authorization требует новой привилегии, которой нет ни у одной встроенной роли. При прикреплении леса, резервном копировании и восстановлении проверяются все затрагиваемые леса и базы. Ответы конфигурации FlexRep больше не возвращают сохранённые пароли, закрытые клиентские ключи и парольные фразы. MarkLogic 11.3.7 не поддерживает Amazon Linux 2. Обновление может завершиться ошибкой, если в кластере уже есть роль, пользователь или привилегия с одним из пяти имён, занятых новой системой тикетов; эти имена перечислены в примечаниях. В обеих версиях ограничено раскрытие XML-сущностей и удалены слабые шифры TLS из набора по умолчанию. В 12.1.0 запросы фрагментов Optic по умолчанию возвращают только фрагменты документов.
Есть и дополнительные условия, которые легко пропустить при планировании обновления. Исправление Kerberos требует keytab: без него сервер записывает предупреждение и пропускает новую проверку. Из-за CVE-2026-85959 успешные входы не всегда попадали в журнал аудита; Progress предупреждает, что это могло мешать выявлять и расследовать несанкционированный доступ или использование чужих учётных данных. В документации компании не сказано, удалит ли обновление административную учётную запись, созданную до него через CVE-2026-85947. Значит, после установки исправления следует отдельно проверить учётные записи и журналы, а также сверить роли и делегированные разрешения с примечаниями к конкретной версии.
Это уже вторая серия раскрытий MarkLogic от Progress за 68 дней. 5 августа компания сообщила о десяти уязвимостях, семь из которых были критическими. CVE-2026-9192 получила 9,8 балла: согласно записи CVE, удалённый атакующий без аутентификации мог обойти проверку пароля на ODBC App Server. В обоих случаях исправления вышли до публикации сведений об уязвимостях. Августовские патчи вошли в выпуски от 1 и 6 июля — за 35 и 30 дней до появления записей CVE; для нынешней серии разрыв составил 32 дня.
Поиск The Hacker News в Национальной базе данных уязвимостей США (NVD), проведённый 13 октября, обнаружил 49 записей CVE с упоминанием MarkLogic. Сорок одна относится к двум сериям 2026 года. Остальные восемь, опубликованные в 2017 и 2018 годах, касаются стороннего компонента Antenna House DMC HTMLFilter, использовавшегося в MarkLogic 8.0-6. В примечаниях к MarkLogic 11.3.1, 11.3.2 и 11.3.4 также упомянуты «исправления уязвимостей безопасности», но CVE для кода самого сервера MarkLogic там не названы.


Новое на сайте

20854Как дешёвые Android-смартфоны превращаются в чужие прокси? 20853В Индии имя звонящего появится на экране вместе с номером 20852Как проверить готовность команды к звонку с клонированным голосом? 20851Уязвимости MarkLogic: делегированные права могли открыть путь к администраторскому... 20850Как GitHub закрыл лазейку, угрожавшую тысячам npm-пакетов? 20849Hirudo подменяет банковские приложения, чтобы обойти их защиту 20848Как Vghost превратил старую ошибку Linux в путь к root? 20847Уязвимости в PAN-OS и Cisco Secure Email Gateway уже используют атакующие 20846Как уязвимость GitLab могла открыть сервер для чужого кода? 20845Уязвимость SAP Cloud SDK могла отправить OAuth2-секреты злоумышленнику 20844Уязвимость в Nextcloud открыла путь к веб-оболочкам на серверах 20843Смогут ли малые ИИ-модели превратить бытовую технику в ботнет? 20842Пять уязвимостей NGINX: кому грозит риск и как закрыть его 20841Тайный диктофон в OpenAI: что утверждают следователи 20840Как проверять уязвимость входа, не заходя дальше дозволенного?
Ссылка