В Telegram существует давняя проблема, позволяющая при определённых обстоятельствах определить точное местоположение пользователя. Разработчики Telegram знают о ней, но считают это не багом или уязвимостью, а фичей.
Уязвимость существует уже около года, равно как и инструменты для её эксплуатации. Необходимые условия:
- Злоумышленнику известно, в каком городе проживает жертва, которую нужно выследить
- У жертвы включена функция People Nearby («Люди рядом»), позволяющая видеть, кто поблизости использует Telegram
- Жертва разрешила добавить себя в список People Nearby
Если эти условия соблюдены, злоумышленник может с помощью подмены GPS-координат переместиться в город, где живёт отслеживаемый, и с помощью специального скрипта несколько раз сменить свои координаты, чтобы методом триангуляции определить примерное положение жертвы.
Проблема усугубляется тем, что Telegram показывает человека с точностью до метра, поэтому триангуляция позволяет очень точно определить, где он находится. Координаты в системе GPS определяется довольно точно, хотя и допускается погрешность в 50 метров. Если бы Telegram округлял расстояние до пользователей до километра, точно вычислить местоположение жертвы было бы невозможно.
Функции, схожие с People Nearby в Telegram, были в Tinder и Line, но эти сервисы отказались от них, когда ИБ-исследователи показали, как и их помощью можно вычислить, где находится конкретный человек. People Nearby используется в Telegram как неофициальный сервис знакомств, и мессенджер не собирается избавляться от этой фичи или вносить изменения в её работу.
Автор утверждает, что эта уязвимость активно эксплуатируется, но не для слежки за людьми, а мошенниками. Они запускают ботов с красивыми девушками на аватарах, а затем «разводят» тех, кто пытается познакомиться с ними. Жертвы видят, будто девушка находится рядом, предлагают встретиться, а бот выманивает у них деньги.
Комментарий пресс-службы Telegram:
Функция People Nearby по умолчанию отключена в мессенджере. Кроме того, недавно в её работу были внесены изменения, делающие невозможным вычисление точного местоположения пользователя методом триангуляции.