Light mode

Наследие SIM-карт: какие угрозы таит реинкарнация утраченного номера

  • #Уязвимости

О чем статья 

Представьте, что вы утратили доступ к номеру мобильного телефона. На первый взгляд, звучит не так уж страшно: покупаем новую SIM-карту, и дело с концом. Но что если после того, как ваш номер вновь поступит в продажу, новый владелец попробует авторизоваться в сервисах, которыми вы пользовались? Чтобы ответить на этот вопрос, мы провели эксперимент...

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

Рисунок 1. Авторизация по номеру мобильного

Что произойдет, если вы перестанете пользоваться своим номером? Спустя определенное время бездействия SIM-карта будет заблокирована (как правило, от 60 до 365 дней в зависимости от оператора и тарифа). Затем ваш номер вновь поступит в продажу, и его сможет приобрести другой человек. 

А что будет, если новый владелец номера попробует войти в сервисы, где ранее регистрировались вы? Давайте разбираться!

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

User enumeration

Для начала поговорим о способе получения активных логинов путем их перечисления — user enumeration. Представим попытку авторизации: вводим номер телефона, в ответ получаем сообщение «Введите код из СМС». Если к номеру еще не привязана учетная запись, система оповестит: «Пользователь не найден».

Тот факт, что ответы отличаются по содержанию, является недостатком с точки зрения ИБ. Благодаря этому злоумышленник может сделать вывод, существует ли в системе аккаунт, привязанный к введенному номеру телефона. Аналогичные сообщения также встречаются в формах регистрации и восстановления пароля (см. рис. 2).

12.png
Рисунок 2. Форма восстановления пароля

Отметим, что подобные проверки можно автоматизировать с помощью специальных скриптов. Таким образом злоумышленники могут заранее составить список номеров, к которым привязаны существующие аккаунты, и не покупать бесполезные SIM-карты. 

Эксперимент

Мы составили список из 80 популярных в России онлайн-сервисов и приложений, и 56 из них поддерживали авторизацию по номеру телефона и коду из СМС. Половина этих сервисов также требовали ввести пароль, но позволяли сбросить его с помощью СМС-кода. Для упрощения задачи мы исключили из выборки личные кабинеты мобильных операторов и приложения, у которых нет браузерных версий. В итоге осталось 38 сервисов, и для 12 из них можно было применить технику user enumeration.

Для удобства мы разделили сервисы на категории: 24% из них — это всевозможные личные кабинеты на сайтах компаний (такси, медицинских лабораторий, авиакомпаний и др.), следом идут интернет-магазины и аптеки (16%), а также сервисы доставки готовой еды и продуктов питания (16%). В отдельную категорию мы выделили сервисы SSO (10%), предоставляющие единый аккаунт для всех приложений той или иной компании.

Рисунок 3. Категории онлайн-сервисов

Далее мы решили приобрести 100 SIM-карт у пяти крупных операторов. Для чистоты эксперимента купили 30 штук («белые») в салонах сотовой связи, 50 («серые») — через каналы в Telegram, а еще 20 (виртуальные) планировали арендовать через специализированные онлайн-сервисы, но в итоге удалось приобрести только 15. Таким образом, в эксперименте было задействовано 95 номеров.

Настал момент проверить возможность авторизации в каждом из 38 приложений. Мы посчитали: если работать вручную и тратить примерно 5 минут на проверку каждого аккаунта, эксперимент продлится около 13 суток. Чтобы сэкономить время, мы купили SIM-бокс (устройство для приема/передачи СМС и совершения звонков) на восемь SIM-карт с поддержкой 2G, который позволил принимать сообщения с паролями сразу на несколько номеров.

После проверки 20% номеров мы скорректировали выборку и сократили список до 13 сервисов с самой высокой вероятностью успешной аутентификации. Благодаря оптимизации и использованию SIM-бокса мы справились всего за день! Отметим, что злоумышленники тоже стремятся оптимизировать свои действия, поэтому выбранный нами подход хоть и менее точен, зато более приближен к реальности.

Что мы выяснили

В ходе эксперимента мы узнали, что 43% купленных номеров уже использовались для регистрации в сервисах из нашего списка. Из них для 37% номеров удалось подтвердить наличие активного аккаунта хотя бы в одном сервисе, в остальных случаях (6%) ранее созданные аккаунты были заблокированы. Таким образом, в каждом третьем случае мы обнаружили незаблокированный аккаунт прежнего владельца (см. рис. 4). 

Рисунок 4. Результаты эксперимента

Отметим, что в каждом четвертом случае (27%) была подтверждена возможность входа в аккаунты прежних владельцев как минимум для двух сервисов (см. рис. 5).

Рисунок 5. Количество сервисов, в которые можно войти с аккаунтом прежнего владельца

Продавцы «серых» SIM-карт дали нам рекомендации по выбору операторов, номера которых лучше подходят для нашей задачи. Фактические результаты эксперимента их подтвердили!

У двух операторов доля успешных подтверждений возможности авторизации оказалась выше, чем у остальных. Более половины номеров этих операторов (52% и 60% соответственно) позволяли авторизоваться хотя бы в одном сервисе, у других этот показатель не превышал 40%. 

Отметим, что лишь один из операторов оперативно блокировал SIM-карты при обнаружении подозрительной активности. Как результат, успешная авторизация была возможна только для одного из 18 номеров. При этом блокировка происходила довольно быстро — СМС с одноразовыми паролями переставали приходить спустя всего несколько попыток. 

Кроме того, мы установили, что при попытке входа в личный кабинет два из пяти операторов раскрывают Ф. И. О. пользователя. Таким образом, злоумышленник, воспользовавшийся «серым» номером для проведения атаки, сможет также использовать персональные данные прежнего владельца.

Рисунок 6. Статистика по операторам

При этом вероятность успешной авторизации не зависит от категории SIM-карты (см. рис. 7).

Рисунок 7. Разбивка по категориям SIM-карт

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

Аккаунты

Мы подтвердили возможность доступа к 57 аккаунтам прежних владельцев номеров телефонов. При этом ни в одном из исследованных случаев не была подтверждена возможность доступа к банковскому аккаунту.

Рисунок 8. Категории сервисов, для которых была подтверждена возможность доступа к аккаунтам
  • Для 43% номеров были обнаружены аккаунты прежних владельцев, причем в 37% случаев они были активными.
  • Каждое третье приложение позволяло применить технику user enumeration. Нам удалось частично автоматизировать проверку и сократить время проведения эксперимента.
  • Только один из пяти мобильных операторов оперативно реагировал на подозрительную активность и блокировал попытки входа в аккаунты.

Рекомендации

Для пользователей

  • Сохраняйте доступ к своим номерам, не теряйте SIM-карты.
  • Вовремя пополняйте баланс и совершайте как минимум одно платное действие раз в три месяца (СМС или звонок).
  • Если доступ к номеру утрачен и нет возможности быстро его восстановить, перепривяжите ваши аккаунты к другому номеру.
  • Для критически важных приложений (мессенджеры, соцсети, онлайн-банки) используйте дополнительные способы авторизации (например, через email).
  • Настройте двухфакторную аутентификацию с помощью генератора одноразовых паролей (например, Google Authenticator). Откажитесь от входа через СМС там, где это возможно.
  • Не предоставляйте мобильным приложениям разрешения на чтение СМС.
  • Никому не сообщайте одноразовые пароли.
  • При обнаружении подозрительной активности сразу обращайтесь в службу поддержки конкретного приложения или мобильного оператора.

Для мобильных операторов

  • Уведомляйте пользователей о скорой блокировке номера по электронной почте и через альтернативный номер телефона (второй личный номер или номер доверенного лица). Лучше, чтобы таких уведомлений было несколько: за 30 дней, за две недели и непосредственно перед блокировкой.
  • Реализуйте возможность восстановления доступа к номеру телефона на сайте или в мобильном приложении. Ситуация, когда пользователи вынуждены звонить в службу поддержки или обращаться в салоны связи, усложняет этот процесс.

Видеоверсию материала ищите на канале Positive Hack Media.

Мы дěлаем Positive Research → для ИБ-экспертов, бизнеса и всех, кто интересуется ✽ {кибербезопасностью}