Как проверить Телеграмм на слежку

image

Последнее время в Telegram все чаще обсуждаются темы пробива людей и утечек персональных данных. Мне стало интересно, а насколько сама экосистема Telegram устойчива к подобным утечкам.

Под катом история о том, как я нашел баг в Telegram. Баг позволяет ввести в заблуждение пользователя, и подтолкнуть его неосознанно поделиться своими данными — геолокацией и номером телефона.

Вот как это работает:

Сложность системы всегда была врагом безопасности.

Telegram вырос, уже перестал быть просто мессенджером, и дорос до большой медиа платформы с богатым функционалом. Отдельным особняком стоит Telegram Bot API, позволяющее выстраивать целые приложения внутри мессенджера — так называемых ботов.

Скорее всего каждый, кто пробовал создать своего бота, уже знает, что пользователю можно отправить запрос его номера телефона с помощью специальной кнопки.

Текст на этой кнопке можно задать любой. Причём такие же кнопки бот может использовать и для других взаимодействий:

Как узнать читают ли Ваши сообщения? #whatsapp #переписка #shorts

image

После нажатия на кнопку, пользователю конечно же будет показано предупреждение что сейчас его контакт будет отправлен боту:

image

Это сообщение довольно однозначно говорит о риске деанонимизации, и предостерегает вдумчивого пользователя от опасных для него действий.

Перебирая обновления API, я вспомнил, что в какой-то момент Telegram дал пользователям возможность делать собственные локализации мессенджера. Были примеры, когда локализацию использовали для шуточных переделок интерфейса. В тот момент мне пришла в голову та же мысль, что и возможно вам сейчас:

А что, если попробовать “шуточно перевести” диалоговое окно, предупреждающее пользователя о передаче номера телефона боту, заменив его текст?

imageimage

Вначале я думал, что заставить пользователя установить в приложение посторонний xml файл-локализацию будет намного сложнее, чем просто убедить кликнуть на Share contact. Ведь именно так, с помощью xml файла, Telegram предлагал распространять свои локализации среди собеседников.

Еще по теме:  Как в Телеграмме искать по дате

Так я думал, пока не наткнулся в исходных кодах android приложения на обработчик ссылок setlanguage.

image

Оказалось, что в Telegram уже давно сделали платформу переводов, translations.telegram.org, доступную для всех пользователей Telegram, и теперь не нужно передавать никаких xml файлов.

Следят за Вашим телефоном или нет. Как узнать?

image

Достаточно кликнуть по ссылке t.me/setlanguage/%lang%, после чего пользователь увидит диалоговое окно с запросом установки нового языка. И это окно значительно менее отпугивающее, чем сообщение о запросе номера телефона:

image

Как это работает?

Добавляем свой язык, переводим нужные нам элементы интерфейса и еще парочку других.

В локализации можно писать все что угодно. Мы напишем безобидный текст вместо ужасного предупреждения о расшаривании геолокации и номера телефона. Проделываем тоже самое для остальных платформ.

Наш ядовитый язык готов. Осталось подсунуть его пользователю.

image

Мне так и не удалось найти способ узнать установил ли пользователь предложенную ему локализацию. Не нашлось ни статистики языка на translations.telegram.org, ни изменений в профиле пользователя. Bot api позволяет узнать язык пользователя через параметр language_code, но его значение берется из системных настроек. Смена языка в приложении на параметр никак не влияет.

Что ж, тогда просто добавляем небольшую задержку после сообщения с ссылкой на язык. После выбора языка предлагаем пользователю ознакомиться с меню бота. При нажатии Ок в данном диалоговом окне, номер утекает к боту сообщением, а бот это сообщение тут же удаляет. Если бот будет использовать webhook для получения обновлений, то сообщение удаляется быстрее и пользователь возможно и не поймет что он только что отправил свой контакт.

Кстати, аналогично запросу контакта бот может попросить пользователя расшарить его геолокацию. Да, и это диалоговое окно тоже можно “перевести”.

Как исправить

Очевидно нельзя давать возможность пользователям переводить абсолютно весь интерфейс без модерации. Модерация переводов кстати включена для например вот этого диалогового окна translations.telegram.org/rutech/ios/unsorted/AuthCode.Alert. О необходимости модерации нам сообщает метка Critical.

image

Выходит что вот такое маленькое упущение как отсутствие метки Critical для диалогов о расшаривании номера и геолокации приводят к утечке. Утечке весьма чувствительных данных, как для мессенджера строящего свой маркетинг вокруг privacy/security.

Еще по теме:  Как начать видеочат в Телеграмме в группе

Мессенджер привязаный к вашему личному номеру телефона по определению не может быть приватным. Он может лишь удорожить процесс раскрытия вашей личности.

Данная уязвимость попала в программу bug bounty телеграма и была оценена в 100€.

Источник: habr.com

Как проверить, когда человек был онлайн в Telegram

Telegram

В мессенджере Telegram имеется несколько способов для отображения текущего статуса пользователя и его последнего входа в онлайн. По умолчанию все мессенджеры могут показывать время, когда человек заходил в приложение, но некоторые пользователи предпочитают скрывать последнее время входа через настройки конфиденциальности.

Это значительно затрудняет просмотр профилей, но в Telegram имеется несколько способов, при помощи которых можно узнать, когда человек был онлайн в этой программе на ПК и смартфоне.

Когда человек был онлайн без настроек конфиденциальности

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

Для этого достаточно открыть переписку или профиль пользователя и рядом с его именем будет видно последнее время в онлайне.

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

Как скрыть последнюю активность в Telegram

Чтобы скрыть информацию о последнем входе в Telegram достаточно воспользоваться несколькими следующими шагами:

  1. Откройте приложение Telegram на своём устройстве.
  2. Нажмите на иконку с тремя горизонтальными линиями (“Гамбургер”) в верхнем левом углу экрана, чтобы открыть главное меню.

В главном меню выберите “Настройки”.

В настройках выберите “Конфиденциальность”.

В разделе “Последняя активность” выберите пункт “Никто”, либо “Мои контакты”, в зависимости от того, кому вы хотите показывать информацию о своём профиле.

На выбор будет доступно три опции:

  • “Все” – эта настройка используется по умолчанию. Все пользователи смогут видеть ваше последнее время в сети, даже если они не являются вашими контактами.
  • “Мои контакты” – пользователи, которых вы добавили в свои Telegram контакты смогут видеть ваше последнее время в сети.
  • “Никто” – с этой настройкой, никто из пользователей или ваших контактов не сможет увидеть ваше последнее время посещения, однако для этого можно также настроить исключения.
Еще по теме:  Можно ли посмотреть историю поиска в Телеграмме

Вы можете добавить других пользователей в исключения в том же окне настроек последней активности. При помощи этой возможности вы можете добавить конкретных пользователей, для того чтобы на них не распространялись установленные вами настройки конфиденциальности.

Все эти настройки одинаковы как для мобильных устройств, так и для компьютеров. После выполнения этих шагов ваши контакты из Telegram не смогут видеть, когда вы были последний раз в сети, и другую информацию о вашей активности. Обратите внимание, что эти настройки применяются только к вашему профилю, и вы всё равно сможете видеть информацию о последнем разе входа других пользователей, если они не меняли настройки конфиденциальности.

Как удалить учётную запись в Zoom

Как узнать последнее время входа, если пользователь скрыл это в настройках конфиденциальности

Если пользователь скрыл своё время последнего посещения в Telegram, то вместо этого будет отображаться надпись “Был(а) недавно”. Однако в этом мессенджере остаётся ещё несколько способов узнать время последнего визита.

telegram когда в сети

  1. Вы можете попросить человека добавить вас в контакты. Это позволит вам увидеть время посещения пользователя, если это позволяют его настройки конфиденциальности.
  2. Если ваши сообщения доходят до получателя и прочитываются (отмечаясь двумя галочками), это значит, что пользователь был какое-то время в сети и вы можете предположить, когда он заходил в Telegram.
  3. Можно запланировать отправку сообщения пользователю. Для этого в переписке можно выбрать новую функцию “Отправить когда будет в сети”. Мессенджер автоматически отправит ваше сообщение получателю, когда он появится в сети. Таким образом, вы можете узнать о его времени входа.

Однако стоит помнить, что если пользователь решил скрыть своё время последнего посещения, то, скорее всего, он стремится сохранить приватность и не желает, чтобы кто-то отслеживал его активность.

Пожалуйста, оцените статью.

Источник: trashexpert.ru

Рейтинг
( Пока оценок нет )
Загрузка ...