О двухфакторной аутентификации
21.02.2024
По данным Минцифры, в 2022 году в России количество утекших персональных данных, а также платежной информации за год выросло в 32 раза – с 1,4 млн до 44,8 млн. Рост утечки персональных данных обусловлен не только активизацией мошенников, но и человеческим фактором, а именно, отсутствием у людей понимания принципов цифровой грамотности. О том, почему важно хранить свои персональные данные, а также об одном из главных инструментов их защиты рассказал руководитель отдела Обеспечения информационной безопасности АНО «Центр изучения и сетевого мониторинга молодежной среды» Артем Гуреев.
— Что такое двухфакторная аутентификация?
— Двухфакторная аутентификация (ДФА, англ. two-factor authentication, также известна как двухэтапная верификация) является типом многофакторной аутентификации. ДФА представляет собой технологию, обеспечивающую идентификацию пользователей с помощью комбинации двух различных компонентов. На практике это обычно выглядит так: первый рубеж — это логин и пароль, второй — специальный код, приходящий по SMS или электронной почте. Реже второй «слой» защиты запрашивает специальный USB-ключ или биометрические данные пользователя.
— Как появилась потребность в усиленной защите данных?
— События, связанные с массовыми взломами аккаунтов, подтверждают необходимость защиты данных, находящихся на онлайн-сервисах. Часто учетные записи пользователей защищены слабыми паролями (пользователями используется одинаковый пароль в разных учетных записях), что способствует массовым взломам. Поэтому строгая аутентификация становится все более важным требованием.
В идеале база для безопасной аутентификации должна соответствовать таким требованиям, как:
— Как можно подтвердить свою личность?
— Для подтверждения своей личности пользователь может использовать следующие типы идентификационных данных:
— Какие существуют виды двухфакторной аутентификации?
— Рассмотрим существующие варианты многофакторной аутентификации, их плюсы и минусы.
1. Одноразовые коды из SMS, на почту или голосом по телефону.
Чаще всего такие одноразовые коды отправляют в текстовом сообщении на указанный при регистрации номер телефона. Несколько реже для тех же целей используется электронная почта или голосовой звонок.
У простых кодов есть недостаток: если для подтверждения входа используется электронная почта и пароль для входа в нее — тот же самый, что и в аккаунте, который вы пытаетесь обезопасить, то очевидно, что защита получается очень слабая. Ведь преступник, знающий пароль от взламываемого аккаунта, наверняка попробует использовать его и для входа в вашу почту — и в итоге получит одноразовый код подтверждения. Иногда пользователь и вовсе забывает заплатить за телефон, теряет его или, наконец, меняет номер, лишаясь возможности получить одноразовый код.
2. Использование пароля как второго фактора.
Иногда пароль становится вторым фактором, а не первым. К примеру, это часто практикуют мессенджеры: по умолчанию для регистрации в сервисе обмена сообщениями обычно достаточно ввести только одноразовый код, который вам пришлют в SMS. А вот пароль придумывать, как правило, не обязательно (но на самом деле, даже нужно). Таким образом вы защититесь сразу от нескольких потенциальных проблем.
3. Одноразовый код из заранее сгенерированного списка.
Еще один вариант, который иногда можно встретить, — это список заранее сгенерированных одноразовых кодов. Бывает, что такие списки выдают своим клиентам банки для подтверждения транзакций, а некоторые интернет-сервисы (например, Google) позволяют применять их для восстановления доступа к аккаунту.
Этот вариант можно считать надежным — такие коды передаются пользователю крайне редко, поэтому возможностей для перехвата минимум. Коды создаются случайным образом, то есть они уникальны и угадать их будет невозможно.
Однако возникает проблема хранения: если преступник сможет каким-то образом выкрасть этот список, то далее заранее сгенерированные коды будет легко использовать для угона учетной записи или кражи денег со счета.
4. Одноразовые коды из приложения-аутентификатора.
Генерацией одноразовых кодов занимаются аутентификаторы. Иногда они могут быть самостоятельными устройствами с небольшим дисплеем, на который выводится текущий код, — такие аутентификаторы выдают своим клиентам некоторые банки.
Однако чаще всего сейчас используются не отдельные устройства, а специальные приложения-аутентификаторы, которые устанавливаются на смартфон.
5. Биометрия – отпечаток пальца, лицо или голос.
В большинстве смартфонов сейчас есть возможность аутентификации либо по отпечатку пальца, либо с помощью распознавания лица, и это уже давно никого не удивляет. При правильной реализации биометрия серьезно упрощает жизнь пользователей: не надо ничего вводить, достаточно приложить палец к датчику или показать лицо в камеру.
У биометрической аутентификации есть пара серьезных недостатков. Первый: любые используемые для нее характеристики пользователя являются его постоянными свойствами. Пароль в случае утечки легко поменять — можно делать это время от времени просто для профилактики. А вот сменить зарегистрированный отпечаток пальца получится лишь ограниченное число раз.
Вторая важная проблема состоит в том, что биометрические данные из-за своей неизменности позволяют не только аутентифицировать пользователя, но и идентифицировать человека. Так что к сбору и передаче этих данных цифровым сервисам стоит относиться крайне осторожно.
По этой причине биометрические данные обычно используются для локальной аутентификации — они хранятся и обрабатываются прямо на устройстве, так, чтобы не приходилось кому-то их передавать. Для дистанционной биометрической аутентификации цифровому сервису пришлось бы доверять производителю этого устройства, на что сервисы обычно не идут.
6. Местоположение;
Обычно эта проверка происходит незаметно, и о ее результатах человек узнает только в том случае, если она оказывается неуспешной: то есть, когда попытка входа в аккаунт происходит из неожиданного для сервиса места. В этом случае сервис может попросить дополнительно подтвердить вход каким-то другим способом. Этот способ аутентификации не нужно подключать самому, он работает по умолчанию.
Конечно же, местоположение является не очень надежным способом проверки аутентичности пользователя: во-первых, оно не слишком уникально — в любой момент времени в одном и том же месте обычно находится огромное количество других людей. Во-вторых, его достаточно легко подделать — особенно если речь идет об определении местоположения по IP-адресу, а не о полноценной геолокации по GPS. Тем не менее в качестве одного из факторов аутентификации местоположение может быть полезно и многие сервисы его используют.
7. Аппаратные ключи.
Описанные выше варианты аутентификации имеют существенный недостаток: они позволяют проверить аутентичность пользователя, но никак не проверяют аутентичность сервиса. Из-за этого они уязвимы для атаки MitM (man-in-the-middle).
Для противодействия атакам с поддельных страниц были созданы ключи 2FA. Основное преимущество этого варианта аутентификации состоит в том, что во время регистрации сервис и 2FA-ключ запоминают некоторую информацию, которая уникальна и для каждого сервиса, и для каждого пользователя. Впоследствии в процессе аутентификации сервис должен отправить ключу определенный запрос, на который ключ даст ответ только в том случае, если этот запрос правильный.
Таким образом обе стороны этого общения могут понять, что имеют дело с настоящим собеседником. А поскольку в основе этого варианта аутентификации лежит криптография с открытым ключом, весь процесс надежно защищен от подделки, перехвата и прочих потенциальных неприятностей.
Аппаратные ключи 2FA — это самый надежный вариант аутентификации, существующий на сегодняшний день, и для защиты по-настоящему важных аккаунтов рекомендуется именно он.
— Гарантирует-ли двухфакторная аутентификация абсолютную безопасность?
— Хакеры всегда учатся, и, в конечном итоге, они могут взломать и ключи 2FA. Приложения для отзеркалирования сообщений, которые могут видеть ваши тексты, уже существуют. А теперь появились и голосовые боты, крадущие коды двухфакторной аутентификации. Однако, согласно недавней статистике, 99,9% взломанных аккаунтов не использовали 2FA в качестве защитной меры. Это говорит о том, что текущая целевая аудитория киберпреступников представляет собой «легких пользователей», пользующихся классическими возможностями идентификации.
Безусловно, ни один метод входа в систему не является полностью надежным, но, на сегодняшний день, двухфакторная аутентификация, однозначно, является безопаснее альтернатив. Чтобы обойти 2FA, злоумышленнику придется прервать два цикла идентификации, а не один. Эта особенность поможет выиграть время и обнаружить взлом на раннем этапе.
2FA не отменяет необходимости придумывать или генерировать сложные пароли, которые нельзя подобрать.
— Где стоит включить двухфакторную аутентификацию?
— Старайтесь использовать ее там, где возможно, особенно для самых ценных аккаунтов. Двухфакторная аутентификация — это дополнительная мера защиты при входе в свой аккаунт на новом устройстве или после выхода из профиля.
— Можно ли самостоятельно увидеть утечку своих данных?
— Есть сайты, которые собирают информацию о публичных утечках, базы утекших аккаунтов и дают пользователям возможность проверить свой почтовый адрес на предмет наличия в этих базах, например https://haveibeenpwned.com/.
Менеджеры паролей обычно помогают не только безопасно хранить пароли, но и отслеживать, попали ли они в какую-то из утечек данных. Такая функция есть, например, у сервисов 1Password, Keeper и Dashlane.
— Что делать, если ваши данные слили?
— 1. Проверьте достоверность утечки. Все чаще объявления об утечке данных используют мошенники для фишинга: они присылают панические сообщения о скомпрометированных данных и побуждают действовать на эмоциях. Главное — успокоиться и оценить ситуацию.
2. Оцените, какие именно данные скомпрометированы. От этого зависит, какие именно действия предпринимать. Одно дело — просто попавший в публичное поле адрес электронной почты или даже номер телефона. Совсем другое — платежные данные или физический адрес с подробностями.
3. Если слитой базы данных нет в публичном доступе — например, ее продают в даркнете — то оцените риски самостоятельно. В случае с «Яндекс-едой» или СДЭК вы, вероятно, понимаете, что указывали при заполнении профиля или оформлении доставки.
4. Не вводите свои данные в сторонние сервисы проверки. Некоторые масштабные утечки сопровождаются публикацией клиентской базы в наглядном виде, как это было в случае с «Яндексом». Многие тут же решали проверить на сайте, попали ли их данные в общий список — и вводили свои имена и номера телефонов. Лучше этого не делать: таким образом злоумышленники могут только пополнить свой каталог или подтвердить актуальность полученной информации.
5. Смените пароли — не только для профилей, попавших в утечку. Вполне вероятно, что вы не придумываете уникальные пароли для каждого сервиса, а используете ротацию из нескольких, которые помните и считаете надежными. В таком случае лучше сменить все совпадающие пароли, а не обойтись одним профилем.
— Что такое двухфакторная аутентификация?
— Двухфакторная аутентификация (ДФА, англ. two-factor authentication, также известна как двухэтапная верификация) является типом многофакторной аутентификации. ДФА представляет собой технологию, обеспечивающую идентификацию пользователей с помощью комбинации двух различных компонентов. На практике это обычно выглядит так: первый рубеж — это логин и пароль, второй — специальный код, приходящий по SMS или электронной почте. Реже второй «слой» защиты запрашивает специальный USB-ключ или биометрические данные пользователя.
— Как появилась потребность в усиленной защите данных?
— События, связанные с массовыми взломами аккаунтов, подтверждают необходимость защиты данных, находящихся на онлайн-сервисах. Часто учетные записи пользователей защищены слабыми паролями (пользователями используется одинаковый пароль в разных учетных записях), что способствует массовым взломам. Поэтому строгая аутентификация становится все более важным требованием.
В идеале база для безопасной аутентификации должна соответствовать таким требованиям, как:
- использование строгой аутентификации,
- соблюдение конфиденциальности пользователя,
- удобство использования и взаимодействие между различными устройствами, с помощью которых производится аутентификация.
— Как можно подтвердить свою личность?
— Для подтверждения своей личности пользователь может использовать следующие типы идентификационных данных:
- Нечто, ему известное (пароль, пин-код, секретная фраза — то, что пользователь запоминает и вводит в систему при запросе);
- Нечто, у него имеющееся (устройство, находящееся в собственности пользователя, например токен или телефон);
- Нечто, ему присущее (отпечаток пальца, голос, лицо, рисунок радужной оболочки, то есть неотъемлемые и достаточно уникальные свойства самого пользователя).
— Какие существуют виды двухфакторной аутентификации?
— Рассмотрим существующие варианты многофакторной аутентификации, их плюсы и минусы.
1. Одноразовые коды из SMS, на почту или голосом по телефону.
Чаще всего такие одноразовые коды отправляют в текстовом сообщении на указанный при регистрации номер телефона. Несколько реже для тех же целей используется электронная почта или голосовой звонок.
У простых кодов есть недостаток: если для подтверждения входа используется электронная почта и пароль для входа в нее — тот же самый, что и в аккаунте, который вы пытаетесь обезопасить, то очевидно, что защита получается очень слабая. Ведь преступник, знающий пароль от взламываемого аккаунта, наверняка попробует использовать его и для входа в вашу почту — и в итоге получит одноразовый код подтверждения. Иногда пользователь и вовсе забывает заплатить за телефон, теряет его или, наконец, меняет номер, лишаясь возможности получить одноразовый код.
2. Использование пароля как второго фактора.
Иногда пароль становится вторым фактором, а не первым. К примеру, это часто практикуют мессенджеры: по умолчанию для регистрации в сервисе обмена сообщениями обычно достаточно ввести только одноразовый код, который вам пришлют в SMS. А вот пароль придумывать, как правило, не обязательно (но на самом деле, даже нужно). Таким образом вы защититесь сразу от нескольких потенциальных проблем.
3. Одноразовый код из заранее сгенерированного списка.
Еще один вариант, который иногда можно встретить, — это список заранее сгенерированных одноразовых кодов. Бывает, что такие списки выдают своим клиентам банки для подтверждения транзакций, а некоторые интернет-сервисы (например, Google) позволяют применять их для восстановления доступа к аккаунту.
Этот вариант можно считать надежным — такие коды передаются пользователю крайне редко, поэтому возможностей для перехвата минимум. Коды создаются случайным образом, то есть они уникальны и угадать их будет невозможно.
Однако возникает проблема хранения: если преступник сможет каким-то образом выкрасть этот список, то далее заранее сгенерированные коды будет легко использовать для угона учетной записи или кражи денег со счета.
4. Одноразовые коды из приложения-аутентификатора.
Генерацией одноразовых кодов занимаются аутентификаторы. Иногда они могут быть самостоятельными устройствами с небольшим дисплеем, на который выводится текущий код, — такие аутентификаторы выдают своим клиентам некоторые банки.
Однако чаще всего сейчас используются не отдельные устройства, а специальные приложения-аутентификаторы, которые устанавливаются на смартфон.
5. Биометрия – отпечаток пальца, лицо или голос.
В большинстве смартфонов сейчас есть возможность аутентификации либо по отпечатку пальца, либо с помощью распознавания лица, и это уже давно никого не удивляет. При правильной реализации биометрия серьезно упрощает жизнь пользователей: не надо ничего вводить, достаточно приложить палец к датчику или показать лицо в камеру.
У биометрической аутентификации есть пара серьезных недостатков. Первый: любые используемые для нее характеристики пользователя являются его постоянными свойствами. Пароль в случае утечки легко поменять — можно делать это время от времени просто для профилактики. А вот сменить зарегистрированный отпечаток пальца получится лишь ограниченное число раз.
Вторая важная проблема состоит в том, что биометрические данные из-за своей неизменности позволяют не только аутентифицировать пользователя, но и идентифицировать человека. Так что к сбору и передаче этих данных цифровым сервисам стоит относиться крайне осторожно.
По этой причине биометрические данные обычно используются для локальной аутентификации — они хранятся и обрабатываются прямо на устройстве, так, чтобы не приходилось кому-то их передавать. Для дистанционной биометрической аутентификации цифровому сервису пришлось бы доверять производителю этого устройства, на что сервисы обычно не идут.
6. Местоположение;
Обычно эта проверка происходит незаметно, и о ее результатах человек узнает только в том случае, если она оказывается неуспешной: то есть, когда попытка входа в аккаунт происходит из неожиданного для сервиса места. В этом случае сервис может попросить дополнительно подтвердить вход каким-то другим способом. Этот способ аутентификации не нужно подключать самому, он работает по умолчанию.
Конечно же, местоположение является не очень надежным способом проверки аутентичности пользователя: во-первых, оно не слишком уникально — в любой момент времени в одном и том же месте обычно находится огромное количество других людей. Во-вторых, его достаточно легко подделать — особенно если речь идет об определении местоположения по IP-адресу, а не о полноценной геолокации по GPS. Тем не менее в качестве одного из факторов аутентификации местоположение может быть полезно и многие сервисы его используют.
7. Аппаратные ключи.
Описанные выше варианты аутентификации имеют существенный недостаток: они позволяют проверить аутентичность пользователя, но никак не проверяют аутентичность сервиса. Из-за этого они уязвимы для атаки MitM (man-in-the-middle).
Для противодействия атакам с поддельных страниц были созданы ключи 2FA. Основное преимущество этого варианта аутентификации состоит в том, что во время регистрации сервис и 2FA-ключ запоминают некоторую информацию, которая уникальна и для каждого сервиса, и для каждого пользователя. Впоследствии в процессе аутентификации сервис должен отправить ключу определенный запрос, на который ключ даст ответ только в том случае, если этот запрос правильный.
Таким образом обе стороны этого общения могут понять, что имеют дело с настоящим собеседником. А поскольку в основе этого варианта аутентификации лежит криптография с открытым ключом, весь процесс надежно защищен от подделки, перехвата и прочих потенциальных неприятностей.
Аппаратные ключи 2FA — это самый надежный вариант аутентификации, существующий на сегодняшний день, и для защиты по-настоящему важных аккаунтов рекомендуется именно он.
— Гарантирует-ли двухфакторная аутентификация абсолютную безопасность?
— Хакеры всегда учатся, и, в конечном итоге, они могут взломать и ключи 2FA. Приложения для отзеркалирования сообщений, которые могут видеть ваши тексты, уже существуют. А теперь появились и голосовые боты, крадущие коды двухфакторной аутентификации. Однако, согласно недавней статистике, 99,9% взломанных аккаунтов не использовали 2FA в качестве защитной меры. Это говорит о том, что текущая целевая аудитория киберпреступников представляет собой «легких пользователей», пользующихся классическими возможностями идентификации.
Безусловно, ни один метод входа в систему не является полностью надежным, но, на сегодняшний день, двухфакторная аутентификация, однозначно, является безопаснее альтернатив. Чтобы обойти 2FA, злоумышленнику придется прервать два цикла идентификации, а не один. Эта особенность поможет выиграть время и обнаружить взлом на раннем этапе.
2FA не отменяет необходимости придумывать или генерировать сложные пароли, которые нельзя подобрать.
— Где стоит включить двухфакторную аутентификацию?
— Старайтесь использовать ее там, где возможно, особенно для самых ценных аккаунтов. Двухфакторная аутентификация — это дополнительная мера защиты при входе в свой аккаунт на новом устройстве или после выхода из профиля.
— Можно ли самостоятельно увидеть утечку своих данных?
— Есть сайты, которые собирают информацию о публичных утечках, базы утекших аккаунтов и дают пользователям возможность проверить свой почтовый адрес на предмет наличия в этих базах, например https://haveibeenpwned.com/.
Менеджеры паролей обычно помогают не только безопасно хранить пароли, но и отслеживать, попали ли они в какую-то из утечек данных. Такая функция есть, например, у сервисов 1Password, Keeper и Dashlane.
— Что делать, если ваши данные слили?
— 1. Проверьте достоверность утечки. Все чаще объявления об утечке данных используют мошенники для фишинга: они присылают панические сообщения о скомпрометированных данных и побуждают действовать на эмоциях. Главное — успокоиться и оценить ситуацию.
2. Оцените, какие именно данные скомпрометированы. От этого зависит, какие именно действия предпринимать. Одно дело — просто попавший в публичное поле адрес электронной почты или даже номер телефона. Совсем другое — платежные данные или физический адрес с подробностями.
3. Если слитой базы данных нет в публичном доступе — например, ее продают в даркнете — то оцените риски самостоятельно. В случае с «Яндекс-едой» или СДЭК вы, вероятно, понимаете, что указывали при заполнении профиля или оформлении доставки.
4. Не вводите свои данные в сторонние сервисы проверки. Некоторые масштабные утечки сопровождаются публикацией клиентской базы в наглядном виде, как это было в случае с «Яндексом». Многие тут же решали проверить на сайте, попали ли их данные в общий список — и вводили свои имена и номера телефонов. Лучше этого не делать: таким образом злоумышленники могут только пополнить свой каталог или подтвердить актуальность полученной информации.
5. Смените пароли — не только для профилей, попавших в утечку. Вполне вероятно, что вы не придумываете уникальные пароли для каждого сервиса, а используете ротацию из нескольких, которые помните и считаете надежными. В таком случае лучше сменить все совпадающие пароли, а не обойтись одним профилем.