Версия популярного мессенджера Telegram для операционной системы macOS содержала неприятный баг, позволяющий пользователям восстанавливать ранее удалённые сообщения. Такого рода проблема угрожает в первую очередь конфиденциальности, считают эксперты Trustwave.
Речь идёт о специальных функциях «секретных чатов» в Telegram, позволяющих устанавливать таймер самоудаления для отдельных сообщений. Как пояснил специалист Trustwave Ричард Джейпол, у потенциального злоумышленника есть два способа задействовать брешь в атаке.
Первый способ позволяет любому получить отправленные данные геолокации, видеозаписи, голосовые записи и прочий пользовательский контент. Это сработает даже в том случае, если владелец сообщений запрограммировал их на автоматическое удаление как на своём устройстве, так и не девайсе собеседника.
Второй сценарий ещё хитрее, поскольку подобные сообщения могут утечь безо всякого взаимодействия с ними. Джейкпол помогал разработчикам Telegram работать над патчем для дыры в мессенджере. Само собой, освещать подробности до выхода заплатки запрещалось.
Примечательно, что девелоперы устранили первый вектор, но совершенно проигнорировали второй, что вынудило Джейкпола отказаться от вознаграждения за выявленный баг.
«Нам кажется, что строгие требования не разглашать информацию о найденных уязвимостях не помогают общему делу. На самом деле, они даже в какой-то степени мешают компаниям совершенствовать свои практики в области кибербезопасности», — объясняет своё видение ситуации эксперт.
Выявленный баг затрагивает версию Telegram 7.5, которая хранит геолокацию, аудио- и видеоконтент, а также документы в кеше по пути /Users/Admin/Library/Group Containers/XXXXXXX.ru.keepcoder.Telegram/appstore/account-1271742300XXXXXX/postbox/media.
Директория любого секретного чата содержит специальный префикс — «secret-file-xxxxxx». По умолчанию мессенджер сбрасывает в эту папку любые медиафайлы, исключая вложения. При этом геолокация, например, хранится в виде изображения.
После автоматического удаления сообщения с медиафайлами или данными геолокации (если пользователь настроил такое удаление), вся информация останется в директории кеша. Само сообщение, конечно же, удаляется из чата. Разработчики Telegram уже устранили данный недочёт.