Критическая уязвимость безопасности Grafana Enterprise CVE-2025-41115

уязвимость Grafana

Критическая уязвимость безопасности Grafana Enterprise CVE-2025-41115

Grafana Labs раскрыла критическую уязвимость в Grafana Enterprise, которая потенциально позволяет злоумышленникам повышать привилегии и выдавать себя за других пользователей. Дефект, отслеживаемый как CVE-2025-41115, получил максимальную оценку CVSS 10.0, что делает его одной из самых серьёзных известных уязвимостей в этой области.

Такой рейтинг помещает проблему в категорию наивысшего риска: это класс уязвимостей, которые могут приводить к полной компрометации системы при минимальных усилиях со стороны атакующего. Организации, использующие Grafana Enterprise для мониторинга критической инфраструктуры, операционной аналитики, финансовых дашбордов и безопасности, сталкиваются с немедленным и серьёзным риском, требующим безотлагательного устранения.

Уязвимость возникает в функции SCIM-провизионинга (System for Cross-domain Identity Management), которая была добавлена в апреле 2025 года для автоматизации управления жизненным циклом пользователей. Проблема затрагивает версии Grafana Enterprise с 12.0.0 по 12.2.1, если SCIM включён и корректно настроен.

Критический аспект: из-за ошибки в обработке сопоставления пользовательских идентификаторов злоумышленник, имеющий доступ к SCIM-клиенту (или скомпрометировавший его), может создавать пользователей с числовыми externalId, которые пересекаются с внутренними идентификаторами уже существующих пользователей. В результате можно получить доступ к уже существующим привилегированным аккаунтам, включая администраторов.

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


Понимание Grafana Enterprise и роли SCIM-провизионинга

Что такое Grafana Enterprise и почему её безопасность критична?

Grafana — одна из ведущих платформ для аналитики и интерактивной визуализации, которой доверяют организации по всему миру для мониторинга распределённых систем. Grafana Enterprise расширяет функциональность open source-версии и добавляет:

  • Расширенную аутентификацию и авторизацию (SSO, LDAP, расширенный RBAC);
  • Коннекторы к корпоративным источникам данных и облачным сервисам;
  • Аудит, логирование и функции соответствия требованиям регуляторов;
  • Коммерческую поддержку и SLA;
  • Дополнительные функции безопасности, включая SCIM-провизионинг, в котором и обнаружена уязвимость.

Grafana Enterprise используется в критически важных сценариях:

DevOps и SRE

  • Мониторинг инфраструктуры и приложений в реальном времени;
  • Дашборды здоровья сервисов и оповещения;
  • Планирование мощности и оптимизация ресурсов;
  • Поддержка расследований инцидентов и пост-анализ.

SOC и кибербезопасность

  • Визуализация событий безопасности (SIEM);
  • Корреляция угроз и работа с threat intelligence;
  • Контроль соблюдения политик и регуляторных требований;
  • Отслеживание KPI по безопасности.

Бизнес-аналитика

  • Финансовые и управленческие дашборды;
  • Аналитика поведения клиентов;
  • Мониторинг цепочки поставок и логистики;
  • Дашборды для топ-менеджмента.

IoT и промышленные системы

  • Мониторинг оборудования и производственных линий;
  • Энерго-менеджмент и учёт ресурсов;
  • Умные здания и автоматизация;
  • Предиктивное обслуживание.

Именно потому, что Grafana даёт централизованный обзор всей инфраструктуры, её компрометация особенно опасна: злоумышленник получает панорамный вид на вашу IT-среду и может использовать её как плацдарм для дальнейших атак.


Технический разбор: уязвимость в реализации SCIM

Уязвимость связана с некорректной обработкой идентификаторов пользователей в реализации SCIM. Согласно описанию Grafana Labs, злоумышленник или скомпрометированный SCIM-клиент может создать пользователя с числовым externalId, который будет интерпретирован как внутренний идентификатор пользователя (UID).

Что такое SCIM и зачем он нужен?

SCIM (System for Cross-domain Identity Management) — открытый стандарт для упрощения управления идентичностью пользователей между разными приложениями и сервисами. Он используется для:

  • автоматизации создания и удаления пользователей;
  • централизованного управления доступом;
  • синхронизации атрибутов и групп;
  • интеграции с IdP (Identity Provider), такими как Okta, Azure AD и др.

Поддержка SCIM в Grafana была добавлена в апреле 2025 года, чтобы:

  • автоматически создавать и блокировать пользователей;
  • управлять ролями и группами централизованно;
  • синхронизировать статус пользователей с IdP.

Интеграция рассчитана на работу с такими поставщиками идентичности, как:

  • Okta,
  • Microsoft Azure Active Directory,
  • Google Workspace,
  • OneLogin,
  • JumpCloud,
  • Auth0 и др.

Где именно ошибка?

При определённых настройках конфигурации Grafana начинает напрямую сопоставлять внешние SCIM-идентификаторы (externalId) с внутренними ID пользователей. Если злоумышленник создаёт пользователя с числовым externalId, совпадающим с внутренним ID существующего админа, платформа может:

  • считать эту запись соответствующей уже существующему пользователю;
  • присвоить новой записи права и контекст уже существующего пользователя;
  • фактически разрешить имитацию учётной записи администратора.

Схема эксплуатации

  1. Компрометация IdP или SCIM-клиента
    Злоумышленник получает доступ к учётным данным SCIM-клиента (через фишинг, утечку API-ключей, ошибки конфигурации и т.п.).
  2. Создание пользователя с нужным externalId
    Через SCIM-API отправляется запрос на создание пользователя с внешним идентификатором вида externalId: "1" или другим числом, совпадающим с внутренним ID администратора.
  3. Коллизия с внутренним UID
    Из-за ошибки реализации внешнее числовое значение сопоставляется напрямую с внутренним ID.
  4. Эскалация привилегий
    Новый пользователь получает права и идентичность существующего администратора.
  5. Закрепление в системе
    Злоумышленник создаёт бэкдор-аккаунты, настраивает дополнительные API-ключи и меняет конфигурацию для сохранения доступа.

Какие конфигурации уязвимы?

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

[feature_toggles]
enableSCIM = true

[auth.scim]
user_sync_enabled = true

Пользователи Grafana OSS не затронуты. Риск есть именно у тех организаций, где включён SCIM и включена синхронизация пользователей.


CVE-2025-41115: классификация и разбор оценки CVSS

CVSS v3.1 базовый балл: 10.0 (Критическая)

Такая оценка означает комбинацию:

  • простоты эксплуатации,
  • удалённого доступа,
  • минимальных требований по привилегиям,
  • отсутствия необходимости участия пользователя,
  • и максимального ущерба для конфиденциальности, целостности и доступности.

Краткая сводка:

  • Идентификатор: CVE-2025-41115
  • Тип уязвимости: неправильное управление привилегиями / подмена пользователя
  • CVSS: 10.0 (критическая)
  • Затронутые продукты: Grafana Enterprise с включённым SCIM
  • Версии: 12.0.0 – 12.2.1
  • CWE: CWE-269 (Неправильное управление привилегиями)

Разбор вектора CVSS

  • AV:N (Network) — эксплуатация возможна удалённо по сети.
  • AC:L (Low) — низкая сложность атаки, без тонких условий гонки и т.п.
  • PR:L (Low) — достаточно скомпрометированных учётных данных SCIM-клиента; админ-права не нужны.
  • UI:N (None) — пользователь ничего не должен нажимать или подтверждать.
  • S:C (Changed) — компрометация SCIM влияет не только на SCIM-модуль, но и на всю Grafana и подключенные системы.
  • C:H / I:H / A:H — высокий ущерб конфиденциальности, целостности и доступности.

Иначе говоря: уязвимость легко эксплуатируется и даёт атакующему максимальный контроль, поэтому оценка 10.0 полностью оправдана.


Сценарии эксплуатации: как это может выглядеть на практике

Сценарий 1: Внешний атакующий

Фаза 1 — разведка:

  • поиск экземпляров Grafana в интернете (Shodan, Censys);
  • анализ вакансий, документации и презентаций компании (упоминания Grafana Enterprise, SCIM и т.п.);
  • поиск связей с конкретными IdP.

Фаза 2 — компрометация SCIM-клиента:

  • фишинг администраторов IAM/IdP;
  • эксплуатация уязвимостей в Okta / Azure AD / других идентификационных платформах;
  • утечка секретов из репозиториев (Git), хранилищ, конфигов;
  • инсайдеры.

Фаза 3 — эскалация привилегий:

  • отправка SCIM-запроса на создание пользователя с числовым externalId, совпадающим с ID администратора;
  • проверка, что учётная запись получила админ-права;
  • генерация бэкдор-логинов и API-ключей.

Фаза 4 — пост-эксплуатация:

  • выгрузка чувствительных метрик и конфигураций;
  • отключение или модификация оповещений, чтобы скрыть другие атаки;
  • использование подключённых источников данных (БД, хранилища логов и т.д.) для дальнейшего доступа;
  • подготовка долгосрочного присутствия.

Сценарий 2: компрометация поставщика услуг (цепочка поставок)

Если у организации есть управляемый сервис по IAM/SCIM:

  • злоумышленник атакует провайдера, а не саму компанию;
  • получает доступ к SCIM-секретам десятков клиентов сразу;
  • автоматизированно эксплуатирует уязвимость во всех средах;
  • получает доступ к метрикам и инфраструктурным данным множества организаций.

Сценарий 3: инсайдер

Сотрудник с легитимным доступом к SCIM:

  • не нуждается в дополнительной компрометации;
  • может целенаправленно создать себе «скрытую» админ-учётку;
  • эксфильтровать данные, саботировать системы, скрывать изменения в логах.

Бизнес-влияние и риски

Компрометация платформы мониторинга

Grafana агрегирует:

  • технические метрики (нагрузка, задержки, ошибки, состояние БД);
  • сетевые метрики;
  • данные систем безопасности;
  • бизнес-показатели (транзакции, выручка, поведение пользователей).

Получив доступ к Grafana, злоумышленник:

  • видит всю топологию инфраструктуры и слабые места;
  • понимает, какое оборудование и сервисы критичны;
  • может подменять данные мониторинга, оставляя атаки незамеченными;
  • может использовать полученные данные для точечных атак на другие системы.

Регуляторные и юридические риски

GDPR / CCPA / другие законы о защите данных
Если через Grafana доступны или визуализируются персональные данные, утечка мониторинговых систем может считаться утечкой ПДн, со всеми последствиями:

  • обязательство уведомить регулятора и пострадавших;
  • возможные крупные штрафы;
  • судебные иски.

SOX, HIPAA, PCI DSS, NERC CIP и др.
Для регулируемых отраслей (финансы, здравоохранение, энергетика и т.п.):

  • нарушение целостности данных мониторинга и логов подрывает контроль внутреннего аудита;
  • искажённые метрики могут привести к неверной отчётности;
  • это повышает риск санкций, доначислений и запрета на деятельность.

Прямые и косвенные финансовые последствия

Прямые расходы:

  • форензика и реагирование на инцидент;
  • юристы и консультанты по соответствию;
  • восстановление систем и доработки безопасности;
  • коммуникация с клиентами, PR-антикризис.

Косвенные:

  • простой сервисов;
  • снижение доверия клиентов и партнёров;
  • рост стоимости киберстраховки;
  • потеря контрактов и сильное падение репутации.

Обнаружение уязвимых экземпляров и признаков эксплуатации

Как понять, что ваша Grafana уязвима

1. Проверка версии

Через UI:

  • авторизуйтесь в Grafana;
  • на странице входа или в разделе «About»/«О системе» посмотрите версию;
  • если это 12.0.0–12.2.1 и SCIM включён — вы в зоне риска.

Через API:

curl -s https://grafana.example.com/api/frontend/settings | jq '.buildInfo.version'

2. Проверка конфигурации SCIM

В grafana.ini:

[feature_toggles]
enableSCIM = true

[auth.scim]
user_sync_enabled = true

Если обе опции true, SCIM-провизионинг активен.

3. Анализ трафика SCIM

Мониторинг:

  • запросов к /api/scim/v2/Users;
  • заголовков авторизации SCIM-клиента;
  • подозрительных externalId (простые числа, 1, 2, 3 и т.п.).

Индикаторы эксплуатации

  1. Подозрительные события провизионинга

В журналах аудита ищите:

  • создание пользователей через SCIM с чисто числовым externalId, особенно маленькие значения (1, 2, 10);
  • массовые события user.provisioned из непривычных IP или регионов;
  • создание пользователя, за которым сразу следуют действия с высокими привилегиями.
  1. Аномальное поведение админ-аккаунтов
  • входы с необычных геолокаций;
  • активности в нерабочее время;
  • массовые изменения дашбордов, источников данных, настроек алёртов;
  • создание новых API-ключей.
  1. Подозрительная активность SCIM-клиента
  • неудачные попытки авторизации с новых IP;
  • внезапное изменение паттернов использования SCIM;
  • несколько клиентов, использующих один и тот же секрет.
  1. Попытки скрыть следы
  • удаление или изменение журналов аудита;
  • «дыры» во временной линии логов;
  • остановка или перезапуск сервисов логирования.

Митигация и устранение: что нужно сделать прямо сейчас

Приоритет 1: немедленное обновление до исправленных версий

Grafana Labs выпустила патчи 19 ноября 2025 года. Исправления включены в:

  • 12.3.0,
  • 12.2.1 + security-01,
  • 12.1.3 + security-01,
  • 12.0.6 + security-01.

Рекомендуется немедленно обновиться до ближайшей доступной исправленной версии.

Общая схема обновления (on-prem)

  1. Сделайте резервные копии:
  • БД Grafana;
  • grafana.ini и других конфигов;
  • экспортируйте критичные дашборды при необходимости.
  1. Ознакомьтесь с release notes.
  2. Протестируйте обновление в тестовой среде.
  3. Запланируйте окно обслуживания.

Пример для Debian/Ubuntu:

sudo systemctl stop grafana-server

sudo -u postgres pg_dump grafana > grafana_backup_$(date +%Y%m%d).sql

sudo apt-get update
sudo apt-get install grafana-enterprise=12.3.0

sudo systemctl start grafana-server

curl -s http://localhost:3000/api/health | jq '.version'

Приоритет 2: временные меры, если патч прямо сейчас невозможен

Вариант 1: отключить SCIM

Во время подготовки к обновлению:

[feature_toggles]
enableSCIM = false

[auth.scim]
user_sync_enabled = false

Перезапустите Grafana. Это отключит автоматическое управление пользователями, но закроет уязвимость.

Вариант 2: ограничить доступ по сети

Разрешить доступ к SCIM только IP-адресам IdP.

Пример nginx:

location /api/scim/ {
    allow 203.0.113.0/24;  # IP-диапазон IdP
    deny  all;
    proxy_pass http://grafana:3000;
}

Вариант 3: укрепить аутентификацию SCIM-клиента

  • сменить секреты/токены SCIM;
  • включить белые списки IP на стороне IdP;
  • использовать mTLS и/или API-шлюз;
  • ограничить права SCIM-клиента (где возможно).

Вариант 4: усилить мониторинг

  • настроить тревоги на события user.provisioned из SCIM;
  • включить детальное логирование;
  • следить за любыми изменениями в конфигурации и правах.

Приоритет 3: форензика и проверка на след эксплуатации

После патча или временного отключения SCIM:

  • проанализируйте историю событий SCIM;
  • найдите пользователей с числовыми externalId;
  • проверьте активности админ-аккаунтов;
  • убедитесь, что не появилось неожиданных привилегированных пользователей;
  • проверьте источники данных и настройки алёртов на предмет несанкционированных изменений.

Лучшие практики безопасности для платформ наблюдаемости

Эшелонированная защита для Grafana

  1. Сегментация сети
  • вынести Grafana в отдельную VLAN;
  • ограничить доступ к ней только нужным подсетям/VPN;
  • минимизировать прямую доступность из интернета;
  • использовать WAF и DDoS-защиту, если есть внешний доступ.
  1. Сильная аутентификация и авторизация
  • обязательный MFA для администраторов;
  • строгое RBAC и принцип наименьших привилегий;
  • регулярный пересмотр прав и отключение неиспользуемых учётных записей;
  • жёсткие тайм-ауты сессий и возможность принудительного завершения сессий.
  1. «Мониторинг мониторинга»
  • все действия пользователей и админов должны логироваться;
  • логи должны отправляться во внешнюю SIEM-систему и быть защищены от модификации;
  • необходимо отслеживать изменения конфигурации, источников данных и алёртов;
  • использовать контроль целостности файлов и конфигов.

Безопасная интеграция SCIM

  • хранить SCIM-секреты в защищённых хранилищах (Vault, Secrets Manager и др.);
  • регулярно ротировать ключи и токены;
  • тестировать все изменения SCIM-интеграции в стенде;
  • мониторить объём и характер операций SCIM;
  • отслеживать «осиротевшие» учётные записи и несоответствия между IdP и Grafana.

Управление уязвимостями и патчами

  • подписаться на security-рассылку Grafana и CVE-оповещения;
  • иметь формальный процесс оценки и приоритизации патчей;
  • регулярно сканировать инфраструктуру на известные уязвимости;
  • трактовать патчи безопасности для наблюдаемости как критический приоритет, а не «инфраструктурный косметический ремонт».

Заключение: скорость реакции и бдительность критичны

CVE-2025-41115 с оценкой CVSS 10.0 — это не «очередная» уязвимость, а серьёзный структурный риск для организаций, полагающихся на Grafana Enterprise как на центр наблюдаемости и управления.

Платформа, которая даёт вам полную видимость инфраструктуры, в случае компрометации даёт такую же видимость и злоумышленнику. Более того, он может:

  • манипулировать вашими оповещениями;
  • искажать метрики;
  • использовать информацию для атак на другие системы.

Ключевые действия для команд безопасности:

  • Немедленно обновить Grafana Enterprise до исправленной версии, если используются затронутые релизы и включён SCIM.
  • Провести проверку журналов SCIM и аудита на предмет подозрительных операций провизионинга.
  • Усилить контроль доступа, сегментацию сети и мониторинг вокруг платформы наблюдаемости.
  • Обеспечить, чтобы процессы управления патчами для Grafana имели высокий приоритет.
  • Настроить мета-наблюдаемость — мониторинг самой Grafana и всей её конфигурации.
  • Обновить и протестировать планы реагирования на инциденты, включая сценарий компрометации платформы мониторинга.

Безопасность систем наблюдаемости — это не второстепенная задача, а элемент критической инфраструктуры. Эта уязвимость наглядно показывает, насколько важно относиться к Grafana и аналогичным платформам как к объектам повышенной значимости и защищать их соответственно.