По своей сути 2FA должен защищать учетную запись от несанкционированного доступа при критически-важных действиях с ней. Но почему-то он не используется при копировании папки с телеграм с устройства пользователя на новое устройство.
Скорее всего большинство пользователей не в курсе, что папку с телеграм можно просто скопировать с компьютера и запустить его на другом компьютере. При этом 2FA запрашиваться не будет, даже если он установлен. При этом телеграм совсем ничего не запросит, а просто молча запустится. Что ещё хуже, при этом даже новой сессии у пользователя в списке не появится. Телеграм будет полноценно работать на 2-х устройствах под одной сессией.
Это по сути самый элементарный способ перехвата чужих сообщений в Telegram. Страшен он тем, что для этого злоумышленнику не надо даже быть программистом. Достаточно однажды получить доступ к компьютеру и скопировать папку. А в отсуствии владельца компьютера, достаточно подключить жесткий диск пользователя к любому разлоченному компьютеру и скопировать папку оттуда.
Для предотвращения этого всего-то необходимо запрашивать 2FA пароль, хотябы при смене устройства или ОС пользователя. Почему же это до сих пор не реализовано?
Sazonov
Потому что имея физический доступ к устройству, пусть даже и с ограниченными правами вы можете сделать практически что угодно. В том числе получить hwid компа жертвы и получить 1:1 окружение для телеграмма.
Каким образом вы предлагаете отслеживать описанные вами фокусы на стороне сервера?
SCINER Автор
Но у меня реально вопрос, почему нельзя запросить 2FA хотя бы когда ОС или его версия меняется? Есть варианты, что можно скопировать папку у жертвы, но при этом не получить доступ к этому самому HWID.
Sazonov
Нет такого варианта, если у жертвы даже с ограниченными привилегиями запускается телеграмм; то вы точно так же сможете получить hwid, как это делает телеграмм.
А делать защиту от хакеров-школьников смысла нет. Единственный вариант — хранить ключи в платформозависимых хранилищах. Но тогда очень сильно усложняется кросс-платформенная поддержка.
druidvav
Под MacOS можно хранить в Keychain, например.
SCINER Автор
Можно, но делается ли это у всех по умолчанию?
druidvav
очень многие пользуются. телеграм, разумеется, нет.
vazir
Ничего не нужно отслеживать по hardware id и т.д. При возникновении 2х живых сессий с одним ID, предупреждать пользователя, что появились 2 одинаковые сесии, и они будут прибиты (прибит ключ сессии) если ОБЕ не скажут что так и было задумано, прямо вот сейчас немедленно. 2 живые сессии — это означает 2 одновременных, живых TCP соединения на бэкенд. Телеграм вроде использует polling, но и persistent connections должен же использовать, поскольку polling это жуть как накладно.
grishkaa
По-моему там как-то так и делается.
SCINER Автор
Да, очень даже хороший способ.