Баг в Telegram VoIP, который позволяет узнать адрес собеседника

Итак, всем Привет! После появления VoIP В Telegram (пока в мобильных клиентах), чисто случайно заметил одну неприятную вещь, это открытый дебаг…

Введение

В общем, дело было вечером, делал себе приложение для управления RPI из серии «лень встать и выключить свет» ) Следовательно телефон был подключен по ADB чтобы можно было увидеть 2 несчастные кнопки для различных тестов и в телеграмме позвонил товарищ, при этом телефон был еще в ADB, решил ради интереса посмотреть логи телеграмма. Далее все интереснее, там была информация о звонке и комментарий примерно такого рода «Нажмите 10 на имя абонента, чтобы увидеть инфу о звонке». Недолго думая, нажал и увидел интересную статистику:cd1fe093a413b432142eb6619f19418a.png Где [UDP_RELAY]/[UDP_RELAY_IN_USE] — сервера телеграмма, через которые проходит трафик и самое интересное [UDP_P2P_INET] — IP адрес собеседника(если статический — то уже можно и развлекаться)

Бежим в саппорт

Сразу же побежал писать в саппорт и в твиттере, ссылаясь на ленту телеграмма, но ответ пришел весьма удивляющий…50875e0b8a364d5958f4284209540eab.png Далее немного подумал и решил на следующий день дальше находить плюшки… На клиенте для iOS окно дебага весьма интересно выглядит, так как можно менять настройки разговора. Это все конечно хорошо, но если посмотреть скриншот выше, то можно заметить, что редактирования настроек на яблочном клиенте есть и можно выключить P2P и адрес собеседнику виден не будет. Ну и последнее, Clear Voice и битрейт до 35 kbit — такое себе )

Узнаем IP-адрес через Telegram Без iplogger’ов и прочего. Только звонок, телеграм и wireshark: 1. Качаем wireshark, открываем его и в фильтре обязательно указываем нужный нам протокол – STUN 2. Нажимаем на “лупу” (Найти пакет) и видим, как у нас появится новая строка с параметрами и поисковой строкой. Там выбираем параметр Строка 3. В строке пишем XDR-MAPPED-ADDRESS 4. Включаем wireshark и звоним через Telegram. Как только пользователь ответит на звонок, тут же у нас начнут отображаться данные и среди них будет IP адрес юзера, которому звонили. 5. Чтобы понять, какой именно IP нам нужен, жмём уже в настроенном поисковике Найти, ищем в строке XDR-MAPPED-ADDRESS а то, что идёт после него и есть нужный нам IP. Используйте с умом. Или не используйте, но хотя бы обезопасьте себя, отключив возможность принимать звонки в настройках, или перенеся все “важные” разговоры в секретные чаты

news.detail : ajax-tape !!! –> TelegramМессенджерыПроблемы –>

ИБ-специалист Дхирадж Мишра выяснил, что Telegram допускает утечку IP-адресов пользователей десктопной версии мессенджера. Дело в том, что звонки в Telegram могут совершаться по пиринговой технологии напрямую между пользователями, минуя централизованный сервер. В мобильных приложениях Telegram в целях безопасности пиринг можно отключить, а в десктопной версии такой возможности до недавнего времени не было, что открывало вашим собеседникам возможность вычислить, где вы проживаете. Злоумышленник мог выяснить адрес, совершив звонок жертве — IP выдавался, если пользователь отвечал с десктопа или мобильного приложения, в котором не отключена пиринговая связь. Мишра получил за информацию об этой уязвимости 2000 евро, а разработчики Telegram устранили её в новой сборке программы (версия 1.4). Не забудьте обновиться и отревизировать соединение, по которому идут звонки. Для этого нужно перейти в «Меню» → «Конфиденциальность» → «Голосовые звонки» → «Peer-to-Peer» и указать, когда будет использоваться такой вид связи: со всеми пользователями, людьми из вашего списка контактов или ни с кем. По умолчанию установлена вторая опция. Нововведения в Telegram v1.4: — Новый дизайн настроек. — Новый интерфейс для выбора темы оформления в разделе «Настройки чатов». — Настройки для управления памятью: вы можете выбрать, сколько места Telegram занимает на компьютере для хранения временных файлов. — Новые настройки: теперь вы можете выбрать, использовать ли для звонков Peer-to-Peer, а также отключить анимации (для медленных компьютеров). iGuides в Telegram — t.me/iguides_ru iGuides в Яндекс.Дзен — zen.yandex.ru/iguides.ruДарим подарки за лучшие статьи в блогах

Источник:

Input Zero

Ссылки по теме:

Telegram ждут большие изменения

Как добавить в macOS Mojave автоматическое включение темной темы

Любой мог взломать Цукерберга (и ещё 50 миллионов пользователей Facebook)

Рассказываю о том, как мне удалось определить IP адрес своего собеседника в Telegram при помощи аудио вызова в мессенджере. Плюс написал bash-скрипт для автоматизации.

Wireshark и STUN

Однажды мне понадобилось определить IP адрес своего собеседника в мессенджере Telegram. Для этого я расчехлил Wireshark и обнаружил STUN трафик, который позволяет клиенту, находящемуся за сервером трансляции адресов, определить свой внешний IP-адрес, способ трансляции адреса и порта во внешней сети.

Проще говоря основное назначение STUN – дать возможность различным девайсам (за NAT’ом) узнать их public IP-адрес и найти пробросы портов.

Помимо всего прочего, в атрибутах указывается параметр XOR-MAPPED-ADDRESS, который содержит публичный IP адрес, мой и удаленного собеседника. Очевидно, что это зависит от направления пакета. Если фрейм летит мне, то XOR-MAPPED-ADDRESS содержит мой IP, если от меня – собеседника.

Wireshark и протокол STUN

Автоматизация

Потратив немного времени решил автоматизировать процесс получения IP своего визави в Telegram с помощью консольной версии Wireshark – tshark.

Принцип работы довольно простой. После старта в течении 5 секунд идет дамп сетевого трафика на сетевом интерфейсе, затем конвертируется в текстовый формат с выделением двух IP из атрибута XOR-MAPPED-ADDRESS, где один из IP принадлежит нашему клиенту.

Демонстрация работы скрипта

Сравниваем адреса с нашим публичным адресом и получаем IP адрес удаленного клиента. Бонусом скрипт делает host и предлагает запустить whois, так как не обязательно IP клиента будет принадлежать сотовому оператору. Это может быть и корпоративная сетка тоже.

Как узнать IP в Telegram?

  1. Устанавливаем Telegram desktop для Linux или Mac.
  2. Устанавливаем tshark (sudo apt install tshark или скачиваем Wireshark для macOS. tshark идет в комплекте).
  3. Звоним тому, чей IP адрес нам интересен. Обязательно дожидаемся ответа, так как до этого STUN не передает нужных нам атрибутов.
  4. Запускаем скрипт.
  5. Profit! Мы получили IP нашего Telegram собеседника!
  6. Можно класть трубку.

Установка и запуск

wget https://raw.githubusercontent.com/n0a/telegram-get-remote-ip/main/tg_get_ip.sh chmod +x tg_get_ip.sh sudo ./tg_get_ip.sh

PS. Возможна работа на Android смартфонах с termux и root доступом. Без него трафик не захватить. thshark на termux ставиться легко: pkg install root-repo && pkg install tshark.

Проект на github:https://github.com/n0a/telegram-get-remote-ip

Используемые источники:

  • https://habr.com/ru/post/325752/
  • https://bbiz.chat/threads/uznaem-ip-adres-cherez-telegram.110209/
  • https://www.iguides.ru/main/os/telegram_vydayet_vash_ip_adres/
  • https://n0a.pw/telegram-get-remote-ip/

Оцените статью
Рейтинг автора
5
Материал подготовил
Илья Коршунов
Наш эксперт
Написано статей
134
Добавить комментарий