logo Хроники кибер-безопасника

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‏ ‎сеанса, ‎злоумышленник‏ ‎может ‎получить ‎доступ ‎к ‎личному‏ ‎кабинету‏ ‎пользователя ‎и‏ ‎удалить ‎ключ‏ ‎безопасности ‎из ‎профиля ‎пользователя, ‎демонстрируя‏ ‎простой‏ ‎сценарий‏ ‎перехвата ‎сеанса

Предыдущий Следующий
Все посты проекта

Подарить подписку

Будет создан код, который позволит адресату получить бесплатный для него доступ на определённый уровень подписки.

Оплата за этого пользователя будет списываться с вашей карты вплоть до отмены подписки. Код может быть показан на экране или отправлен по почте вместе с инструкцией.

Будет создан код, который позволит адресату получить сумму на баланс.

Разово будет списана указанная сумма и зачислена на баланс пользователя, воспользовавшегося данным промокодом.

Добавить карту
0/2048