Двухфакторная аутентификация

Защита

Чем отличаются три способа подтверждения входа, почему SMS хуже остальных и что делать с резервными кодами до того, как потеряется телефон.

Пароль — это то, что вы знаете. Второй фактор — то, чем вы владеете: телефон, приложение, физический ключ. Смысл в том, что украденного пароля становится недостаточно: злоумышленник знает секрет, но не держит в руках ваше устройство.

Это единственная мера, которая работает даже тогда, когда пароль уже утёк. Поэтому её стоит включить раньше, чем менять пароли.

Три способа и разница между ними

SMS — лучше, чем ничего

Код приходит сообщением на номер. Способ доступен везде и не требует настройки, но у него есть слабое место: номер можно увести. Схема называется подменой сим-карты — злоумышленник восстанавливает «потерянную» карту по документам или через сотрудника салона связи, и коды начинают приходить ему.

Отдельная проблема — роуминг и отсутствие сети: код не придёт тогда, когда он нужнее всего.

Приложение-аутентификатор — разумный выбор

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

Увести код можно только вместе с телефоном или через поддельный сайт, куда вы сами его введёте. Против подмены сим-карты способ неуязвим.

Важная деталь при настройке: сохраните секретный ключ или QR-код, который показывают при подключении. С ним вы восстановите доступ на новом телефоне без обращения в поддержку.

Аппаратный ключ — максимум

Физическое устройство, которое вставляют в порт или прикладывают к телефону. Оно проверяет адрес сайта криптографически, поэтому поддельная страница не сработает в принципе: ключ просто не ответит домену, для которого не зарегистрирован.

Это единственный способ, устойчивый к фишингу. Минусы — цена, необходимость носить с собой и обязательный второй ключ на случай потери первого.

Откуда приложение знает код, если оно не в сети

При подключении сервис показывает QR-код, внутри которого лежит общий секрет — случайная строка. Приложение сохраняет её у себя, сервис — у себя. Больше они не обмениваются ничем.

Дальше обе стороны берут текущее время, округляют его до тридцатисекундного шага и считают HMAC-SHA1 от этого числа с общим секретом. Из результата вырезаются шесть цифр. Поскольку время у всех одинаковое, а секрет общий, код совпадает без единого запроса в сеть.

Отсюда два практических следствия. Первое: приложение работает в самолёте и без симкарты. Второе: если часы на телефоне сильно сбились, коды перестают подходить — проверьте автоматическую сверку времени.

Резервные коды: сделайте это сразу

При включении второго фактора сервис выдаёт список одноразовых кодов. Их выдают один раз, и это единственный способ войти, когда телефон утерян, разбит или сброшен.

Типичная ошибка — сохранить их скриншотом в галерею того же телефона. Когда телефон пропадёт, пропадут и коды.

Храните их в менеджере паролей — он синхронизируется между устройствами — или распечатайте и положите к документам. Проверьте, что коды действительно сохранились, до того как они понадобятся.

Где включать обязательно

Почта. Через неё восстанавливают всё остальное, поэтому это первый пункт, а не последний.

Банк и госуслуги. Там второй фактор часто уже обязателен, но стоит проверить, что это не SMS.

Менеджер паролей. Хранилище со всеми паролями — очевидная цель.

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

Что второй фактор не защищает

Он бесполезен против поддельных сайтов, если вы сами вводите код на странице злоумышленника — тот передаёт его настоящему сервису в реальном времени. Спасает здесь только аппаратный ключ или привычка проверять адрес в строке браузера.

Он также не заменяет надёжный пароль: это второй рубеж, а не замена первого.

Скопировано