Разработчки забыли добавить опцию «Nobody» в десктопную версию мессенджера.
Из-за недосмотра разработчиков десктопные версии для Windows, Mac и Linux мессенджера Telegram раскрывали IP-адреса пользователей в процессе голосовых звонков.
В обычных обстоятельствах функция голосовых звонков Telegram по умолчанию устанавливает прямое P2P-соединение между двумя пользователями, при котором обмен пакетами осуществляется непосредственно между ними. Пиринговое соединение не является конфиденциальным, поскольку раскрывает IP-адреса участников процесса. То есть, Telegram всегда раскрывает IP-адрес пользователя людям в контактном списке.
С целью обеспечения анонимности инженеры Telegram добавили механизм маскировки IP-адресов - опцию «Nobody», запрещающую инициировать пиринговое соединение при совершении звонков. Проблема заключается в том, что данная функция присутствует только в мобильной версии мессенджера и не распространяется на десктопную.
Уязвимость, обнаруженная исследователем Дхираем Мишра (Dhiraj Mishra), получила идентификатор CVE-2018-17780 и уже исправлена с выходом десктопных версий Telegram 1.4.0 и 1.3.17 beta, в которых разработчики добавили опцию «Nobody» в настройки. За информацию об уязвимости компания выплатила специалисту награду в размере $2 тыс.
P2P (peer-to-peer), также известные как одноранговые, децентрализованные или пиринговые сети, - распределенная архитектура приложения, разделяющая задачи между узлами (peer). Узлы имеют одинаковые привилегии в приложении и образуют сеть равносильных узлов.
Разбираем кейсы, делимся опытом, учимся на чужих ошибках