TOTP-секреты пользователей Proton попадали в локальные журналы — баг уже исправлен
Proton исправила баг в новой версии приложения Proton Authenticator для iOS, из-за которого конфиденциальные TOTP-секреты пользователей сохранялись в логах в открытом виде. Это потенциально могло привести к утечке кодов двухфакторной аутентификации, если такие логи были бы переданы другим лицам.
На прошлой неделе Proton выпустил новое приложение Proton Authenticator — бесплатное отдельное решение для двухфакторной аутентификации, доступное для Windows, macOS, Linux, Android и iOS. Оно позволяет хранить TOTP-секреты, на основе которых формируются одноразовые коды для входа в аккаунты на сайтах и в приложениях.
Однако после релиза один из пользователей опубликовал (а затем удалил) пост в Reddit, в котором сообщил, что iOS-версия сохраняет TOTP-секреты в отладочные логи:
Я импортировал свои аккаунты 2FA, включил резервное копирование и синхронизацию — все выглядело хорошо. В какой-то момент я изменил метку у одной из записей и переключился на другое приложение. Когда вернулся — примерно половина записей исчезла. Думаю, это произошло после редактирования, но не уверен на 100%. В любом случае, записи пропали без предупреждений и ошибок.
Я хотел отправить баг-репорт. Пока готовил его, открыл лог-файл, и вот тут все стало по-настоящему тревожно: оказалось, что лог содержит все TOTP-секреты в открытом виде. В том числе и для моего аккаунта Bitwarden.
Другой пользователь подтвердил, что причина утечки — в iOS-коде, где TOTP-данные добавляются в переменную params, которая затем передается в функции добавления и редактирования записей. Эти функции, в свою очередь, записывают содержимое params в лог — включая TOTP-секрет.
Proton подтвердил наличие бага в iOS-версии и заявил, что он уже исправлен в обновлении v1.1.1, опубликованном в App Store 4 августа.
В компании заявили:
Секреты никогда не передаются на сервер в открытом виде. Вся синхронизация происходит с использованием сквозного шифрования. Логи — только локальные (не отправляются на сервер), и эти секреты можно экспортировать с устройства в рамках требований GDPR по переносимости данных.
Иными словами, даже если бы секреты не попадали в логи, человек, получивший доступ к вашему устройству, мог бы и так их извлечь. Шифрование Proton не защищает от компрометации на стороне устройства — его защита вне нашей модели угроз.
Мы обновили приложение для iOS, чтобы изменить поведение логирования. Однако это не является уязвимостью, которую можно эксплуатировать удаленно. Если злоумышленник получил доступ к вашему устройству и логам — он все равно сможет получить эти данные. Ни Proton, ни какое-либо другое приложение для двухфакторной аутентификации не сможет это предотвратить.
Хотя данные из логов нельзя использовать удаленно, проблема заключалась в том, что при их передаче или публикации — например, для диагностики ошибки или отправки отчета — чувствительные TOTP-секреты могли попасть к посторонним.
Эти секреты затем можно было бы импортировать в другое приложение-аутентификатор и использовать для генерации одноразовых кодов доступа к аккаунту.
Обновления программ, что нового
• ИИ-модель GPT-5 будет доступна в GitHub Models, ChatGPT и Microsoft Copilot
• Redmi 15C 5G: новые детали о зарядке и характеристиках смартфона
• Утечка данных о GPT-5: OpenAI готовит анонс новой модели
• Обновление Intel ARC Game On Driver 32.0.101.6987 WHQL. Управление видеопамятью на Intel Core Ultra
• AMD Radeon Software Adrenalin 25.10.25.02 Preview. Поддержка расширения Vulkan для ускорения трассировки лучей
• WhatsApp* добавил защиту от мошенников в групповых чатах