Как взломать Telegram и WhatsApp
Мы решили проверить, действительно ли нужно быть спецслужбой, чтобы получить доступ к чужому аккаунту Telegram. Для этого мы зарегистрировали тестовый аккаунт Telegram, обменялись несколькими тестовыми сообщениями:
А затем мы провели атаку через сеть SS7 на один из тестовых номеров.
И вот что у нас получилось:
Сначала узнаем IMSI…
Перерегистрируем абонента на наш терминал…
Получаем профиль абонента…
Завершаем процедуру перерегистрации абонента…
Теперь номер жертвы под полным нашим контролем. Инициируем на любом девайсе процедуру подключения к Telegram под аккаунтом жертвы (номер телефона) — и получаем заветную SMS…
После ввода кода мы получаем полноценный доступ к аккаунту Telegram. Теперь мы можем не только вести переписку от имени жертвы, но и прочитать всю переписку, которую клиент Telegram любезно подгружает (телефон справа имеет полную копию переписки телефона слева):
Можно создать новый чат — и переписываться от имени жертвы:
После этого мы провели атаку по той же схеме на WhatsApp. Доступ к аккаунту мы конечно же получили, но так как WhatsApp (якобы) не хранит историю переписки на сервере, получить доступ к переписке, которая была ранее, не удалось. WhatsApp хранит backup переписки в Google Drive, поэтому для получения доступа к ней необходимо ещё взломать аккаунт Google. Зато вести переписку от имени жертвы, так что она не будет об этом знать – вполне реально:
Выводы: уж сколько раз твердили миру, что передача одноразовых кодов посредством SMS — небезопасна, так как мобильная связь в целом небезопасна. Уязвимость подвержена не только технологическая сеть SS7, но и алгоритмы шифрование радиоинтерфейса. Атаки на сеть SS7 можно осуществлять из любой точки мира, а возможности злоумышленника не ограничиваются взломом менеджеров. И сейчас все эти атаки становятся доступны не только спецслужбам, но и многим другим. Стоит также отметить, что все тесты проводились с настройками по умолчанию, то есть в режиме, в котором работает большинство пользователей.