Яндекс.Метрика
Услуги Портфолио Контакты БлогНовости +7 (800) 511‑32‑27 Обсудить проект
Безопасность

Уязвимость SSRF в MLflow активно эксплуатируется: злоумышленники крадут облачные учётные данные

19 августа 2026·7 мин чтения
MLflowCVE-2026-64849
Уязвимость SSRF в MLflow эксплуатируется: злоумышленники крадут облачные учётные данные

Коротко о главном

17 августа 2026 года злоумышленники начали массовую эксплуатацию CVE-2026-64849 — критической SSRF-уязвимости в MLflow с оценкой CVSS 9.3. Без какой-либо аутентификации атакующий отправляет запрос к тестовому webhook-эндпоинту и вынуждает сервер MLflow обратиться к облачным metadata-сервисам — так похищаются ключи доступа AWS, GCP и Azure. Уязвимы все версии платформы ниже 3.15.0. Сканирование открытых экземпляров MLflow началось в течение нескольких часов после присвоения CVE-идентификатора.

Если ваша команда использует разработку AI/ML-систем или эксплуатирует собственный инстанс MLflow для управления экспериментами и моделями, приоритет номер один — немедленное обновление до версии 3.15.0 и аудит облачных журналов на предмет компрометации.

Техническая суть уязвимости

CVE-2026-64849 — это уязвимость типа Server-Side Request Forgery (SSRF) в механизме тестирования webhook-интеграций MLflow. Корень проблемы — в эндпоинте POST /api/2.0/mlflow/webhooks/{id}/test, который доступен без авторизации и перед отправкой тестового запроса выполняет HTTP-перенаправление.

Логика ошибки следующая: злоумышленник создаёт webhook с вредоносным URL, вызывает тестовый эндпоинт и эксплуатирует то, как MLflow обрабатывает HTTP-редиректы — платформа послушно следует по цепочке и доходит до конечного адреса, который атакующий выбрал заранее. Именно через такое перенаправление достигаются внутренние ресурсы облачной инфраструктуры, в первую очередь endpoints метаданных виртуальных машин.

Примечательно, что уязвимость обходит ранее выпущенные исправления, направленные против SSRF-атак в MLflow. Это третий случай, когда защита webhook-слоя оказалась обойдена, что указывает на системную проблему в подходе к валидации внешних URL в платформе.

Что именно похищают злоумышленники

Главная цель атаки — облачные metadata-сервисы, предоставляющие временные учётные данные виртуальным машинам и контейнерам:

AWS. Эндпоинт Instance Metadata Service (IMDS) по адресу 169.254.169.254 отдаёт временные ключи IAM-роли, привязанной к экземпляру EC2 или контейнеру ECS/EKS. Если MLflow запущен с широкими разрешениями — например, правами на чтение S3-бакетов с артефактами моделей или секретами в AWS Secrets Manager — злоумышленник получает эти права немедленно.

GCP. Metadata Server по адресу metadata.google.internal возвращает OAuth-токен сервисного аккаунта, от имени которого работает инстанс. В типичных ML-пайплайнах такой аккаунт имеет доступ к Cloud Storage, Vertex AI, BigQuery и другим сервисам.

Azure. Azure IMDS (169.254.169.254/metadata) предоставляет токены управляемого удостоверения. Те MLflow-инсталляции, которые работают в AKS или на Azure VM с назначенной Managed Identity, уязвимы в полном объёме.

Помимо токенов виртуальных машин, через SSRF доступны внутренние HTTP-сервисы в той же сети: другие компоненты ML-платформы, Kubernetes API-сервер, внутренние реестры и хранилища секретов.

Скорость атак и масштаб угрозы

По данным исследователей Miggo Security, массовое сканирование на предмет доступных MLflow-инстансов началось в течение нескольких часов после того, как CVE-2026-64849 получил публичный идентификатор 17 августа 2026 года. Злоумышленники не ждали публикации детального технического разбора — достаточно было самого факта присвоения CVE.

MLflow — один из самых распространённых open-source инструментов жизненного цикла моделей. Его используют команды, которые занимаются разработкой и внедрением ML-моделей, для трекинга экспериментов, версионирования артефактов и управления деплоем. Многие организации запускают MLflow на облачных VM или в Kubernetes-кластерах с открытым веб-интерфейсом для удобства доступа команды — именно такие инсталляции стали мишенью.

Особая опасность в том, что MLflow традиционно работает в доверенной внутренней среде и нередко имеет расширенные права для доступа к обучающим данным, облачным хранилищам и реестрам моделей. Компрометация учётных данных MLflow-инстанса на практике означает компрометацию всей ML-инфраструктуры организации.

Что делать прямо сейчас

Последовательность действий для команд, эксплуатирующих MLflow:

1. Обновите MLflow до версии 3.15.0. Это единственное полное исправление. Установка патча — приоритет номер один; все остальные шаги снижают ущерб, но не закрывают вектор атаки.

2. Проверьте журналы на предмет признаков эксплуатации. Ищите POST-запросы к /api/2.0/mlflow/webhooks/ с путём /test, особенно если источник — внешний IP или нестандартный внутренний адрес. Подозрительны также запросы к 169.254.169.254 или metadata.google.internal в логах исходящих соединений сервера MLflow.

3. Ротируйте потенциально скомпрометированные ключи. Если MLflow работал с IAM-ролью AWS, сервисным аккаунтом GCP или Managed Identity Azure — перевыпустите учётные данные вне зависимости от того, нашли ли вы следы атаки. Злоумышленники могли действовать до того, как вы включили подробное логирование.

4. Ограничьте сетевой доступ к MLflow. Веб-интерфейс и API не должны быть доступны напрямую из интернета. Если внешний доступ необходим, используйте VPN или Zero Trust-прокси. Внутри кластера ограничьте исходящие соединения MLflow через сетевые политики: платформа не должна иметь возможность обращаться к произвольным внешним адресам.

5. Включите IMDSv2 на AWS. Обязательное использование IMDSv2 (Instance Metadata Service v2) с требованием токена для всех запросов существенно усложняет SSRF-атаки на AWS IMDS. Для облачных инфраструктур GCP и Azure аналогичные меры защиты metadata-эндпоинтов также доступны и должны быть включены.

6. Минимизируйте права IAM/IAC. MLflow не нужны права администратора или широкий доступ к S3/Cloud Storage. Применяйте принцип минимальных привилегий: роль должна включать только те разрешения, которые реально требуются для текущего этапа пайплайна.

Почему ML-инфраструктура привлекает атакующих

MLflow и аналогичные платформы MLOps находятся на пересечении нескольких факторов риска. Во-первых, они работают с ценными данными: обучающими датасетами, весами моделей, пайплайнами трансформации — которые представляют прямую коммерческую ценность. Во-вторых, для работы им нужны широкие облачные права, которые исторически выдавались щедрее, чем права production-сервисов. В-третьих, ML-инфраструктура нередко живёт в «серой зоне» корпоративной безопасности: за неё отвечают дата-сайентисты, а не DevSecOps-команда.

CVE-2026-64849 — не первая и не последняя SSRF-уязвимость в MLflow. Это третий случай обхода SSRF-защиты за 2026 год, что свидетельствует о структурной проблеме в том, как платформа обрабатывает внешние URL. Командам, самостоятельно размещающим MLflow, стоит заложить регулярный аудит безопасности ML-инфраструктуры в процессы DevSecOps наравне с аудитом production-сервисов.

Часто задаваемые вопросы

Затронуты ли только самостоятельно размещённые инстансы MLflow? В первую очередь — да. Организации, использующие MLflow через управляемые сервисы (например, встроенную интеграцию в Databricks), должны уточнить у своего провайдера статус патча. Открытые self-hosted инстансы подвержены наибольшему риску.

Нужна ли эксплойту аутентификация? Нет. CVE-2026-64849 эксплуатируется без аутентификации — атакующему достаточно сетевого доступа к MLflow API. Именно поэтому важно не только установить патч, но и ограничить сетевой доступ к платформе.

Что считать подтверждением компрометации? Наиболее надёжный индикатор — исходящие HTTP-запросы с сервера MLflow к адресам 169.254.169.254, metadata.google.internal, 169.254.169.254/metadata (Azure IMDS). Также проверьте активность IAM-роли или сервисного аккаунта в CloudTrail, GCP Audit Logs или Azure Monitor на предмет действий в нетипичное время или из нестандартных регионов.

Версия 3.15.0 полностью закрывает уязвимость? По информации разработчиков MLflow, версия 3.15.0 содержит полное исправление. Поскольку ранее два аналогичных патча были обойдены, рекомендуется сочетать обновление с сетевыми ограничениями и минимизацией прав — в качестве дополнительного уровня защиты.

Что делать, если обновление прямо сейчас невозможно? Временные меры: заблокируйте внешний сетевой доступ к MLflow API, запретите исходящие соединения к metadata-адресам через правила сетевого экранирования, включите IMDSv2 и создайте alert на POST-запросы к /webhooks/. Эти меры снижают риск, но не устраняют уязвимость.

Источники

The Hacker News — «Attackers Exploit MLflow SSRF Flaw to Steal Cloud Credentials and Secrets», 18 августа 2026 года.

Decipher (Duo Security) — «MLflow Bug Actively Exploited to Steal Credentials», 18 августа 2026 года.

Miggo Security / CVE-2026-64849 — техническое описание уязвимости и вектора атаки.

Материал подготовлен редакцией YuSMP Group по открытым источникам. Нужна экспертиза по теме или разработка под задачу — обсудим проект.

Нужен аудит безопасности ML-инфраструктуры?

CVE-2026-64849 — третья SSRF-уязвимость в MLflow за год. Команда YuSMP проведёт аудит кода и конфигурации ML-платформы, выявит слабые места в IAM-политиках и даст конкретный план устранения.

Заказать аудит