FIDO2 и passkeys: вход, устойчивый к фишингу
Passkeys заменяют пароль парой криптографических ключей, привязанной к адресу сайта. Разбираем механику, почему фишинг перестаёт работать и что учесть при внедрении.
FIDO2 — набор открытых стандартов беспарольного входа, а passkeys — их практическое воплощение, доступное на большинстве современных устройств.
Главное отличие от других способов входа сформулировать можно одной фразой: фишинг перестаёт работать не потому, что пользователь стал внимательнее, а потому что это технически невозможно.
Как устроено
При регистрации устройство создаёт пару ключей:
- закрытый ключ остаётся на устройстве, в защищённой области, и никогда его не покидает;
- открытый ключ передаётся сервису и хранится у него.
При входе сервис присылает случайный набор данных. Устройство подписывает его закрытым ключом, сервис проверяет подпись открытым. Совпало — вход состоялся.
Обратите внимание, чего здесь нет: по сети не передаётся ничего, что можно было бы использовать повторно. Ни пароля, ни кода, ни секрета.
Два следствия, которые меняют картину
При утечке базы красть нечего
У сервиса хранится только открытый ключ. Он не позволяет войти — с его помощью можно лишь проверить подпись.
Сравните с паролями: даже правильно хешированная база при утечке даёт материал для перебора, а слабые пароли восстанавливаются быстро.
Фишинг не срабатывает
Ключ привязан к адресу сайта, для которого он был создан. Браузер при входе передаёт устройству, с каким доменом идёт работа, и устройство подписывает данные только для «своего» домена.
Поддельная страница по похожему адресу получит отказ. Не предупреждение, которое можно проигнорировать, — просто ничего не произойдёт, потому что подходящего ключа для этого домена нет.
Именно поэтому passkeys называют устойчивыми к фишингу, а коды из приложения — нет. Код можно ввести где угодно, включая поддельную страницу.
Разновидности
Привязанные к устройству. Ключ существует только на конкретном устройстве. Максимальная надёжность, но при утере устройства ключ теряется.
Синхронизируемые. Ключ копируется между устройствами пользователя через защищённое хранилище платформы. Удобнее — вход доступен с телефона и ноутбука, восстановление проще. Немного менее строго с точки зрения безопасности, зато на порядок практичнее.
Аппаратные ключи. Отдельное физическое устройство, подключаемое к компьютеру или работающее бесконтактно. Применяются там, где требования максимальны.
Роль биометрии
Распространённое заблуждение: «вход по отпечатку означает, что отпечаток отправляется на сервер».
Это не так. Биометрия разблокирует доступ к ключу на самом устройстве. Отпечаток или изображение лица не покидают устройство и сервису не передаются. Сервис получает только подпись.
Поэтому вопросы приватности здесь стоят иначе, чем при централизованном хранении биометрических данных: хранения как такового нет.
Что учесть при внедрении
Пользователю нужно несколько ключей. Рабочий ноутбук, телефон, домашний компьютер — на каждом устройстве регистрируется свой ключ. Пользователя стоит попросить добавить хотя бы два, чтобы потеря одного не отрезала доступ.
Резервный путь обязателен. Устройства теряются и ломаются. Резервные коды или процедура восстановления с участием администратора должны существовать заранее.
Переход постепенный. Пароль отключается не в день внедрения: сначала пользователи привязывают ключи, продолжая иметь возможность войти привычным способом.
Не все сценарии покрываются. Общие рабочие места, устаревшие браузеры, специфические устройства могут не поддерживать механизм. Для них нужен запасной способ — например, второй фактор через приложение.
Начинайте с администраторов. Наибольший риск и наибольшая техническая готовность.
Сравнение способов
| Способ | Фишинг | Утечка базы | Удобство |
|---|---|---|---|
| Пароль | Работает | Опасна | Привычно, но много забываний |
| Пароль + код из приложения | Работает | Не критична | Дополнительный шаг при каждом входе |
| Passkey | Не работает | Безопасна | Один жест: отпечаток или PIN |
Как это устроено в Keydee
- Passkeys поддерживаются как способ входа; ключ привязывается к устройству пользователя.
- TOTP доступен для сценариев, где passkeys неприменимы.
- Способы задаются политикой компании — можно разрешить passkeys наравне с паролем.
- Резервные коды выдаются при подключении факторов.
- Пользователь видит свои активные сессии и может завершить любую.
- Администратор может отозвать фактор при утере устройства сотрудником.
Чего passkeys не решают
Они защищают вход — и делают это лучше любого другого массово доступного способа. Но всё остальное остаётся: права нужно ограничивать ролями, сессии контролировать, действия журналировать.
Устранение самого эксплуатируемого вектора атаки — большой шаг. Не единственный.
Покажем платформу на вашем сценарии за 30 минут
Никаких длинных презентаций. Покажем, как KeyDee работает именно для вашего продукта — и ответим на все технические вопросы.
Свяжемся в течение 2 часов · Размещение данных в РФ · ФЗ-152