Предисловие
Сам способ раскрытия номера — есть совокупность одной технической возможности самого клиента и применения социальной инженерии (СИ). Вообще, эту функцию уже описывали ранее на Хабре, аж в 2016 году — ссылочка.
Автор уже было уловил «месседж» и хотел рассказать зевавшим пользователям, что это небезопасно!, но критике его статейка поддалась слабо. Однако, я пошел дальше и решил показать, как эта «функция» действует в руках «хацкера».
Способ основан на социальной инженерии, поэтому придется общаться с пользователем, чей номер мы хотим узнать. Вся суть в том, что пользователь должен провернуть обычную манипуляцию, присущую мессенджерам, но, при этом, не должен заподозрить – зачем ему делать эту самую манипуляцию…
Что же должна сделать жертва, чтобы раскрыть свой номер? Рассмотрим пример.
Есть пользователь А (атакующий) и пользователь Б (жертва).
А стучится к Б в личный диалог и шлет какое-либо сообщение. Пользователь Б отвечает. Начинается диалог. Пользователь А дружится с пользователем Б и добавляет его себе в контакты. Пользователь Б рад и тоже добавляет пользователя А себе в контакты.
После этого у пользователя А (атакующего) виден номер пользователя Б (жертвы), но жертва (Б) не видит номер атакующего (А).
Как это произошло?
Во-первых, тут тоже не все так просто. Желательно, чтобы жертва находилась именно в десктоп мессенджере. При клике на иконку пользователя открывается такое окно:
Под именем пользователя виднеется надпись «ADD TO CONTACTS».
Нажав на нее, откроется окно такое окно:
Все просто, надо лишь подтвердить авторизацию и нажать «DONE». Но именно после этого наш номер будет виден этому пользователю. Всему виной активированная по умолчанию опция “Share my phone number”. Да, она активирована по умолчанию, поэтому пользователи, добавляющие кого-то в контакты, игнорируют эту функцию.
Через десктоп-клиент нам удастся узнать номер довольно просто. Жертва просто не заметит эту опцию и выдаст номер. Но что касается приложений для телефонов? Тут дело обстоит труднее.
Во-первых, жертва не сразу найдет функцию авторизации пользователя. Во-вторых, жертве будет не понятно – зачем вообще добавлять пользователя в контакты, если диалог идет без проблем. В-третьих, опция называется “share my contact”, – что уже подозрительно. А если нажать эту опцию, то будет предупреждение, где написан номер жертвы и текст, что он отобразится у пользователя. Жертва не станет этого делать. Поэтому данный метод акцентирован более на десктоп-приложение.
Поэтому, прежде чем начинать атаку, необходимо убедиться, что жертва использует не мобильную версию! Есть много способов. Например, посмотреть на скорость печатания, стиль текста, использование стикеров и смайликов и т.д.
Если мы уверены, что жертва сидит с компьютера, то можно начинать.
Как заставить жертву добавить вас в контакты?
Здесь необходимо понимать, для чего вам нужен номер жертвы. Подразумевается, что вы заранее знаете какую-либо информацию о жертве – род деятельности, интересы и т.д. Исходя из диалога, вы сами должны сформулировать причину, по которой жертва должна добавить вас.
Почти из всех практик я применял метод с двумя аккаунтами: один – основной, второй – фейковый. Суть в том, чтобы с первого аккаунта начать диалог с жертвой, а затем переключить ее на второй. Второй аккаунт должен быть не конкретно ваш, а, например, ваш друг/брат/коллега. В общем, надо создать иллюзию для жертвы, при которой она начнет писать второму аккаунту, но не сможет к нему достучаться (нам нужно игнорировать ее). Это подвергнет жертву в ступор, поэтому она начнет выяснять у нашего первого аккаунта причину, а мы должны выступать в качестве «моста связи», как бы направляя жертву на то, чтобы она добавила второй аккаунт в контакты и, тем самым, выдала свой номер.
Сложно? Тогда рассмотрим на практике.
Я приведу пример, когда деанонимизировал мошенников из даркнета.
Деанонимизация мошенника
И так, есть некий пользователь, который занимается мошенническими действия, связанными с финансами – обналичивание краденых денег и т.д.
Я создал 2 аккаунта (А) и (Б).
С первого аккаунта (А) я написал жертве.
Жертва вступила в диалог. Я отвечаю:
Вставляю ссылку на свой второй аккаунт (Б).
Жертва начинает писать на аккаунт (Б):
Я же не читаю эти сообщения специально.
С аккаунта (Б) я пишу на свой же аккаунт (А) текст и пересылаю его жертве:
Здесь я не ставлю конкретной задачи от жертвы – чтобы тот добавил меня в контакты. Я как бы сам не понимаю, что за проблема, поэтому предлагаю разные варианты.
Но жертва в недоумении шлет новые письма на аккаунт (Б), которые я так же игнорирую.
Далее – я разыгрываю диалог между своими аккаунтами (А) и (Б), которые так же присылаю жертве с основного аккаунта:
Внимание жертвы отвлечено этим инцидентом, поэтому она пытается понять, что может быть не так. Она меньше всего сейчас думает о своей безопасности, ведь никаких ссылок и файлов ей не отправляют. Жертва просто не может наладить диалог.
С аккаунта (Б) я все же прочитал сообщения, но не ответил жертве!
Далее происходит финальный диалог:
Здесь жертва окончательно понимает, что все дело в контактах и тогда добавляет аккаунт (Б), игнорируя опцию “share my phone number”.
После этого в моем аккаунте (Б) отобразился номер жертвы.
Скажу прямо. Я пробовал на многих контактах и 7 из 10 добавляли меня в контакты, раскрывая свой номер. В основном, я раскрывал мошенников, наркобарыг и прочую нечесть «дальквебя». Но и с простыми пользователями можно найти общий язык, включив хитрожопость и втереться в доверие. Казалось бы: «что в этом крутого? Это же так просто!». Но вы знали об этом?.. Не думаю. Если бы только Telegram убрал эту галочку по-умолчанию, когда добавляешь в контакты, — то все было бы иначе. Но это все не важно, ведь все и так хорошо ;)