Prometheus
27.05.2016, 17:32
1. Атакующий у себя в приложении указывает номер телефона жертвы и пытается войти в аккаунт. Тут он видит сообщение, что код отправлен не по SMS, а на приложение, зарегистрированное на этот номер, на другом устройстве:
https://habrastorage.org/files/878/3dc/e2f/8783dce2f4cb4e5792a48eefffb92ef0.png
2. В этот момент жертва получает системное уведомление у себя в приложении (или приложениях) Telegram:
https://habrastorage.org/files/43f/30e/505/43f30e5050ff4b77bd689c2eb3fd8628.png
3. Атакующий нажимает «Didn’t get the code?» и Telegram отправляет код через SMS:
https://habrastorage.org/files/357/a98/521/357a98521fe4455894250527727e4bf8.png
4. Тут атакующий вводит код из SMS и узнает, что в настройках аккаунта включена двухфакторная авторизация и что ему нужно ввести пароль (в данном случае «10» это подсказка для пароля, выбранная при включении двухфакторной):
https://habrastorage.org/files/df2/b8b/27d/df2b8b27d85545998b000edeb8592dc7.png
5. Далее атакующий притворяется, будто он забыл пароль — «Forgot password?». Тут атакующему сообщают, что код восстановления отправлен на электронную почту (если жертва при включении двухфакторной авторизации указала адрес электронной почты). Атакующий не видит адреса электронной почты — он видит лишь то, что после «собачки»:
https://habrastorage.org/files/301/1c8/d11/3011c8d11e714adca98ab979e8282045.png
6. В этот момент жертва получает код для сброса пароля на адрес электронный почты (если она указала адрес электронной почты при включении двухфакторной авторизации):
https://habrastorage.org/files/053/d7b/24b/053d7b24bc3a4570ad720d28c2b9b2be.png
7. Атакующий нажимает «ok» и видит окошко, куда нужно ввести код для сброса пароля, который был отправлен на электронную почту. Тут атакующий говорит, что у него проблемы с доступом к своей почте — «Having trouble accessing your e-mail?». Тогда Telegram предлагает «reset your account»:
https://habrastorage.org/files/d27/aea/26a/d27aea26a6a24cc086baf1b3ae4fc6d8.png
8. Атакующий нажимает «ok» и видит два варианта — или ввести пароль, или нажать «RESET MY ACCOUNT». Telegram объясняет, что при «переустановке» аккаунта потеряется вся переписка и файлы из всех чатов:
https://habrastorage.org/files/ba6/13b/6b6/ba613b6b6a4f442a8c3219a1c5e39315.png
9. Атакующий нажимает «RESET MY ACCOUNT» и видит предупреждение, что это действие невозможно будет отменить и что при этом все сообщения и чаты будут удалены:
https://habrastorage.org/files/783/ba4/8ac/783ba48acf644bb9bef62c56823d8792.png
10. Атакующий нажимает «RESET» и Telegram просит указать имя для «переустановленного» аккаунта:
https://habrastorage.org/files/9f3/efe/751/9f3efe7516d94cf89ba28aef068b137a.png
11. Собственно, все, атакующий успешно угнал аккаунт: он вошел под номером телефона жертвы и может писать от её имени сообщения:
https://habrastorage.org/files/7c4/7ad/489/7c47ad489f7b4a1297786e093abb6ab2.png
12. Жертва при этом видит приложение таким, каким оно было сразу после установки. Приветственный экран рассказывает о Telegram и предлагает зарегистрироваться или войти в уже существующий аккаунт:
https://habrastorage.org/files/591/312/c0c/591312c0ce1146f5a1db8edfda33288d.png
13. Когда атакующий пишет от имени жертвы кому-нибудь из контактов жертвы, этот контакт видит, что жертва только что присоединилась к Telegram (что подозрительно), а также новое сообщение (или сообщения) в новом чате от жертвы. Через 12–16 часов контакт также увидит, что в старых чатах вместо имени жертвы указано «Deleted Account»:
https://habrastorage.org/files/0d9/c64/664/0d9c646641874b08b1fd9c71c5802b46.png
Если жертва имеет возможность получать SMS на этот номер телефона, она может войти в приложение Telegram на своём устройстве. Если атакующий на угнанном аккаунте не включил двухфакторную авторизацию, жертва может войти и в меню Settings => Privacy and Security => Active Sessions прекратить все остальные сессии (то есть сессии атакующего):
https://habrastorage.org/files/6cc/e7f/fa8/6cce7ffa80f14eb986319c3f053d8764.png
Если же атакующий на угнанном аккаунте включил двухфакторную авторизацию — жертва, в свою очередь, таким же образом может «угнать обратно» свой аккаунт.
https://habrastorage.org/files/878/3dc/e2f/8783dce2f4cb4e5792a48eefffb92ef0.png
2. В этот момент жертва получает системное уведомление у себя в приложении (или приложениях) Telegram:
https://habrastorage.org/files/43f/30e/505/43f30e5050ff4b77bd689c2eb3fd8628.png
3. Атакующий нажимает «Didn’t get the code?» и Telegram отправляет код через SMS:
https://habrastorage.org/files/357/a98/521/357a98521fe4455894250527727e4bf8.png
4. Тут атакующий вводит код из SMS и узнает, что в настройках аккаунта включена двухфакторная авторизация и что ему нужно ввести пароль (в данном случае «10» это подсказка для пароля, выбранная при включении двухфакторной):
https://habrastorage.org/files/df2/b8b/27d/df2b8b27d85545998b000edeb8592dc7.png
5. Далее атакующий притворяется, будто он забыл пароль — «Forgot password?». Тут атакующему сообщают, что код восстановления отправлен на электронную почту (если жертва при включении двухфакторной авторизации указала адрес электронной почты). Атакующий не видит адреса электронной почты — он видит лишь то, что после «собачки»:
https://habrastorage.org/files/301/1c8/d11/3011c8d11e714adca98ab979e8282045.png
6. В этот момент жертва получает код для сброса пароля на адрес электронный почты (если она указала адрес электронной почты при включении двухфакторной авторизации):
https://habrastorage.org/files/053/d7b/24b/053d7b24bc3a4570ad720d28c2b9b2be.png
7. Атакующий нажимает «ok» и видит окошко, куда нужно ввести код для сброса пароля, который был отправлен на электронную почту. Тут атакующий говорит, что у него проблемы с доступом к своей почте — «Having trouble accessing your e-mail?». Тогда Telegram предлагает «reset your account»:
https://habrastorage.org/files/d27/aea/26a/d27aea26a6a24cc086baf1b3ae4fc6d8.png
8. Атакующий нажимает «ok» и видит два варианта — или ввести пароль, или нажать «RESET MY ACCOUNT». Telegram объясняет, что при «переустановке» аккаунта потеряется вся переписка и файлы из всех чатов:
https://habrastorage.org/files/ba6/13b/6b6/ba613b6b6a4f442a8c3219a1c5e39315.png
9. Атакующий нажимает «RESET MY ACCOUNT» и видит предупреждение, что это действие невозможно будет отменить и что при этом все сообщения и чаты будут удалены:
https://habrastorage.org/files/783/ba4/8ac/783ba48acf644bb9bef62c56823d8792.png
10. Атакующий нажимает «RESET» и Telegram просит указать имя для «переустановленного» аккаунта:
https://habrastorage.org/files/9f3/efe/751/9f3efe7516d94cf89ba28aef068b137a.png
11. Собственно, все, атакующий успешно угнал аккаунт: он вошел под номером телефона жертвы и может писать от её имени сообщения:
https://habrastorage.org/files/7c4/7ad/489/7c47ad489f7b4a1297786e093abb6ab2.png
12. Жертва при этом видит приложение таким, каким оно было сразу после установки. Приветственный экран рассказывает о Telegram и предлагает зарегистрироваться или войти в уже существующий аккаунт:
https://habrastorage.org/files/591/312/c0c/591312c0ce1146f5a1db8edfda33288d.png
13. Когда атакующий пишет от имени жертвы кому-нибудь из контактов жертвы, этот контакт видит, что жертва только что присоединилась к Telegram (что подозрительно), а также новое сообщение (или сообщения) в новом чате от жертвы. Через 12–16 часов контакт также увидит, что в старых чатах вместо имени жертвы указано «Deleted Account»:
https://habrastorage.org/files/0d9/c64/664/0d9c646641874b08b1fd9c71c5802b46.png
Если жертва имеет возможность получать SMS на этот номер телефона, она может войти в приложение Telegram на своём устройстве. Если атакующий на угнанном аккаунте не включил двухфакторную авторизацию, жертва может войти и в меню Settings => Privacy and Security => Active Sessions прекратить все остальные сессии (то есть сессии атакующего):
https://habrastorage.org/files/6cc/e7f/fa8/6cce7ffa80f14eb986319c3f053d8764.png
Если же атакующий на угнанном аккаунте включил двухфакторную авторизацию — жертва, в свою очередь, таким же образом может «угнать обратно» свой аккаунт.