Шесть цифр — типичный объём SMS-кода для подтверждения входа. По данным Федеральной торговой комиссии США, код обычно действует для одной попытки входа и автоматически истекает.
Ограниченный срок действия снижает риск повторного использования, однако не устраняет подмену SIM-карты, перехват сообщений оператором и поддельную страницу, которая в реальном времени попросит код у пользователя.
Практический выбор выглядит так: passkey или аппаратный ключ безопасности, если сервис их поддерживает; приложение-аутентификатор — при их отсутствии; SMS-код — если сервис предлагает только этот вариант. Приложение убирает зависимость от SMS-канала, но одноразовый код из него по-прежнему можно выманить фишингом. Ниже — алгоритм выбора с учётом реальных рисков, восстановления доступа и настройки резервных методов.
Почему SMS остаётся уязвимым звеном
При входе сервис отправляет код на привязанный номер телефона. Пользователь вводит его наряду с паролем. Система работает по простой схеме, а пользователю почти не требуется подготовка. Именно эта простота обеспечила SMS-аутентификации массовое распространение.
Главная проблема находится между сервисом и телефоном. Если злоумышленник перехватит сообщение, он получит готовый код подтверждения. При SIM-swap номер переносят на другую SIM-карту, после чего сообщения начинают приходить злоумышленнику. FTC прямо относит такую подмену к сценариям, при которых возможен перехват кода подтверждения.
Короткое время действия кода здесь помогает лишь частично. Если код уже отправлен, его можно передать злоумышленнику до истечения срока. Перехват не обязан ждать повторного входа.
Есть и вторая проблема: SMS не зашифрованы, а сам способ входа через SMS не устойчив к фишингу. Пользователь может открыть поддельный сайт, ввести пароль, после чего получить сообщение с настоящим кодом. Если он передаст этот код преступнику, цифровая подпись сообщения не спасёт: злоумышленник уже находится внутри процесса подтверждения.
NIST оценивает риски шире. В актуальной редакции SP 800-63B-4 использование телефонной сети PSTN для внеполосной аутентификации отнесено к ограниченным методам. Среди учитываемых рисков указаны замена устройства или SIM-карты и перенос номера. Это техническая классификация, а не запрет для обычного пользователя. Практический вывод остаётся прямым: привязка безопасности аккаунта к номеру телефона создаёт зависимость от оператора и процедуры смены SIM.
Руководство CISA по мобильным коммуникациям, датированное 18 декабря 2024 года, рекомендует переходить с SMS MFA на другие методы. Аргумент FTC и CISA совпадает: SMS проще массово внедрить, но сложно считать полноценной защитой чувствительного аккаунта.
SMS-код автоматически истекает, но подмена номера и фишинг действуют внутри срока его действия.
Что меняет приложение-аутентификатор
Типичный аутентификатор, например Google Authenticator, генерирует временный цифровой код по алгоритму TOTP. Секрет для вычисления кода хранится на устройстве. Сервис проверяет введённое значение, а оператор связи в процессе подтверждения не участвует.
В этом и состоит практическое преимущество. Перехват SMS через SIM-swap не раскрывает код приложения. Взлом почты также не даёт содержимое такого кода, поскольку оно не пересылается письмом. FTC формулирует это осторожно: коды приложений не подвержены перехвату через SIM-swap или компрометацию почты так же, как коды, отправленные по соответствующим каналам.
Приложение создаёт отдельный контур безопасности. Пользователь может защищать банковский аккаунт, даже если номер телефона временно переведён на другую SIM-карту. Это не означает, что устройство можно считать неуязвимым. При разблокированном телефоне злоумышленник может получить доступ и к приложению, и к подтверждениям.
Граница защиты приложения
Код из приложения можно выманить. Мошенническая страница способна запросить имя пользователя, пароль и цифры из аутентификатора, а затем передать их преступнику. Сервис увидит корректный код и завершит вход.
Следовательно, приложение закрывает риск подмены SIM и зависимость от SMS-доставки, но оставляет риск поддельного интерфейса. Защита пользователя здесь состоит из двух элементов: проверки адреса сайта и отказа сообщать код посторонним.
NIST SP 800-63B-4 ограничивает и повторное использование внеполосного секрета. В рамках требований к системе секрет принимается один раз, а завершение аутентификации должно произойти не позднее десяти минут. Для коротких секретов ограничивается число последовательных неудачных попыток. Такие меры сокращают окно атаки и затрудняют перебор, хотя живой фишинг по-прежнему возможен.
Push-подтверждение и FIDO
Push-запрос в приложении следует рассматривать отдельно. Нажатие кнопки «Да» само по себе не доказывает, что запрос originated by the legitimate service. Пользователь должен проверять название аккаунта, устройство, адрес сайта и характер операции. Универсального правила «push безопаснее SMS» здесь нет.
Более устойчивая схема — FIDO-аутентификация. CISA называет phishing-устойчивыми методы на основе passkey и ключей безопасности. При таком подходе сервис проверяет криптографическую подпись, связанную с конкретным источником входа. Поддельный сайт получает бесполезный для атаки результат, даже если пользователь перенаправит туда данные.
Если сервис предлагает passkey или аппаратный ключ, этот вариант следует рассматривать отдельно от кодового приложения. Он даёт более строгую защиту от фишинга, но требует поддержки со стороны сервиса и наличия подходящего устройства.
Приложение-аутентификатор устраняет зависимость от SMS-канала, но одноразовый код по-прежнему нужно защищать от поддельной страницы входа.
Сравнение по реальным рискам
Код из приложения и SMS решают одну задачу, но имеют разный профиль отказа. Для выбора нужны не маркетинговые формулировки, а модель угроз конкретного пользователя.
| Критерий | SMS-код | Код из приложения |
|---|---|---|
| Получение кода | Через оператора связи по номеру телефона | Вычисляется приложением на устройстве |
| Зависимость от SIM-swap | Прямая: код может прийти злоумышленнику | SIM-swap не раскрывает код приложения |
| Устойчивость к фишингу | Низкая | У кодового TOTP-варианта тоже низкая |
| Взлом электронной почты | Не раскрывает SMS, но почта может использоваться для восстановления | Не раскрывает код, если почта не служит каналом восстановления |
| Потеря телефона | Возможна вместе с SIM-картой или номером | Возможна вместе с доступом к устройству и резервными кодами |
| Работа без сети | Нужна доставка SMS оператором | TOTP обычно рассчитывается локально; push-запрос требует сети |
| Настройка | Часто уже доступна в аккаунте | Нужна установка приложения и подтверждение устройства |
| Восстановление доступа | Обычно привязано к номеру и оператору | Зависит от резервных кодов, второго устройства и настроек сервиса |
| Ограничения стандартов | PSTN отнесён к ограниченным методам NIST | Кодовые методы лучше, но phishing-устойчивость обеспечивают прежде всего FIDO-методы |
Самая опасная ошибка — считать установленное приложение полной заменой SMS без проверки настроек. Служба может оставить SMS как резервный способ входа или восстановления. FTC специально отмечает: включение аутентификатора не гарантирует, что SMS-подтверждение останется отключённым. Если номер сохранён как запасной канал, риск SIM-swap продолжает существовать.
Для большинства аккаунтов код из приложения предпочтительнее SMS. Но преимущество проявляется только при соблюдении двух условий: устройство с приложением защищено, а резервный канал не создаёт вторую точку отказа. Если доступ к аккаунту восстанавливается через тот же номер, который злоумышленник может перехватить, система сохраняет уязвимое звено.
Алгоритм выбора для личных аккаунтов
1. Начать с электронной почты
FTC рекомендует сначала включить двухфакторную аутентификацию для электронной почты, банковских и платёжных сервисов. Почта занимает первое место практически по той же причине, по которой её часто атакуют: через неё восстанавливают доступ к другим аккаунтам.
Откройте настройки безопасности самой почты и посмотрите доступные методы. Если сервис поддерживает passkey или ключ безопасности, выбирайте этот уровень. Затем проверьте, какие устройства привязаны, какие номера используются для восстановления и можно ли отключить резервные методы.
2. Выбрать кодовое приложение, если FIDO недоступно
Для сервисов без passkey и аппаратного ключа установите приложение-аутентификатор и перенесите в него вход. Проверяйте домен сервиса до ввода секрета: переход по ссылке из сообщения часто приводит на поддельную страницу.
После подключения протестируйте вход. Выйдите из аккаунта, откройте его в приватном окне, запросите код и убедитесь, что приложение выдаёт рабочее значение. Такой тест сразу обнаруживает неверную привязку или сбой настройки.
3. Подготовить восстановление до отключения SMS
Если сервис позволяет выбрать резервный метод, сделайте это до удаления SMS. Используйте отдельные одноразовые коды, если сервис их выдаёт, и храните их в управляемом менеджере паролей либо в офлайн-контуре. Не оставляйте их в заметках, мессенджерах или на рабочем компьютере.
Если номер остаётся резервным каналом, его нужно защищать отдельно. У оператора стоит включить PIN-код и уведомления о замене SIM-карты, если такие настройки доступны. Резервный SMS остаётся частью модели риска, пока привязан к номеру.
4. Убрать лишние устройства и способы входа
Проверьте список активных сессий, доверенных телефонов и адресов восстановления. Удалите старые устройства и номера, которыми пользователь больше не владеет. Лишний привязанный телефон может оставаться каналом входа даже после установки нового аутентификатора.
5. Соблюдать простую процедуру при каждом входе
Код из приложения вводится только на подтверждённом сайте или в официальном приложении сервиса. Если сомнение возникает во время входа, запрос кода останавливается. Переход на главную страницу сервиса через сохранённую закладку снижает риск подмены адреса.
FTC отдельно предупреждает о передаче кода подтверждения по просьбе посторонних. Это правило распространяется и на push-подтверждения: автоматическое нажатие по запросу поддержки недопустимо.
Типовые ошибки при настройке
Приложение установлено, но резервный SMS не отключён. Пользователь видит более защищённый интерфейс, хотя номер остаётся доступен для атаки. После настройки нужно открыть раздел резервных способов и проверить состояние каждого метода.
Код приложения вводится на поддельном сайте. Фишинг работает одинаково при SMS, TOTP и большинстве кодовых схем. Проверка домена до ввода пароля и кода остаётся обязательным действием.
Push-запрос подтверждается без проверки. Входящее уведомление может быть ложным или относиться к другой сессии. Сверяются сервис, устройство, операция и адрес страницы.
Резервные коды хранятся в открытом виде. Один скриншот или сообщение самому себе создают копию, которая переживёт потерю телефона. Для хранения подходит менеджер паролей или отдельное офлайн-хранилище.
Вход зависит от единственного устройства. Потеря телефона, сброс настроек или блокировка аккаунта превращают аутентификатор из защиты в препятствие. Второй способ восстановления должен быть настроен заранее.
Один аутентификатор обслуживает десятки аккаунтов. Это удобно с точки зрения управления, но повышает ценность взлома одного устройства. Аппаратный ключ или passkey снижаетность такого риска. Критические аккаунты можно вынести в отдельный контур подтверждения.
Итог
Если доступен FIDO-метод, выбор очевиден: passkey или аппаратный ключ безопасности. Они устойчивее к фишингу, чем одноразовые коды.
При их отсутствии приложение-аутентификатор лучше SMS: код не зависит от оператора и не раскрывается при подмене SIM-карты. Его главный остаточный риск — передача кода через поддельный интерфейс.
SMS остаётся резервным вариантом для сервисов, которые не предлагают другую защиту. FTC отмечает: если доступны только SMS или электронная почта, такой второй фактор лучше полного его отсутствия.
Рабочая конфигурация выглядит последовательно: passkey или аппаратный ключ для критических аккаунтов, приложение-аутентификатор для остальных, резервные коды в безопасном хранилище и SMS только там, где выбора нет. Главный критерий — не число включённых методов, а отсутствие слабого звена в восстановлении доступа.