Давайте обсудим Раскрываем номера пользователей Telegram

  • Автор темы carlcox
  • Дата начала
  • Просмотров 8352 Просмотров

carlcox

Местный
245
126
27 Ноя 2017
! Считаю это обсурдом знающие подскажите


1-jpg.7572


Взято с хобрахабраабракадабра
Последнее время безопасность Telegram (далее – телеграм) все чаще поддается критике и встает вопрос: «действительно ли телеграм хорошо защищен?»

Как и для любого мессенджера – важна его максимальная интеграция со сторонними сервисами. Для примера, телеграм в первую очередь работает с вашей телефонной книгой. Он синхронизирует ваши номера со своей базой и проверяет на наличие регистрации в телеграме. Далее – телеграм предлагает вам свободные сообщения и звонки с вашими потенциальными друзьями. «Удобно» — что еще сказать?

Воспользуемся этой удобностью.

Берем в руки Android. Я взял Samsung A3. Подключаем к ПК. Предварительно экспортируем контакты и получаем файлик с названием vCard.vcf. Следующие 5 минут прочтения этой статьи он будет нашим лучшим другом. Копируем себе на рабочий стол, открываем через текстовый редактор и видим следующую картину:

1547102929700.png

2-png.7573



Каждый наш контакт заносится в некий шаблон с началом тега «BEGIN:VCARD» и концом «END:VCARD». Между ними находятся: имя контакта, телефон и фото (если есть) – это основные параметры, которые нам будут нужны.

Что ж, хорошо, но что это нам дает? А то, если мы создадим свою базу по подобному шаблону, то сможем импортировать ее обратно в наш телефон и использовать далее по назначению. Память андроида позволяет сохранять до 20 тысяч контактов. Ищем базу номеров в паблике/покупаем/генерируем сами, исходя из нашего региона, и т.д.

Смысл в том, чтобы собрать базу из 20 тысяч номеров, присвоить им номера и импортировать в наш телефон.

Я просто купил готовую базу для спама, номера которых зарегистрированы в телеграме. На PHP написал скриптик для генерации шаблона «name;number» и создал свой собственный vCard.vcf:

1547103083400.png

3-png.7574



И так, мы имеем базу из 20к контактов, имена которых не известны, как и номера. Но мы же с вами собрались за экшеном, поэтому копируем эту базку на флешку нашего андроида, через контакты импортируем данную базу:
1547103106000.png


4-png.7575



В итоге, имеем телефонную книгу из 20к контактов. Далее – самое интересное. Мы подрубаем интернет на телефоне. Желательно, Wi-Fi. Запускам клиент телеграма и, О, ЧУДО! «Телега» предлагает нам синхронизацию контактов, так как считает, что у нас якобы появились новые контакты, а, значит, потенциальные друзья! Мы соглашаемся, конечно же. И что делает телега? Телеграм проверяет ваши номера из телефонной книги на регистрацию в своей базе и выдает вам фото контактов, которые зарегистрированы!

И так, мы теперь знаем номер телефона и фото пользователя. Что же нам с этим делать? А делаем мы следующее: экспортируем все наши контакты. Стандартный экспорт контактов из телеграма не поможет, так как он не показывает фото, поэтому мы можем, воспользовавшись API, написать свой скриптик или взять готовый. Я взял готовый с гитхаба «ExportTelegramContacts». В конфиге надо прописать данные своего API, зарегистрировавшись как разработчик. Делается все за минуты.

Запускаем приложение через консоль
1547103138500.png


5-png.7576



Авторизуемся и вводим команду на экспорт с фото!

1547103152100.png

6-png.7577


Спустя некоторые секунды/минуты получаем файлик с форматом:


1547103167400.png
7-png.7578



Абсолютно такой же вид, как и был у нас при генерировании импорта, только добавилось поле «фото». Это аватарка нашего контакта, зашифрованная base64.

То есть, телеграмм «сожрал» нашу базу из 20к номеров и выдал нам все контакты, которые зарегистрированы в системе, попутно привязав к ним реальный аватар пользователя: (фото есть не у всех пользователей).
1547103210600.png


8-png.7579




Раз телеграм пробил реальных пользователей на регистрацию, то выдал нам их фото. Таким образом, мы знаем, кому принадлежит данный номер, но по прежнему не знаем логина и реального имени пользователя. Чтобы узнать логин пользователя, нам нужен другой аккаунт в телеграмме, с ранее добавленными пользователями по их логину.

Ну, а потом все повторяется. Экспортируем базу через ExportTelegramContacts и имеем такой же файл формата vcf с данными пользователей (фото, имя, логин).

Затем нам просто нужно сравнить 2 файла и перебрать всех пользователей из первого и второго аккаунтов. Сравнивать мы будем, конечно же, по фото (base64). Соответствующие фото будут означать найденных пользователей, следовательно, мы объединим их фото, логин, номер и имя. Таким образом, мы пробили данные нужных нам пользователей.

Конечно, этот процесс не быстрый и дает мало шансов, но, если нам нужно пробить пару тысяч пользователей, то загружая и выгружая по 20 тысяч пользователей, а затем, сравнив их, можно добиться вполне не плохих результатов.

И так, подведем итоги! Все просто! Имеем 2 телеграм аккаунта. Один нам нужен для импорта номеров, которые будем пробивать. В другой добавим интересующих нас людей. Экспортируем из первого аккаунта все наши контакты, которые определил телеграм, как друзей. Вид экспорта будет: «номер_телефона: фото». Из другого экспортируем те же самые контакты, только вид уже будет: «логин: фото».

Ну, а дальше все просто. Сравниваем два файла и перебираем циклично все контакты, находим те, которые соответствуют фото.

Таким образом, фото из одного списка, которое соответствует фото из друго списка, приравнивается к нашей жертве, и мы узнаем его номер.

Ведь, фото = фото => логин + номер

Наглядный скриптик для полного перебора пользователей: (извиняюсь за красивый код).
1547103250000.png


9-png.7580




Подведем итоги!

Процесс 1 цикла поиска занял у меня около 10 минут. За 10 минут я перебрал 20 тысяч номеров. В сутки можно прогнать до нескольких миллионов. Полностью автоматизировать этот процесс не удалось, поэтому работать придется руками, что весьма неудобно. К тому же, не все пользователи ставят фото в свой профиль. Ни с какими лимитами или ограничениями я не столкнулся. В течение нескольких часов тестировал по максимуму. Не смотря на минусы и плюсы сие метода — сама идея, что номер пользователя телеграмма можно раскрыть – имеет место быть
 
Последнее редактирование:

carlcox

Местный
245
126
27 Ноя 2017
У всех картинки работают
Я утверждён что если нет человека в списке контактов в телефоне ( телефонной книге ) то номер телефона не узнать
[automerge]1536860760[/automerge]
Копипаст с хабра на другой форум + Свои мысли, и с того форума на наш xD
Новый уровень
Не смешно
[automerge]1536861176[/automerge]
Копипаст с хабра на другой форум + Свои мысли, и с того форума на наш xD
Новый уровень
если нашли тот пост что я не пойму ? зачем что то мастерить когда база и без скриптов чекнится на что хочешь
а номер телефона не узнать
 
Последнее редактирование:

admin

По любому вопросу
Администратор
1,650
1,505
5 Мар 2016
У всех картинки работают
Я утверждён что если нет человека в списке контактов в телефоне ( телефонной книге ) то номер телефона не узнать
[automerge]1536860760[/automerge]

Не смешно
[automerge]1536861176[/automerge]

если нашли тот пост что я не пойму ? зачем что то мастерить когда база и без скриптов чекнится на что хочешь
а номер телефона не узнать

Ну так даже картинки в посте не отображаются)
 

admin

По любому вопросу
Администратор
1,650
1,505
5 Мар 2016