Часть 1. Что такое TOTP
Нет, я не опечатался, и сегодняшний пост не про ТОРТ 🎂
Продолжаем разбирать методы защиты своих учётных записей с помощью двухфакторной аутентификации (начало здесь и тут).
TOTP — это Time-based One-Time Password algorithm, или алгоритм для создания одноразовых паролей, основанных на времени. Использование в быту проще, чем название, и надёжнее, чем SMS.
Как это выглядит?
Вы устанавливаете себе на смартфон специальное TOTP-приложение — генератор одноразовых паролей, привязываете его к защищаемому сервису (ваша почта, соцсеть и т.п.), и тогда при входе в свою учётную запись после ввода логина-пароля система будет просить вас ввести одноразовый код из этого TOTP-приложения (как код из SMS).
Почему это надёжно?
- Мало того, что код одноразовый, так он ещё и меняется каждые 30 секунд. Подобрать его из-за этого по сути невозможно (он раньше устареет), и даже его потенциальный перехват осложняет проведение атаки на вас (нужно будет её завершить менее, чем за 30 секунд, пока код не сменился).
- В отличие от кода из SMS нет привязки к SIM-карте. Огромное преимущество, сразу минус один жирный вектор атаки: используя TOTP, вы защищены от подмены SIM-карты.
- Как следствие предыдущего пункта — нет необходимости привязывать свой номер телефона к учётной записи. Не страдает ваша анонимность, и меньше звонков из службы безопасности Сбербанка.
- Все одноразовые коды всегда у вас в приложении, не возникнет ситуации "смс не приходит". TOTP-приложение полностью автономно — ни мобильная сеть, ни Интернет для работы не требуются. В определённых условиях это может здорово облегчить жизнь.
Часть 2. Приложения для TOTP
Примеры популярных TOTP-приложений:
1. Google Authenticator
2. Яндекс Ключ
3. Authy
4. Microsoft Authenticator
Работают они все по одному алгоритму, поэтому выбор — дело вкуса.
Как всё это настроить?
1️⃣ Устанавливаем TOTP-приложение на смартфон.
2️⃣ В настройках учётной записи почты, соцсети и т.п. включаем использование 2FA по TOTP. Обычно это где-то в настройках безопасности.
3️⃣ Сервис покажет QR-код. Сохраните его прямо сейчас‼️ Он понадобится для восстановления доступа, если что-то случится со смартфоном.
4️⃣ В приложении выбираем пункт "Добавить" и сканируем QR-код. В результате сервис добавится в приложение (появится его название и текущий одноразовый код).
5️⃣ Сервис попросит ввести текущий одноразовый код, чтобы убедиться, что всё сделано верно.
6️⃣ Бинго! Теперь при каждом входе в учётку после пароля нужно будет вводить код из TOTP-приложения. Вы сделали свою аутентификацию неудобной безопасной.
Отмечу и минусы использования TOTP
- Да, это менее удобно. Безопасность и удобство почти всегда — антагонисты. Но уровень защищённости, который ваша учётка получает, однозначно того стоит.
- Ответственность за сохранность QR-кода от TOTP — полностью на вас. Относиться к этому нужно так же, как к сохранности паролей.
- TOTP-приложение установлено на смартфоне, т.ч. это всё ещё объединение двух факторов аутентификации (логин-пароль и одноразовый код) в одном месте. Это риск при заражении смартфона или попадании его не в те руки. Можно использовать для TOTP отдельный смартфон, но вы правда будете так делать?
- Список ваших сервисов хранится в TOTP-приложении, что создаёт риск утечки этой информации к разработчикам приложения/операционной системы.
- Ваша почта, соцсеть и т.п. должны поддерживать 2FA по TOTP. К счастью, всё больше сервисов идут этим правильным путём.
Часть 3. Меры безопасности
Безопасность должна быть безопасной (с)
Поэтому при использовании одноразовых паролей важно знать следующие вещи:
- Надёжно сохраните QR-код. Если потеряете его — рискуете лишиться доступа. Если его подсмотрит злоумышленник — лишитесь этого фактора защиты (и в отличие от подмены SIM-карты даже не узнаете об этом до поры). Я советую сделать несколько копий на бумаге и хранить их в разных местах.
- Если всё же потеряли QR-код (все копии), но у вас в руках телефон с вашим TOTP-приложением, то вы сейчас в ситуации, когда всё работает, но без страховки. Советую в этом случае в настройках вашей почты/соцсети отключить 2FA по TOTP и включить заново (сгенерируется новый QR-код, сохраните его).
Оставаться без резервной копии чревато полной потерей доступа. В крайнем случае можно будет доказывать поддержке сервиса, что вы — это вы, но пройдёте семь кругов ада, лучше не доводить. Подтверждено опытом многих пользователей. - Однажды можете столкнуться с ситуацией, когда вводимые вами TOTP-коды перестанут работать. Не паникуйте. С вероятностью 99,9% произошла рассинхронизация времени между вашим TOTP-приложением и защищаемым сервисом.
Как вы помните, TOTP-коды меняются каждые 30 секунд, и для корректной работы их часы должны быть синхронизированы точнее, чем у разведчиков на задании. Восстановить синхронизацию времени можно нажатием одной кнопки в настройках вашего TOTP-приложения.
Подводя итоги
Использование TOTP — это самый лучший по соотношению эффективность/доступность метод повышения защищённости ваших учётных записей‼️ Его немногие недостатки с лихвой компенсируются получаемым уровнем безопасности.
📌 Один из лучших прикладных советов по информационной безопасности, который я могу вам дать: включите двухфакторную аутентификацию через TOTP везде, где это возможно!
================
Полная версия блога "Цифровой чай" – в Telegram. Подписывайтесь.