Фишинг-устойчивая MFA — это многофакторная аутентификация, при которой злоумышленник не может использовать перехваченный код, подтверждение или ссылку на поддельный сайт для входа в аккаунт. Вместо передачи секрета такая схема опирается на криптографию с открытым ключом и проверку домена сервиса.
Обычная MFA заметно снижает риск взлома, но не всегда спасает от фишинга, атак посредника и социальной инженерии. Фишинг-устойчивая аутентификация решает именно эту проблему: она подтверждает личность без передачи одноразового кода, который можно украсть или переслать.
Содержание статьи
Что означает фишинг-устойчивая MFA
Фишинг-устойчивая MFA — это способ входа, при котором средство аутентификации отвечает только настоящему сайту и не раскрывает данные, пригодные для повторного использования. Если пользователь попадает на поддельную страницу, подтверждение просто не срабатывает.
У обычной многофакторной аутентификации часто есть общий принцип: пользователь получает или генерирует секрет, а потом вводит его в сервис. Это может быть SMS-код, одноразовый пароль из приложения или push-подтверждение на телефоне.
Проблема в том, что эти данные сами по себе валидны. Если человек ввёл код на фишинговом сайте или подтвердил ложный запрос, система видит корректный фактор входа. Она не знает, что пользователь сделал это под давлением, по ошибке или через поддельный интерфейс.
Фишинг давно бьёт не по программной уязвимости, а по поведению человека. Поэтому защита, которая зависит от пересылки секрета, имеет слабое место уже на уровне самой модели.
Почему обычная MFA может не сработать
Традиционная MFA часто уязвима по одной причине: пользователь передаёт секрет через сеть или подтверждает действие, которое можно навязать. Если этот секрет перехвачен, подставлен в реальном времени или выманен, защита перестаёт быть защитой.
У разных методов свои слабые места. Одни завязаны на инфраструктуру мобильной связи. Другие ломаются через прокси-сервер между пользователем и настоящим сайтом. Третьи используют усталость и невнимательность человека.
SMS-коды и подмена SIM-карты
SMS-коды уязвимы, потому что зависят от операторской инфраструктуры, которая изначально не создавалась как строгая система киберзащиты. Если номер телефона перейдёт под контроль злоумышленника, он начнёт получать и коды MFA.
В атаке с подменой SIM-карты злоумышленник добивается перевыпуска номера на новую SIM. После этого сообщения с кодами приходят уже ему.
Есть и другая проблема: у телеком-сетей давно известны слабые места на уровне сигнальных протоколов. Из-за этого SMS можно перехватывать или перенаправлять без доступа к самому телефону пользователя.
Коды из приложений-аутентификаторов и атаки посредника
Одноразовые пароли из приложения безопаснее SMS в части доставки, но они всё равно могут быть украдены в момент входа. Для этого используется атака посредника, или man-in-the-middle.
Схема проста. Пользователь открывает ссылку из фишингового письма и видит страницу, похожую на настоящую. На деле между ним и реальным сервисом стоит прокси злоумышленника, который пересылает логин, пароль и одноразовый код на подлинный сайт, а затем получает токен сессии.
Код был верным, но применён не тем, кем нужно, и не там, где нужно. С точки зрения сервиса вход выглядит обычным.
Push-бомбардировка
Push-подтверждения удобны, но их можно превратить в инструмент давления. Если злоумышленник уже знает пароль, он может запускать запросы на подтверждение снова и снова, пока человек не нажмёт согласие.
Иногда это делается часами. Иногда параллельно отправляются сообщения якобы от ИТ-службы с просьбой срочно подтвердить вход.
Такой подход работает не за счёт взлома криптографии, а за счёт навязчивости. Пользователь устаёт, путается или думает, что уведомление настоящее.
Как работает фишинг-устойчивая аутентификация
Главное отличие в том, что при фишинг-устойчивой MFA по сети не передаётся общий секрет, который можно перехватить и использовать повторно. Вместо этого сервис отправляет случайный запрос, а устройство пользователя подписывает его закрытым ключом, который не покидает устройство.
У схемы есть два ключа: открытый и закрытый. Открытый ключ хранится у сервиса. Закрытый ключ хранится у пользователя на устройстве, токене или смарт-карте.
При входе сервер создаёт случайный вызов. Аутентификатор подписывает его закрытым ключом. Сервер проверяет подпись по открытому ключу и убеждается, что перед ним тот самый зарегистрированный пользователь.
Перехватывать тут почти нечего. Подпись привязана к конкретному запросу, а закрытый ключ наружу не уходит.
Вторая важная часть — привязка к источнику, то есть к домену сайта. Аутентификатор отвечает только тогда, когда видит настоящий зарегистрированный адрес. Если страница поддельная, он молчит. Пользователь может даже ввести логин и пароль на фишинговом сайте, но само криптографическое подтверждение не произойдёт.
Какие технологии чаще всего используют
На практике фишинг-устойчивую MFA чаще всего строят на FIDO2 или на PKI-аутентификации по сертификатам. Обе модели используют криптографию с открытым ключом, но отличаются инфраструктурой и способом внедрения.
| Подход | На чём основан | Типичные средства | Где встречается |
| FIDO2 | WebAuthn и CTAP, привязка к домену | Ключи безопасности, passkeys, встроенные аутентификаторы | Веб-сервисы, корпоративные системы, современные устройства |
| PKI | Цифровые сертификаты и проверка подписи | Смарт-карты, USB-токены, программные сертификаты | Госструктуры, крупные организации, регулируемые отрасли |
Как работает FIDO2
FIDO2 — это набор открытых стандартов аутентификации, при котором устройство создаёт пару ключей и привязывает её к конкретному сайту. Если домен не совпадает, подтверждение не выполняется.
Во время регистрации на сервисе аутентификатор создаёт ключевую пару. Открытый ключ передаётся сервису, а закрытый остаётся на устройстве. Дополнительно создаётся привязка к конкретному источнику, например к домену страницы входа.
Когда пользователь открывает настоящий сайт, браузер сверяет домен с тем, который был зарегистрирован ранее. Совпадение есть — аутентификатор отвечает. Если адрес похожий, но другой, ответа не будет.
Это убирает типичную проблему фишинга, где человек глазами не замечает подмену в URL. Проверка происходит на уровне протокола, а не на уровне внимательности пользователя.
Как работает PKI-аутентификация
PKI использует цифровые сертификаты, выпущенные доверенным центром сертификации. Механика входа похожа: сервис присылает вызов, устройство подписывает его, а система проверяет подпись.
Секрет через сеть не передаётся и здесь. Основное отличие в том, как организовано управление удостоверениями, сертификатами и носителями ключей.
Для PKI часто используют смарт-карты. Они хранят закрытый ключ в защищённом чипе и требуют дополнительную инфраструктуру: считыватели, промежуточное ПО и систему управления сертификатами.
Такой подход давно используется там, где важны жёсткие требования к подтверждению личности и управлению доступом.
Какие бывают аутентификаторы
Аутентификатор — это устройство или встроенный механизм, который участвует в криптографическом подтверждении личности. Выбор зависит от уровня риска, имеющейся инфраструктуры и удобства для пользователя.
Аппаратные ключи безопасности
Аппаратный ключ — это отдельное физическое устройство, которое хранит закрытый ключ в защищённом чипе. Обычно оно подключается через USB или работает по NFC.
Преимущество здесь очевидно: закрытый ключ создаётся и остаётся внутри устройства. Удалённо извлечь его нельзя.
Минус тоже практический. Такие ключи нужно выдавать, учитывать, менять при потере и поддерживать в рабочем состоянии.
Платформенные аутентификаторы
Платформенный аутентификатор встроен в ноутбук или смартфон. Он использует защищённое хранилище устройства и локальную проверку личности через отпечаток пальца, распознавание лица или PIN-код.
Биометрия или PIN в этой модели не заменяют криптографию. Они только разблокируют доступ к закрытому ключу, который потом подписывает запрос сервиса.
Главное ограничение в том, что ключ связан с конкретным устройством. Если нужен вход с другого компьютера, требуется отдельная настройка или другой способ доступа.
Passkeys
Passkeys — это криптографические учётные данные, которые позволяют входить без пароля. Они также используют закрытый ключ на устройстве и локальное подтверждение личности.
Отдельная особенность passkeys в том, что они могут синхронизироваться между устройствами внутри одной экосистемы. Это упрощает вход с телефона и ноутбука, если оба привязаны к одной учётной записи поставщика платформы.
С точки зрения защиты от фишинга passkeys работают по тем же принципам FIDO2. Но переносимость между разными экосистемами может быть не самой простой.
Смарт-карты
Смарт-карты — основной вариант аутентификатора в PKI-среде. Они хранят ключи в защищённом чипе и подтверждают личность при использовании считывателя или бесконтактного интерфейса.
У такой схемы более тяжёлая инфраструктура. Зато технология давно применяется в средах с жёсткими требованиями к контролю доступа и учёту удостоверений.
Чем фишинг-устойчивая MFA отличается от обычной
Разница сводится к одному вопросу: можно ли украсть подтверждение входа и использовать его повторно. В обычной MFA часто можно. В фишинг-устойчивой — модель изначально построена так, чтобы этого не произошло.
| Критерий | Обычная MFA | Фишинг-устойчивая MFA |
| Что передаётся | Код, одноразовый пароль, подтверждение | Криптографическая подпись вызова |
| Можно ли перехватить фактор | Да, в ряде сценариев | Закрытый ключ не передаётся |
| Защита от поддельного сайта | Ограниченная | Есть привязка к домену |
| Уязвимость к атакам посредника | Выше | Ниже |
| Зависимость от внимательности пользователя | Часто высокая | Ниже, потому что домен проверяет протокол |
Что даёт такой подход на практике
Фишинг-устойчивая MFA снижает риск кражи учётных данных через поддельные страницы входа, перехват кодов и ложные подтверждения. Она делает украденный пароль сам по себе менее полезным, потому что для входа нужен криптографический ответ от доверенного аутентификатора.
Есть и другой эффект. Организации получают более предсказуемую модель защиты: безопасность меньше зависит от того, заметит ли человек подмену домена, распознает ли ложное письмо и откажется ли от странного push-запроса.
Поэтому такой подход всё чаще рассматривается как базовый уровень сильной аутентификации там, где требования к защите учётных записей особенно высоки.
Где пределы этой защиты
Фишинг-устойчивая MFA не решает все задачи безопасности. Она хорошо закрывает именно кражу фактора входа через фишинг, но не отменяет другие классы угроз.
Если устройство пользователя заражено вредоносным ПО, злоумышленник может охотиться не за паролем или кодом, а за токенами сессии, кэшированными данными и другой информацией после входа. В этом случае уже нужны средства защиты конечных устройств и контроль сессий.
Также имеет значение общая архитектура доступа: политики условного доступа, контроль состояния устройства, анализ аномального поведения и ограничения по контексту входа.
Проще говоря, фишинг-устойчивая аутентификация закрывает один очень опасный участок, но не заменяет всю систему управления доступом и защиту рабочих станций.
Как понять, что метод действительно устойчив к фишингу
Если метод требует ввести код с экрана, продиктовать число, нажать подтверждение в ответ на неожиданный запрос или вручную перенести секрет в форму входа, он обычно не считается фишинг-устойчивым. Признак устойчивости другой: закрытый ключ не покидает устройство, а подтверждение работает только для настоящего домена.
Быстрая проверка обычно сводится к таким вопросам:
- Передаётся ли через сеть общий секрет, который можно перехватить?
- Привязан ли процесс подтверждения к конкретному домену сайта?
- Хранится ли закрытый ключ только на устройстве пользователя?
- Можно ли повторно использовать перехваченные данные для входа?
- Нужно ли пользователю самому оценивать, настоящий ли перед ним сайт?
Если ответ на первый и четвёртый вопросы положительный, а на второй и третий отрицательный, перед вами, скорее всего, обычная MFA, а не фишинг-устойчивая.
Как выглядит вход в аккаунт с такой защитой
Процесс обычно короче, чем кажется. Пользователь открывает страницу входа, вводит имя учётной записи или сразу выбирает способ входа, после чего подтверждает личность на устройстве. Дальше всё делает криптографический протокол.
- Пользователь открывает настоящий сайт или приложение.
- Сервис отправляет случайный криптографический вызов.
- Аутентификатор проверяет домен сервиса.
- Пользователь подтверждает действие локально: биометрией, PIN-кодом или касанием ключа.
- Устройство подписывает вызов закрытым ключом.
- Сервис проверяет подпись по открытому ключу и разрешает вход.
Если сайт поддельный, проверка домена не проходит, и подпись не создаётся. Именно это и делает схему устойчивой к фишингу по своей природе, а не только по инструкции для пользователя.