Контакты
Подписка
МЕНЮ
Контакты
Подписка

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

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

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


28.02.2018



Исследователи из компании Duo Labs выявили уязвимость в дизайне SAML (Security Assertion Markup Language), которая позволяет атакующему авторизоваться под видом легитимного пользователя без наличия пароля жертвы. Проблема затрагивает решения различных SSO-провайдеров и несколько открытых библиотек, поддерживающих SAML SSO (Single Sign-On) операции.

 Уязвимость заключается в том, как данные библиотеки обрабатывают XML комментарии в ответах SAML-протокола. К примеру, внедрив комментарий в поле логина таким образом, что он "разорвет" имя пользователя, злоумышленник может получить доступ к учетной записи легитимного пользователя. При этом у атакующего должен быть зарегистрированный аккаунт в сети жертвы.

 Исследователи идентифицировали ряд решений с Single Sign-On на базе SAML, уязвимых к данной атаке:

  • OneLogin - python-saml - CVE-2017-11427

  •  OneLogin - ruby-saml - CVE-2017-11428

  •  Clever - saml2-js - CVE-2017-11429

  •  OmniAuth-SAML - CVE-2017-11430

  •  Shibboleth - CVE-2018-0489

  •  Duo Network Gateway - CVE-2018-7340

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

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

 Security Assertion Markup Language (SAML) — открытый стандарт, который описывает фреймворк, позволяющий обеим сторонам (приложению и провайдеру) обмениваться аутентификационной и авторизационной информацией.

 Single Sign-On (SSO) — технология, позволяющая авторизоваться в web-приложении через сторонний сайт-провайдер.

 

 

 

Securitylab