Мужчина с фотографией Павла Дурова на митинге в Москве против ужесточения государственного контроля над интернетом (март 2019 года). Фото: Шамиль Жуматов / Reuters

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

Сначала представители Telegram объясняли, что никакого бага нет: всё так специально задумано. Но под влиянием общественности дыру всё-таки решили закрыть.

Пока что о закрытии уязвимости не объявлено официально, но на официальной платформе переводов для интерфейса Telegram замечена специфическая строка для перевода:



Как видно на скриншоте, в интерфейс добавлена опция PrivacyPhoneNumberSettings.CustomDisabledHelp со следующим описанием: Users who add your number to their contacts will see it on Telegram only if they are your contacts («При добавлении вашего номера в свои контакты пользователь увидит вас в Telegram только в том случае, если он присутствует в вашей телефонной книге»).

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

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


Установка «Никто» по-прежнему позволяет посторонним узнать ваш номер телефона, если они добавят его в свою телефонную книгу

В данный момент не совсем понятно, будет ли новая настройка включена по умолчанию. Но если принять во внимание бизнес-интересы компании Telegram, это маловероятно. Компании выгодно стимулировать рост социального графа вирусным способом, то есть через контакт-листы и телефонные книги пользователей. Это главная причина, почему Telegram максимально широко транслирует номера телефонов и другие конфиденциальные данные.

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

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

«Криптоскан»


Эксперты давно предупреждали, что нельзя доверять мессенджеру, который требует обязательного указания номера телефона при регистрации. На самом деле ещё в августе 2018 года стало известно о российской программе «Криптоскан», которая перебором 1 миллиарда номеров осуществляет деанонимизацию пользователей Telegram в России, Украине и Казахстане.

О существовании программы «Криптоскан» в августе 2018 года первой сообщила государственная газета «Известия». Она написала, что софт разработали программисты «Центра исследований легитимности и политического протеста»: «Мы проанализировали API (часть программного интерфейса приложения) и выяснили, что в мессенджере есть уязвимость, позволяющая раскрывать номера мобильных пользователей», — рассказал руководитель центра Евгений Венедиктов.

По словам Евгения Венедиктова, Центр исследований легитимности и политического протеста уже начал искать пользователей по запросу МВД и ФСБ.

Активисты в Гонконге более подробно описали этапы для деанонимизации пользователей: 1) скрипт генерирует контакт-лист с 10 000 телефонных номеров по порядку, 2) добавляется в группу протестующих, 3) Telegram сообщает, какие пользователи из контакт-листа уже есть в группе, 4) скрипт генерирует новый контакт-лист и повторяет вышеописанные действия, пока не переберёт все номера.



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

Комментарии (29)


  1. ooprizrakoo
    29.08.2019 18:01
    +3

    Непонятно вот что: если сейчас я могу постучаться к человеку в ТГ, зная его мобильник, то после включения этой настройки я не смогу этого сделать?
    Или же я смогу с ним переписываться, но не смогу видеть его ник/id в ТГ? В этом случае если я состою с ним в одной группе, и стучусь к нему и по номеру телефона, и по нику — у меня будет два разных окна чата, или он их объединит? (но в этом случае налицо новая уязвимость)


    1. mspain
      29.08.2019 18:47
      -2

      >могу постучаться к человеку в ТГ, зная его мобильник, то после включения этой настройки я не смогу этого сделать

      Ну постучись, а он тыкнет block и досвидос. Вот когда он тебя заапрувит явно, тогда пусть телега и показывает участия в общих чатах и тд

      Хотя, всё равно считать телегу безопасной это самозлобное буратинство.


    1. Whuthering
      29.08.2019 18:48

      Раньше для получения базы «id в телеграме <-> телефонный номер» достаточно было сгенерировать список со всеми возможными телефонными номерами, а в новом варианте нужен будет еще список со всеми возможными id/никам, и невероятное количество комбинаций элементов первого списка с элементами второго списка, чтобы сервера телеграмма не подавились из-за ограничение на количество контактов/запросов.
      То есть просто «составить справочник» будет очень тяжело, но вот «проверить подозрения» всё еще вполне реально, да.


    1. marinichev
      29.08.2019 19:43

      Думаю, механизм такой: если ваш номер телефона кто-то добавил в свой контакт лист и номер этого человека также добавлен и у вас, то телега покажет вас друг другу.


      1. barbos6
        29.08.2019 20:12

        Именно.
        Вот только «протестующие в Гонконгах» будут этому ну ооочень рады — самоорганизовываться и координироваться, а так же вовлекать новых участников станет не так удобно. :)

        ЗЫ. У координатора/координаторов в телефонных книгах должны будут быть все номера всех активистов. А это — сюрприз для властей и палево для организаторов.


        1. Whuthering
          29.08.2019 20:19

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


          1. Oplkill
            29.08.2019 22:07

            И в итоге мы снова придём к использованию никнеймов…


            1. dabar347
              30.08.2019 11:42

              А в чем проблема ников собственно?


  1. TimsTims
    29.08.2019 20:19

    ooprizrakoo

    то после включения этой настройки я не смогу этого сделать?
    Сможете. Но не сможете видеть, находитесь ли вы в одной и той же группе/канале.


    1. ooprizrakoo
      28.08.2019 22:33
      +1

      А зачем условному «правительству» видеть в одной я с ними группе или нет?
      Например про-правительственный бот заходит в канал, где сидит 1000 человек.
      Он создает список из их ников: @vasyaivanoff @petyapetroff, @leshasidoroff и кладет их в табличку «Оппозиционеры».
      После этого добавляет 1000 телефонных номеров, и создает диалоговое окно с каждым номером, в информации об участнике виден его @ник. И дальше смотрит совпадает ли этот ник с каким-то из таблички «Оппозиционеры».


  1. p1024x
    29.08.2019 20:30

    Как уже много писали ранее, все эти громкие слова про телеграмм, это просто маркетинг. Должен отметить, что весьма эффективный маркетинг.
    По факту что мы имеем? История «обычных» чатов хранится на сервере. Е2Е шифрование присутствует только в секретных чатах. Приватность под большим вопросом.

    Регистрация по номеру, на данный момент список контактов любой группы достаточно легко идентифицировать. Анонимности нет никакой, от слова совсем.

    Также очень много в своё время писали про защищённость, но что-то сомнительно тоже.


    1. chlovek
      29.08.2019 11:10

      История «обычных» чатов хранится на сервере
      А то, что для секретных чатов история не хранится на сервере, это надо на слово поверить, или это принципиально невозможно по какой-то причине? Полагаю, что обмен «секретными» ключами, как и самими сообщениями, всё равно происходит через дуровский сервер. Или я не прав?


      1. Whuthering
        29.08.2019 13:33

        Полагаю, что обмен «секретными» ключами, как и самими сообщениями, всё равно происходит через дуровский сервер. Или я не прав?
        Почитайте про протокол Диффи — Хеллмана (вариация которого как раз и используется в MTProto), он для этого и создан — чтобы две стороны могли надежно получить и использовать секретный ключ без его явной пересылки (то есть даже при наличии наблюдателя со стороны за каналом связи).
        Другое дело, что может быть бэкдор в клиенте, сливающий этот самый ключ куда-нибудь (в т.ч. на сервера телеги) окольными путями, в открытых исходниках подобного не находится, да и в закрытый бинарь подобное воткнуть не так-то просто будет.


        1. chlovek
          29.08.2019 14:44
          +1

          Почитайте про протокол Диффи — Хеллмана
          Дело в том, что в данном случае речь идёт не о пассивном наблюдателе, а практически о «man-in-the-middle» в лице сервера. Протокол Диффи — Хеллмана от такого не спасает.


          1. Whuthering
            29.08.2019 15:07
            +1

            Кстати да, справедливое замечание. DH рассчитан на то, что данные, пересылаемые по открытому каналу, могут быть подсмотрены, но не могут быть подменены, в данном же случае возможность этого есть.


          1. avost
            29.08.2019 15:51
            +1

            Протокол Диффи — Хеллмана от такого не спасает.

            Да, это так. Именно по этой причине в таких случаях абонентам показываются "слепки" ключей, которые они должны сверить по независимому каналу. Телеграмм это тоже делает. От утечек же "спасает" открытый код клиентов.


            1. chlovek
              30.08.2019 08:54

              Хорошо, что мы все сверяем такие слепки. А то ведь если б нас обманывали, то мы даже и не узнали бы )

              Ну а кроме шуток, вы правы, это похоже на какую-то гарантию. Я не представляю, как Дуров в таком случае мог бы прочитать сообщения, если исходить из известных способов. Правда, это не означает, что он их не хранит.

              P.S. Посмотрел, для секретного чата телеграм мне показывает 2 ключа по 128 бит (если я правильно понял). Строго говоря, есть вероятность, что такой ключ Павлик может и набрутить.


  1. Yuri_M
    29.08.2019 20:49

    Совсем отвязать мессенжер от телефонных номеров, сделав его полностью анонимным — в голову Дурову не приходит?..


    1. haryaalcar
      29.08.2019 21:34

      Дурову нужен бизнес: kpi, виральность, всё это. То, что многие восприняли ТГ как что-то безопасное, не больше, чем удачный пиар.


    1. KasperGreen
      29.08.2019 11:28

      Зачем? Ведь есть же tox. И как показал его пример, у пипла такая схема не приживается. Слишком сложно для рядового пользователя. А телеграмм — просто, но сомнительно.


      1. Yuri_M
        29.08.2019 20:56
        +1

        У tox другая проблема. Он p2p, что крайне неудобно для мобильных клиентов.

        Более удобный мессенжер стоило бы строить по двухуровневой системе а-ля фидонет — «ноды» (постоянно включенные компьютеры, связывающиеся друг с другом напрямую по tox-подобному протоколу) и «пойнты» (конечные пользователи, связывающиеся с другими через одну из нод).


        1. KasperGreen
          29.08.2019 21:10

          Если не ошибаюсь, так скайп был устроен — p2p+ноды. Кстати использование нод может ли привести к MitM с подменой трафика в токсе? Или использование открытого ключа вместо логина, такое исключает?


  1. JohnDoe_71Rus
    29.08.2019 20:52
    +2

    «При добавлении вашего номера в свои контакты пользователь увидит вас в Telegram только в том случае, если он присутствует в вашей телефонной книге»

    добавить телефон т. майора всем на сим-карту (как номера кол-центров и разных сервисов) и профит.


    1. KasperGreen
      29.08.2019 21:12

      Майор может сам сидеть из под сервисных номеров и не ждать когда его добавят.


  1. BanterFace
    29.08.2019 07:12

    Это всё бизнес, пиар, ууу!

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

    По крайней мере, в отличие от Вотса, Телеграм не имеет каких-то интересов в странах, готовых давить на эти самые интересы ради выдачи данных. Да и то, данные выдают не по мимокрокам а по следственному или судебному решению (наверное???), а если ты дал людям сопоставить аккаунт X и свою личность значит ошибка уже где-то была допущена ранее.

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


  1. metaprog
    29.08.2019 07:16
    -2

    А просто взять и перестать спрашивать телефон при регистрации для них не судьба?


    1. roscomtheend
      29.08.2019 09:33

      И потерять кучу домохозяек в обмен на пару айтишников? Не судьба, тем более они всё равно найдут к чему придраться.


      1. metaprog
        29.08.2019 18:12

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


  1. nfw
    29.08.2019 07:44
    -3

    Ох уж этот Пашенька, нисколько не лицемер. Как в Индонезии его начали блокировать, сразу побежал к их властям хвостик распушив, а Россию можно игнорировать — жрать будут и так.
    Как в Гонконге ВНЕЗАПНО обнаружили, что телега на телефон регистрируется, так сразу побежал подтирать за собой, а для России — это не баг, а фича — нехай, и так жрать будут.