
Эксперты из ИБ-компании Vectra выяснили, что десктопное приложение Microsoft Teams в версиях для ОС Windows, Linux и Mac хранит токены аутентификации в виде простого, незашифрованного текста. Разработчики из Microsoft в курсе ситуации. Они не считают это критичной проблемой.
Аналитики безопасности считают, что это серьёзная уязвимость в системе безопасности приложения Microsoft Teams, которая даёт злоумышленникам доступ к токенам аутентификации и учётным записям с включённой многофакторной проверкой подлинности ( ). Причём Microsoft Teams не только хранит токены аутентификации пользователя в открытом виде, но и никак не обеспечивает защиту доступа к файлам с этими данными.
Злоумышленник или инсайдер с локальным доступом к системе, где установлено приложение Microsoft Teams, может скопировать токены аутентификации и использовать их для входа в учётную запись жертвы. Исследователи Vectra обнаружили эту проблему в августе 2022 года и сообщили о ней в Microsoft.
Microsoft Teams является приложением, созданным с помощью фреймворка для разработки настольных приложений Electron. Оно запускается в окне браузера со всеми элементами, необходимыми для обычной веб-страницы (файлы cookie, строки сеанса, журналы и так далее). В среде Electron по умолчанию не поддерживается шифрование или защищённое расположение файлов. Среди экспертов такой способ создания приложений не считается достаточно безопасным для разработки критически важных продуктов, если только в них не будут применены дополнительные системы защиты данных.
Изначально эксперты Vectra решили проанализировать работу Microsoft Teams, пытаясь найти способ удалить деактивированные учётные записи из клиентских приложений. В процессе этой работы они обнаружили файл ldb с токенами аутентификации в открытом виде.

После проверки было установлено, что эти токены были активными и не являлись случайным дампом данных, возникшим в системе из-за ошибки. Эти токены дали экспертам доступ к учётным записям Outlook и Skype пользователя ПК.

Кроме того, аналитики обнаружили, что в папке Cookies также содержатся действительные токены аутентификации, а также информация об учётной записи, данные сеанса и маркетинговые теги от приложения Microsoft Teams.

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

Эксперты Vectra считают, что злоумышленники могут просканировать другие компьютеры в сети на предмет наличия подобных токенов и перехватить управление над учётными записями пользователей Microsoft Teams.
В Microsoft не согласилась с серьёзностью проблемы и заявили, что она не соответствует по критериям для оперативного исправления. «Описанная в ходе атаки методика не соответствует нашей планке для немедленного реагирования, поскольку требует, чтобы злоумышленник сначала получил доступ к внутренней части сети клиента или имел локальный доступ на ПК жертвы», — пояснили в Microsoft.
В Microsoft поблагодарили Vectra за раскрытие информации по этой проблеме и пообещали рассмотреть возможность её решения в будущей версии приложения Microsoft Teams без уточнения даты выхода патча.
Эксперты из Vectra рекомендуют пользователям удалить приложение Microsoft Teams и все относящиеся к нему файлы, а также использовать только браузерную версию клиента Microsoft Teams, где есть дополнительная защита данных и блокировка от утечек токенов аутентификации.
Системным администраторам, в компаниях которых нельзя перейти на другое решение, предлагается создать правило мониторинга для обнаружения процессов, обращающихся к следующим каталогам:
- [Windows] %AppData%\Microsoft\Teams\Cookies;
- [Windows] %AppData%\Microsoft\Teams\Local Storage\leveldb;
- [macOS] ~/Library/Application Support/Microsoft/Teams/Cookies;
- [macOS] ~/Library/Application Support/Microsoft/Teams/Local Storage/leveldb;
- [Linux] ~/.config/Microsoft/Microsoft Teams/Cookies;
- [Linux] ~/.config/Microsoft/Microsoft Teams/Local Storage/leveldb.