Все уязвимости

CVE-2024-45409

Ruby-SAML: обход проверки подписи SAML

CVE-2024-45409 затрагивает приложения, использующие уязвимые версии ruby-saml для SAML-аутентификации. Атакующий с доступом к подписанному IdP-документу может подделать ответ и войти от имени другого пользователя.

Проверено 2 ноября 2026Critical, CVSS 3.1 10.0; CVE описывает неправильную проверку криптографической подписи.

Кому нужно проверить

Командам Ruby-приложений, владельцам SAML/SSO интеграций и администраторам self-managed GitLab с включённой SAML-аутентификацией. Важна не только марка продукта, но и конкретная версия, способ установки, операционная система и конфигурация.

В чём риск

Неаутентифицированный атакующий, имеющий доступ к подписанному IdP-документу, может подделать SAML Response/Assertion и войти как произвольный пользователь. Это не означает автоматическую уязвимость систем без SAML.

Затронутые версии

Ruby-SAML версии 1.12.2 и ниже, а также 1.13.0–1.16.0; omniauth-saml 1.10.3 и ниже и 2.1.0 и ниже. Уязвимость применима к интеграциям, которые используют SAML-проверку ответа через эти пакеты.

Исправленные версии

Ruby-SAML исправлен в 1.12.3 и 1.17.0; omniauth-saml — в 1.10.5 и 2.2.0. GitLab для своих веток поставлял зависимость ruby-saml 1.17.0 в patch releases.

Что сделать

  1. 1Проверьте lockfile и транзитивные зависимости ruby-saml/omniauth-saml, а также активные SAML-провайдеры. Установленный пакет не доказывает, что именно он используется в runtime.
  2. 2Обновите ruby-saml и omniauth-saml до исправленных версий совместимой ветки, затем проверьте вход, выход, группы и сопоставление атрибутов на staging.
  3. 3Для self-managed GitLab установите соответствующий patch release; временно включите GitLab 2FA для пользователей и не разрешайте SAML two-factor bypass option согласно advisory.
  4. 4Проверьте журналы SSO и приложения на неожиданные входы, смену идентификаторов и административные действия. При подозрении отзовите сессии и расследуйте IdP и приложение.

Как не подпустить ботов к сайту

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

Первоисточники

Снизьте шанс атаки до того, как бот дойдёт до сайта

Подключите BotProtection как фильтр перед сайтом: подозрительные автоматизированные запросы отсекаются до обращения к вашему серверу. Это значительно снижает вероятность автоматизированной атаки, но не исправляет саму уязвимость, поэтому обновление и настройка компонентов остаются обязательными.