Как взломать Telegram и WhatsApp: спецслужбы не нужны
На прошлой неделе общественность взбудоражила новость о возможной причастности спецслужб к взлому аккаунтов оппозиционеров в популярном мессенджере Telegram. На протяжении своего существования человечество пыталось объяснить всё необъяснимое с помощью высших сил – Богов. В наше время все непонятные вещи объясняют происками спецслужб.
Мы решили проверить, действительно ли нужно быть спецслужбой, чтобы получить доступ к чужому аккаунту Telegram. Для этого мы зарегистрировали тестовый аккаунт Telegram, обменялись несколькими тестовыми сообщениями:
А затем мы провели атаку через сеть SS7 на один из тестовых номеров. И вот что у нас получилось:
Сначала узнаем IMSI…
Перерегистрируем абонента на наш терминал…
Получаем профиль абонента…
Завершаем процедуру перерегистрации абонента…
Теперь номер жертвы под полным нашим контролем. Инициируем на любом девайсе процедуру подключения к Telegram под аккаунтом жертвы (номер телефона) — и получаем заветную SMS…
После ввода кода мы получаем полноценный доступ к аккаунту Telegram. Теперь мы можем не только вести переписку от имени жертвы, но и прочитать всю переписку, которую клиент Telegram любезно подгружает (телефон справа имеет полную копию переписки телефона слева):
Однако прочитать секретные чаты невозможно. Но можно создать новый — и переписываться от имени жертвы:
После этого мы провели атаку по той же схеме на WhatsApp. Доступ к аккаунту мы конечно же получили, но так как WhatsApp (якобы) не хранит историю переписки на сервере, получить доступ к переписке, которая была ранее, не удалось. WhatsApp хранит backup переписки в Google Drive, поэтому для получения доступа к ней необходимо ещё взломать аккаунт Google. Зато вести переписку от имени жертвы, так что она не будет об этом знать – вполне реально:
Выводы: передача одноразовых кодов посредством SMS — небезопасна, так как мобильная связь в целом небезопасна. Уязвимостям подвержена не только технологическая сеть SS7, но и алгоритмы шифрование радиоинтерфейса. Атаки на сеть SS7 можно осуществлять из любой точки мира, а возможности злоумышленника не ограничиваются взломом мессенджеров. И сейчас все эти атаки становятся доступны не только спецслужбам, но и многим другим. Стоит также отметить, что все тесты проводились с настройками по умолчанию, то есть в режиме, в котором работает большинство пользователей.
(с) Positive Technologies
Больше о безопасности сети SS7: https://www.ptsecurity.com/ru-ru/research/webinar/45158/
От себя добавлю, дабы защититься от такого рода аттак, используйте двухфакторную авторизацию в Телеграме. А вот что насчет whatsapp, viber и т. п. я не знаю как быть, насколько мне известно у них нет двухфакторки. Лучше не пользоваться этими мессендежрами :-)
На прошлой неделе общественность взбудоражила новость о возможной причастности спецслужб к взлому аккаунтов оппозиционеров в популярном мессенджере Telegram. На протяжении своего существования человечество пыталось объяснить всё необъяснимое с помощью высших сил – Богов. В наше время все непонятные вещи объясняют происками спецслужб.
Мы решили проверить, действительно ли нужно быть спецслужбой, чтобы получить доступ к чужому аккаунту Telegram. Для этого мы зарегистрировали тестовый аккаунт Telegram, обменялись несколькими тестовыми сообщениями:
![6bc387ff423a41889c20fe219987dd83.png](/proxy.php?image=https%3A%2F%2Fhabrastorage.org%2Ffiles%2F6bc%2F387%2Fff4%2F6bc387ff423a41889c20fe219987dd83.png&hash=8ddfe5a0ae44d8691fcd455608c2e9d7)
А затем мы провели атаку через сеть SS7 на один из тестовых номеров. И вот что у нас получилось:
Сначала узнаем IMSI…
![a3cd9ea4829a4b628206d047af837f22.png](/proxy.php?image=https%3A%2F%2Fhabrastorage.org%2Ffiles%2Fa3c%2Fd9e%2Fa48%2Fa3cd9ea4829a4b628206d047af837f22.png&hash=bbbfb88b84d85a2ff6268b56239617d2)
![3447f03d30bf4302be2309bcb162c3f4.png](/proxy.php?image=https%3A%2F%2Fhabrastorage.org%2Ffiles%2F344%2F7f0%2F3d3%2F3447f03d30bf4302be2309bcb162c3f4.png&hash=ec29606386a8b705e08ef36aa5ad25fd)
Перерегистрируем абонента на наш терминал…
![a589c78cdf45478d8a10f7a04c0b4b4b.png](/proxy.php?image=https%3A%2F%2Fhabrastorage.org%2Ffiles%2Fa58%2F9c7%2F8cd%2Fa589c78cdf45478d8a10f7a04c0b4b4b.png&hash=aa4e1875a0a733647191957c39ea821a)
Получаем профиль абонента…
![b41bfb9dccf141e8af133406e53a284b.png](/proxy.php?image=https%3A%2F%2Fhabrastorage.org%2Ffiles%2Fb41%2Fbfb%2F9dc%2Fb41bfb9dccf141e8af133406e53a284b.png&hash=860270788c243788b0e030c746fd26dc)
![0b9f4e3ab3d743c49b4b96aa695f799e.png](/proxy.php?image=https%3A%2F%2Fhabrastorage.org%2Ffiles%2F0b9%2Ff4e%2F3ab%2F0b9f4e3ab3d743c49b4b96aa695f799e.png&hash=c1ae258d1a57d2ed61fff2b6615b24aa)
![91752f4d2b1348ef9e48af82778e5cef.png](/proxy.php?image=https%3A%2F%2Fhabrastorage.org%2Ffiles%2F917%2F52f%2F4d2%2F91752f4d2b1348ef9e48af82778e5cef.png&hash=328fdd74dfb8e08c4dcaeccad006c30c)
![08a8ae7f1ecd4495b0a53622544df84c.png](/proxy.php?image=https%3A%2F%2Fhabrastorage.org%2Ffiles%2F08a%2F8ae%2F7f1%2F08a8ae7f1ecd4495b0a53622544df84c.png&hash=615e8409a0e4d83ba46359705fb6d110)
Завершаем процедуру перерегистрации абонента…
![776274c5308d4360ba8389dde4cab836.png](/proxy.php?image=https%3A%2F%2Fhabrastorage.org%2Ffiles%2F776%2F274%2Fc53%2F776274c5308d4360ba8389dde4cab836.png&hash=e618a3240e70b54fce9ce8376954740c)
Теперь номер жертвы под полным нашим контролем. Инициируем на любом девайсе процедуру подключения к Telegram под аккаунтом жертвы (номер телефона) — и получаем заветную SMS…
![54d85a11e2c848cf8db719a2d38b172c.png](/proxy.php?image=https%3A%2F%2Fhabrastorage.org%2Ffiles%2F54d%2F85a%2F11e%2F54d85a11e2c848cf8db719a2d38b172c.png&hash=7d7cf8f7ba2085df57395e8d2b77c293)
После ввода кода мы получаем полноценный доступ к аккаунту Telegram. Теперь мы можем не только вести переписку от имени жертвы, но и прочитать всю переписку, которую клиент Telegram любезно подгружает (телефон справа имеет полную копию переписки телефона слева):
![30619c1dbdb744f0a919da8e5dc9ee88.png](/proxy.php?image=https%3A%2F%2Fhabrastorage.org%2Ffiles%2F306%2F19c%2F1db%2F30619c1dbdb744f0a919da8e5dc9ee88.png&hash=dc3f9350575c86fa2f2e9f1434e72fb3)
Однако прочитать секретные чаты невозможно. Но можно создать новый — и переписываться от имени жертвы:
![309bb599e0e844099840ecfc6056a57d.png](/proxy.php?image=https%3A%2F%2Fhabrastorage.org%2Ffiles%2F309%2Fbb5%2F99e%2F309bb599e0e844099840ecfc6056a57d.png&hash=9f1809323a066e9f55323feb1b3c83ac)
После этого мы провели атаку по той же схеме на WhatsApp. Доступ к аккаунту мы конечно же получили, но так как WhatsApp (якобы) не хранит историю переписки на сервере, получить доступ к переписке, которая была ранее, не удалось. WhatsApp хранит backup переписки в Google Drive, поэтому для получения доступа к ней необходимо ещё взломать аккаунт Google. Зато вести переписку от имени жертвы, так что она не будет об этом знать – вполне реально:
![99bd7b74df05459cb65a3521e8045570.png](/proxy.php?image=https%3A%2F%2Fhabrastorage.org%2Ffiles%2F99b%2Fd7b%2F74d%2F99bd7b74df05459cb65a3521e8045570.png&hash=7b5143261331d4c594cd5e1d6f23abdf)
Выводы: передача одноразовых кодов посредством SMS — небезопасна, так как мобильная связь в целом небезопасна. Уязвимостям подвержена не только технологическая сеть SS7, но и алгоритмы шифрование радиоинтерфейса. Атаки на сеть SS7 можно осуществлять из любой точки мира, а возможности злоумышленника не ограничиваются взломом мессенджеров. И сейчас все эти атаки становятся доступны не только спецслужбам, но и многим другим. Стоит также отметить, что все тесты проводились с настройками по умолчанию, то есть в режиме, в котором работает большинство пользователей.
(с) Positive Technologies
Больше о безопасности сети SS7: https://www.ptsecurity.com/ru-ru/research/webinar/45158/
От себя добавлю, дабы защититься от такого рода аттак, используйте двухфакторную авторизацию в Телеграме. А вот что насчет whatsapp, viber и т. п. я не знаю как быть, насколько мне известно у них нет двухфакторки. Лучше не пользоваться этими мессендежрами :-)