Почему SMS стал стандартом
Код в SMS понятен каждому: телефон есть у всех, приложение ставить не нужно, вводится шесть цифр. Для сервиса это самый простой способ подтвердить, что человек владеет номером, поэтому его используют при регистрации, входе, платежах и восстановлении доступа. Как второй фактор он лучше, чем полное отсутствие: украденного пароля уже недостаточно.
Но удобство куплено ценой надёжности. SMS создавалась как способ передать короткое сообщение, а не как защищённый канал. Сообщение доходит через инфраструктуру оператора, проходит через промежуточные системы и попадает на экран устройства, где его видят все, кто им пользуется.
Какие атаки известны
Самая массовая это подмена SIM, когда преступник убеждает оператора или сотрудника перевыпустить SIM-карту на своё устройство, после чего сообщения приходят ему. Этому посвящена отдельная страница про SIM swap. Вторая группа это слабости сигнализации сотовых сетей: описаны методы перехвата сообщений злоумышленниками с доступом к сетевой инфраструктуре, что редко угрожает обычным людям, но актуально для целевых атак.
Третья группа это вредоносные приложения на телефоне с доступом к сообщениям, читающие код и пересылающие его. Наконец, обычный фишинг: поддельная страница просит ввести код и передаёт его настоящему сервису, пока код действителен. Здесь SMS ничем не хуже и не лучше других кодов.
Практические слабости повседневного уровня
Часть проблем банальна. Код показывается на экране уведомлений, его видят окружающие. Сообщения синхронизируются с планшетом, часами и компьютером, и защита каждого из этих устройств влияет на общую. Номер телефона со временем передаётся другому человеку: если вы отказались от номера, новый владелец способен получить коды к аккаунтам, привязанным к нему.
Дополнительно SMS зависит от покрытия сети, за границей возможны задержки и доп. расходы на роуминг, а при потере или отключении SIM доступ к аккаунтам пропадает вместе с ней.
Когда SMS приемлем и чем его заменить
Для аккаунтов с невысоким риском лучше SMS, чем ничего. Он приемлем как запасной способ или как единственный доступный. Но для почты, финансовых сервисов и всего, через что восстанавливаются другие аккаунты, разумнее выбрать приложение-аутентификатор, аппаратный ключ или passkey.
Заодно снизьте риск номера. Установите у оператора пин-код или запрет на перевыпуск SIM без личного присутствия, если такая услуга есть. Отключите отображение содержимого сообщений на заблокированном экране и не привязывайте важные аккаунты к номеру, которым вы можете перестать пользоваться.
Как проверить свои настройки
Зайдите в настройки безопасности основных аккаунтов и посмотрите, какие способы подтверждения включены. Если единственный способ SMS, добавьте приложение-аутентификатор и резервные коды. Проверьте, что номер актуален и к нему нет посторонних устройств с доступом к сообщениям.
Если пришёл код, который вы не запрашивали, это сигнал: кто-то пытается войти в аккаунт с вашим паролем. Не пересылайте код никому, смените пароль, проверьте активные сессии.
Как отличить настоящий запрос от мошеннического
Настоящее сообщение с кодом приходит тогда, когда вы сами начали вход или операцию, и содержит название сервиса и предупреждение не сообщать код. Если код пришёл без вашего действия, кто-то пробует ваши данные. Если вам звонят и просят продиктовать код, вы говорите не с сервисом: у настоящих служб нет причин просить его.
Часто мошенники создают срочность: обещают отменить подозрительную операцию, вернуть деньги, подтвердить доставку. Любое требование назвать код по телефону или отправить его в мессенджер это повод закончить разговор. Сообщения с кодом лучше не пересылать даже близким, а если сервис в тексте указывает, для чего предназначен код, сверьте с тем, что делаете сейчас.
Если вы регулярно ездите за границу, заранее проверьте, как будет работать приём сообщений в роуминге, и держите резервный способ входа. Аутентификатор на телефоне не зависит от связи, и для поездок это дополнительное удобство.