Уязвимости в Keycloak открывают путь к административному доступу и обходу политик

Keycloak

Множественные уязвимости, обнаруженные в системе управления доступом Keycloak, позволяют атакующему повышать привилегии, обходить политики безопасности, нарушать конфиденциальность данных и вызывать отказ в обслуживании. Бюллетени безопасности, опубликованные 6 августа 2026 года, сообщают о проблемах в версиях, предшествующих 26.4.14, 26.6.5 и 26.7.1. Разработчики уже выпустили исправления в составе этих версий.

Детали уязвимостей

Keycloak представляет собой программное обеспечение для управления идентификацией и доступом (IAM) с поддержкой единого входа. Его используют для аутентификации пользователей во внутренних и внешних приложениях, поэтому компрометация такой системы может привести к утечке данных и перехвату учётных записей. Основная масса выявленных проблем сосредоточена в компоненте keycloak-services, который обрабатывает запросы к серверу и управляет политиками доступа.

Одна из уязвимостей высокой степени опасности, CVE-2026-15573, связана с сопоставлением путей запросов с политиками авторизации. Из-за ошибки нормализации URL атакующий может добавить к адресу лишние символы, например косую черту в конце или специальные параметры в строке запроса. В результате система применяет менее строгую политику, чем предполагалось, и обычный аутентифицированный пользователь получает доступ к административным разделам. Такая проблема опасна тем, что для её эксплуатации не требуется взаимодействие с жертвой, достаточно обладать учётной записью с минимальными правами.

Две другие уязвимости высокой степени опасности затрагивают механизм динамической регистрации клиентов (DCR), который позволяет приложениям самостоятельно регистрироваться в системе. Первая из них, идентификатор CVE-2026-16102, возникает из-за некорректной проверки путей к атрибутам пользователя. Злоумышленник, имеющий стандартную учётную запись и ограниченный токен первоначального доступа, может записать данные в чувствительные внутренние поля токена. Это позволяет подделать административные роли в выданном токене, захватить другие клиенты и получить полный контроль над областью Keycloak. Вторая проблема, CVE-2026-15572, связана с проверкой типов протокольных мапперов. При обновлении клиента система не перепроверяет тип маппера, если его конфигурация не изменилась. Атакующий может сначала зарегистрировать разрешённый тип с вредоносной конфигурацией, а затем подменить его на маппер, который принудительно добавляет административные роли. Итог аналогичный - полный административный доступ к области Keycloak.

Помимо проблем с авторизацией, серьёзные уязвимости обнаружены в SAML-составляющей системы. Протокол SAML используется для обмена данными аутентификации между поставщиком удостоверений и сервис-провайдером. Уязвимость CVE-2026-16443 высокой степени опасности появляется при импорте метаданных поставщика удостоверений. Если в импортированных ключах не указано их назначение, система отключает проверку подписи SAML-ответов даже при наличии сертификата. Неаутентифицированный атакующий, знающий внешний идентификатор пользователя, может подделать ответ и войти в чужой аккаунт. Для эксплуатации требуется сложная атака, однако потенциальный ущерб велик, поскольку нарушаются конфиденциальность и целостность данных.

Ещё одна уязвимость высокой степени опасности, CVE-2026-16442, обходит ограничение входа через ссылку для инициированных поставщиком удостоверений входов. В нормальной ситуации Keycloak позволяет связывать учётные записи пользователей только после явного подтверждения. Из-за ошибки в обработке некоторые сценарии позволяют обойти это ограничение. В результате атакующий может использовать связку учётных записей без дополнительной проверки, что создаёт риск несанкционированного доступа.

Умеренная уязвимость CVE-2026-16071 затрагивает LDAP-хранилище пользователей. LDAP применяется для интеграции с внешними каталогами, например корпоративными справочниками. Из-за отсутствия проверки границ поиска делегированный администратор может выполнить запрос по точному DN (различающему имени) записи, находящейся за пределами настроенной области. Это приводит к раскрытию данных учётных записей из других частей каталога. Кроме того, система может нежелательно импортировать таких пользователей в локальное хранилище, расширяя поверхность атаки.

Отдельная проблема умеренной степени опасности, CVE-2026-16100, способна вызвать отказ в обслуживании. При включённых метриках Keycloak записывает текст ошибок как метки в системе мониторинга Prometheus. Поскольку текст может содержать пользовательские данные, например несуществующие идентификаторы клиентов, создание огромного числа уникальных метрик истощает память и приводит к падению сервиса. Аутентифицированный пользователь с сетевым доступом может инициировать такую нагрузку удалённо, без сложных технических средств.

Все перечисленные уязвимости затрагивают системы, работающие на версиях до 26.4.14, 26.6.5 и 26.7.1. Для одной из проблем в бюллетене указана уязвимая версия до 26.7.0, но патч 26.7.1 закрывает её полностью. Разработчики опубликовали обновления в виде новых релизов, доступных для загрузки. Пользователям Keycloak рекомендуется обновить установленные версии до актуальных в кратчайшие сроки, поскольку некоторые из проблем уже имеют публично описанные методы эксплуатации. Также стоит проверить конфигурации после обновления, особенно если используются SAML-федерация, LDAP-хранилище или механизмы динамической регистрации клиентов.

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

Ссылки

Комментарии: 0