новости
June 14

FIDO2: Устойчив к фишингу, но не к токенам

В статье рассказывается о том, как MITM-атаки могут обойти защиту FIDO2 от фишинга; подробно описывается процесс аутентификации в FIDO2, освещаются уязвимости в обработке токенов сеанса и приводятся реальные примеры, связанные с использованием единого входа Entra ID, PingFederate и Yubico Playground, а также стратегии устранения неполадок для повышения безопасности.

FIDO2

📌FIDO2 — это современный стандарт аутентификации без пароля, разработанный Альянсом FIDO Alliance для замены паролей

📌Он предназначен для защиты от фишинга, атак типа «человек посередине» (MITM) и перехвата сеанса

📌Процесс аутентификации включает в себя регистрацию устройства и аутентификацию с использованием криптографии с открытым ключом

Функции безопасности FIDO2

📌FIDO2 разработан для предотвращения фишинговых атак, MITM и перехвата сеанса

📌 Однако исследование показало, что реализации FIDO2 часто не защищают токены сеанса после успешной аутентификации

Атака на FIDO2 с помощью MITM

📌Автор исследовал атаки MITM на поставщиков идентификационных данных (IDP)

📌 Хотя MITM сложнее использовать с помощью TLS, такие методы, как подмена DNS, отравление ARP и кража сертификатов, могут помочь в этом

📌Выполнив MITM для IdP, злоумышленник может перехватить токен сеанса после проверки подлинности FIDO2

EntraID SSO (Microsoft)

📌Обзор: Entra ID SSO — это решение для единого входа, которое поддерживает различные протоколы единого входа и современные методы аутентификации, включая FIDO2.

📌Уязвимость: Исследование показало, что злоумышленник может перехватывать сеансы, используя способ, которым Entra ID обрабатывает токены сеанса.

📌Метод атаки: Злоумышленнику не нужно ретранслировать весь процесс аутентификации. Вместо этого он может использовать подписанный токен, предоставленный IdP, срок действия которого составляет один час. Этот токен может быть повторно использован в течение допустимого периода времени для создания файлов cookie состояния на более длительный период.

📌Пример: Собственное приложение портала управления Azure не проверяет токен, предоставленный службой единого входа, что позволяет злоумышленнику использовать украденный токен для получения несанкционированного доступа.

PingFederate

📌Обзор: PingFederate — это решение для единого входа, которое использует сторонние адаптеры для выполнения аутентификации. Эти адаптеры могут быть объединены в поток политики аутентификации.

📌Уязвимость: Исследование показало, что если разработчик, которому доверяют, не проверит токен OIDC (или SAML-ответ), атака MITM может быть успешной.

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

📌Пример: Адаптер PingOne можно использовать с поддержкой FIDO2. Если токен OIDC не будет подтвержден, злоумышленник может обойти защиту FIDO2 и получить несанкционированный доступ.

Yubico Playground

📌Обзор: Yubico Playground — это среда тестирования функций и ключей безопасности FIDO.

📌Уязвимость: Исследование показало, что можно использовать простой сеансовый файл cookie, сгенерированный после аутентификации FIDO2.

📌Метод атаки: На устройстве, запросившем сеансовый файл cookie, отсутствует проверка подлинности. Любое устройство может использовать этот файл cookie до истечения срока его действия, что позволяет злоумышленнику обойти этап аутентификации.

📌Пример: Получив файл cookie сеанса, злоумышленник может получить доступ к личному кабинету пользователя и удалить ключ безопасности из профиля пользователя, демонстрируя простой сценарий перехвата сеанса

Подпишись TG & Boosty