Двухфакторная аутентификация для high-risk пользователей

Как определить риск
В зоне высокого риска могут быть активисты, чьи контакты делают их уязвимыми; бизнесмены, чьи конкуренты стремятся получить доступ к коммерческой тайне; финансисты и адвокаты, обязанные хранить данные клиентов; публичные персоны, для которых опасна утечка личной информации. В таких случаях общие советы вроде «включить двухфакторную аутентификацию» уже не работают — нужна специфика.
Риск определяется двумя факторами: вероятностью атаки и величиной ущерба. Вероятность выше, если у вас есть ценная информация, представляющая интерес для злоумышленника. Ущерб выражается как в материальных потерях (кража или блокировка финансовых данных), так и в рисках преследования, потери репутации или психологических последствиях.
Если вероятность атаки высока и ущерб от завладения вашей информацией значителен, вы находитесь в зоне высокого риска.
Что за два фактора (или много) защищают вашу информацию?
Двухфакторная (или многофакторная) аутентификация - это способы, которыми вы защищаете свою информацию от несанкционированного доступа. Суть в том, чтобы построить такую защиту, при которой злоумышленнику придётся пройти два (или более) этапа проверки личности разными методами.
Главная идея состоит в том, чтобы использовать разные типы факторов аутентификации. Каждый из способов обладает разной степенью защищенности.
Существует три основных типа факторов аутентификации:
- Что-то, что вы знаете (something you know) - например, пароль.
- Что-то, что у вас есть (something you have) - например, смартфон или ключ безопасности .
- То, чем вы являетесь (something you are) - биометрия, например, отпечаток пальца, лицо или голос.
Варианты двухфакторной аутентификации и их релевантность
Дополнительные пароли сразу отметаем - такая защита не будет надежной. Мы уже знаем, что нельзя использовать один и тот же тип фактора (например, something you know) несколько раз - это не будет считаться двухфакторной или многофакторной аутентификацией.
1. Код по телефону через обыкновенное смс-сообщение
Исторически это была первая попытка внедрить массовую двухфакторную аутентификацию.
Плюсы:
- Доступность: телефон сейчас есть у всех
- Удобство: легко восстановить через восстановление сим-карты
Минусы:
- Нарушители безопасности (как государства так и криминал) умеют получать доступ к чужим смс-сообщениям. Для этого они могут просто сделать копию страницы сайта у себя в системе и перенаправлять введенный пользователем код из смс на доступный им сервер
- Государства также умеют прекращать обслуживание в сетях операторов, то есть могут сделать так, чтобы смска не пришла
- Фишинговые сайты также могут запрашивать код из SMS и сразу использовать его на настоящем сайте, крадя и пароль, и код двухфакторной аутентификации. Пользователь вводит код на поддельной странице, откуда он в реальном времени перенаправляется злоумышленником на подлинный сайт.
- В содержимом перехваченной SMS часто видно, к какому ресурсу запрашивается доступ, что позволяет злоумышленнику отслеживать активность пользователя
Вывод: Не подходит для тех, кто находится в зоне высокого риска. Код по телефону через обыкновенное смс-сообщение можно рекомендовать только для аккаунтов, в которых нет важных объектов защиты.
Код на Whatsapp/Telegram
Это вариант предыдущего способа, но дополнительный плюс -
Плюсы:
- Сообщения защищены сквозным шифрованием, то есть сообщение перехватить так не получится
Минусы:
- Перехватив смс-сообщение, злоумышленники могут зарегистрироваться в чужом аккаунте мессенджера, если отсутствует дополнительный пароль. А зарегистрировавшись, можно получить доступ к новым сообщениям, приходящим в мессенджер, и таким образом получить чужую двухфакторную аутентификацию
- Надежность способа зависит от доступности платформы (Whatsapp и Telegram могут заблокировать)
- Фишинговые сайты тоже могут запрашивать код и сами использовать его на настоящем сайте, и фишингом можно красть и пароль и код двухфакторной аутентификации
Вывод: Не подходит для high-risk клиентов и аккаунтов.
2. Приложение Google Authenticator и аналоги (TOTP)
Протокол, по которому работают аутентификаторы, называется TOTP (Time-based One-Time Password), то есть из изначального ключа устройство, где установлено приложение, делает одноразовые пароли, привязанные к текущему времени. Этот метод появился, когда стало ясно, что двухфакторная аутентификация через SMS оказалась сравнительно ненадежной.
Плюсы:
- Работает офлайн, не зависит от наличия сети или безопасности других платформ
- В отличие от SMS, код при использовании такого способа гораздо труднее перехватить, если только злоумышленник не завладеет самим телефоном или первоначальным кодом, который, как правило, нужно сканировать
Минусы:
- Фишинговые сайты тоже могут запрашивать такой код и сами использовать его на настоящем сайте, то есть красть и пароль и код двухфакторной
- Аутентификатор привязан к устройству или к онлайн-аккаунту. Например, Google предлагает хранить коды в самом аккаунте Google через синхронизацию приложения Authenticator. Таким образом, при взломе аккаунта злоумышленник получает доступ к кодам
Вывод: Не подходит для high-risk клиентов и аккаунтов.
Сохранение TOTP кодов в специализированном парольном менеджере
Для генерации кодов можно использовать парольный менеджер 1Password и ряд других сервисов.
Плюсы:
- Все плюсы от предыдущего варианта (работает офлайн, такие коды нелегко перехватить)
- Коды не теряются при потере устройства
- Можно использовать в режиме совместного доступа разных пользователей к аккаунту, например для корпоративного аккаунта Instagram
Минусы:
- Когда оба фактора аутентификации находятся в одном месте, злоумышленник получает возможность взломать их вместе — и принцип разделения факторов фактически перестаёт работать
Вывод: Не подходит для high-risk клиентов и аккаунтов.
3. Коды восстановления
Фактически это полноценный второй этап аутентификации, который платформы описывают как “дополнительный”. Сами по себе коды восстановления не являются вторым фактором – поэтому двухфакторной аутентификации тут нет.
Коды восстановления предлагаются при настройке аккаунта, чтобы пользователи не обращались в службу поддержки в случае потери доступа. То есть, строго говоря, это не инструмент защиты пользователя, а скорее способ защитить саму платформу от последствий беспечности пользователей.
Это не двухфакторная аутентификация, потому что и пароль, и коды восстановления относятся к одному и тому же типу информации — shared secret. И то и другое — это something you know.
Плюсы:
- Коды восстановления не привязаны к мессенджерам или передаче данных
Минусы:
- Хранение кодов восстановления. Почти все пользователи держат их там же, где и пароли — в лучшем случае в парольном менеджере. Но как хранить их отдельно? Завести два менеджера паролей? Звучит абсурдно. По сути, это всего лишь ещё один пароль.
- Коды восстановления также уязвимы для фишинга
Вывод: Не подходит для high-risk клиентов и аккаунтов. Парадоксально, но таким клиентам иногда сохранять коды НЕ рекомендуется.
4. Уведомления от Google/Коды на устройствах Apple
Идея заключается в том, что что когда пользователь хочет зайти в аккаунт на одном устройстве, ему нужно подтвердить этот вход на другом, где он уже авторизован, нажав кнопку вроде «Да, это я». Такая технология доступна не везде, но, например, используется в аккаунтах Google и Apple. У Apple коды приходят автоматически, а в Google эту функцию можно настроить вручную.
Плюсы:
Это точно лучше чем обыкновенное SMS-сообщение
Минусы:
Проблема в том, что до конца не ясно, как именно работает эта технология у конкретного пользователя. Например, у Google, судя по всему, она может реализовываться тремя разными способами, причём механизм зависит и от модели телефона, в частности, от наличия криптопроцессора. Уровень защищённости может различаться в зависимости от устройства: на одном защита сработает, а на другом уязвимость для фишинга останется. Подробностей и определённости здесь нет.
Вывод: Не подходит для high-risk клиентов и аккаунтов.
5. Аппаратные ключи
Такие ключи часто продаются под брендом YubiKey, у Google есть собственный ключ Titan (https://store.google.com/us/product/titan_security_key?hl=en-US), существуют и другие аналоги. Для таких ключей действует единый стандарт FIDO2, по этой аббревиатуре можно искать совместимые ключи.
Плюсы:
- Основной плюс таких ключей в том, что это не something you know. То есть это не «ещё один пароль», который просто подставляется при нажатии кнопки. Внутри ключа находится чип, выполняющий криптографическую операцию, и благодаря этому такие ключи устойчивы к фишингу. Если вы зайдете на фишинговый сайт, вставите там правильный ключ и нажмите на кнопку, вход в настоящий аккаунт не произойдёт.
Минусы:
- Риск изъятия и кражи ключа
Вывод: Отлично подходит для high-risk клиентов и аккаунтов для защиты от фишинга. Надо только учитывать, есть ли риск изъятия и кражи такого ключа. Если нет или он очень невелик, рекомендуем!
6. Passkey
Passkey – это не просто длинный пароль. Это новый способ аутентификации, который используется для защиты аккаунта в качестве второго фактора.
- Принцип работы таков: устройство или парольный менеджер хранят приватный ключ. При попытке входа сервер присылает число, пользователь подтверждает аутентификацию на устройстве — вводит пароль (PIN) или биометрические данные. Устройство подписывает присланное число приватным ключом и отправляет результат обратно на сервер. У сервера есть соответствующий публичный ключ, с помощью которого он проверяет подпись и убеждается, что пользователь настоящий
Плюсы:
Как и предыдущий метод, этот способ очень устойчив к фишингу. Однако, он становится спорным в ситуации, когда есть риск, что устройство окажется в руках злоумышленников и пользователя принудят ввести биометрию или пароль.
Вывод: Отлично подходит для high-risk клиентов и аккаунтов для защиты от фишинга.
Итог: Для пользователей, находящихся в зоне высокого риска, рекомендуется использовать для двухфакторной аутентификации аппаратные ключи и passkey.
При этом следует отключить все стандартные способы восстановления доступа и иные методы двухфакторной аутентификации, основанные на паролях или кодах.
Традиционные методы на основе общего секрета (shared secret) больше не обеспечивают достаточного уровня защиты. А вот методы, основанные на публичной криптографии, обеспечивают необходимую защиту.










