Три атаки на Google Password Manager позволяют угонять аккаунты с passkey
Исследователи из подразделения Unit 42 (Palo Alto Networks) описали три сценария атак на облачный аутентификатор Google Password Manager в браузере Chrome. Все они позволяют вредоносной программе, уже запущенной на компьютере жертвы с правами обычного пользователя, войти в аккаунты, защищённые ключами доступа (passkey), — без отпечатка пальца, PIN-кода и без единого запроса на экране.
Важная оговорка: криптография passkey не взломана. Атаки нацелены на код вокруг ключей — на то, как Chrome хранит ключи устройства, как заново регистрирует устройство после утраты этого состояния и проверяет ли сайт, что человек вообще прошёл верификацию. Все три пути требуют, чтобы вредонос уже присутствовал на машине, поэтому речь идёт о постэксплуатации: методы описывают, до чего дотянется злоумышленник на уже скомпрометированном устройстве, а не как это устройство было захвачено. Исследование ограничено Chrome под Windows с модулем TPM.
Три пути
Названия техник обыграны на манер известных атак на Kerberos. Pass-ta-key извлекает обёрнутый ключ идентичности устройства и заставляет тот же TPM подписать подложный запрос через Windows CNG. Google возвращает валидное подтверждение, и от настоящего его отличает лишь один неустановленный бит — флаг User Verified. Спецификация WebAuthn требует, чтобы сайт с параметром userVerification: required отклонял такое подтверждение. По словам исследователей, GitHub проверку соблюдал, а eBay принимал тестовое подтверждение, пока не устранил пробел после уведомления.
Silver Pass-ta-key вынуждает Chrome заново пройти регистрацию устройства. В момент, когда браузер ещё не создал свой ключ верификации пользователя, злоумышленник подсовывает собственный. Сервис, как утверждается, не проверяет, что новый ключ пришёл из защищённого оборудования, — и подписанные им подтверждения несут флаг UV, открывая доступ к аккаунту уже без устройства жертвы.
Самый серьёзный, Golden Pass-ta-key, метит в мастер-ключ — 32-байтный Security Domain Secret, которым расшифровываются синхронизированные приватные ключи. Вредонос запускает повторную регистрацию и считывает секрет из памяти процесса Chrome, где тот ненадолго оказывается в открытом виде.
Что дальше
CVE-идентификаторов у техник нет, о случаях эксплуатации в реальном мире не сообщается. Google, по словам исследователей, ранее убрал утечку секрета из FIDO-логов Chrome, а eBay начал проверять флаг UV, однако публичных уведомлений об этих изменениях найти не удалось. Открытым остаётся и главный для пострадавших вопрос: аннулирует ли смена PIN-кода или удаление данных Password Manager уже украденный секрет — документация Google такого механизма не описывает.
Relying party рекомендуют требовать проверку пользователя и лично сверять возвращённый бит UV, а поставщикам учётных данных — аттестовать новые ключи и не выпускать мастер-ключи в логи и память.
Источник: The Hacker News
Комментарии
Войдите, чтобы комментировать.