Купить решения «Лаборатории Касперского»
в интернет-магазине Kaspersky-Security.ru |
Как можно подсмотреть, что вводит пользователь Apple Vision Pro | Блог Касперского
Исследователи рассказали о методике, позволяющей узнать, что вводит пользователь Apple Vision Pro на виртуальной клавиатуре, — в том числе и пароли.
В сентябре 2024 года группа исследователей из Университета Флориды и Техасского технологического университета представила научную работу с описанием весьма замысловатой методики перехвата текстовой информации, которую вводит пользователь гарнитуры виртуальной/дополненной реальности Apple Vision Pro.
Изобретенный ими способ атаки на пользователей Vision Pro исследователи назвали GAZEploit. В этом посте мы попробуем разобраться, как работает эта атака, насколько она эффективна, реалистична и опасна для владельцев VR/AR-устройств Apple и как лучше защитить свои пароли и другую конфиденциальную информацию.
Как устроен ввод информации в Apple visionOS
Сперва немного поговорим о том, как вообще устроен ввод информации в visionOS — операционной системе, на базе которой работает Apple Vision Pro. Одной из наиболее впечатляющих инноваций гарнитуры смешанной реальности Apple стало чрезвычайно эффективное использование окулографии, то есть отслеживания движения глаз пользователя.
Направление взгляда служит в качестве основного метода взаимодействия пользователя с интерфейсом visionOS. Точность отслеживания положения глаз пользователя настолько высока, что ее достаточно для работы даже с очень небольшими элементами интерфейса — в том числе с виртуальной клавиатурой.
Хотя в visionOS присутствует опция диктовки, все же для ввода текстовой информации основным средством остается виртуальная клавиатура. При вводе конфиденциальной информации вроде паролей в системе предусмотрена защита от чужих глаз: в случае совместного использования экрана в visionOS и клавиатура, и вводимый пользователем пароль автоматически скрываются.
Вторая важная особенность AR-гарнитуры Apple — в способе реализации видеозвонков с участием пользователя Vision Pro. Поскольку устройство располагается непосредственно на лице пользователя, для передачи видеоизображения пользователя стандартный вариант с условной фронтальной камерой не работает. А использовать для видеоконференций отдельную внешнюю камеру было бы не по-яблочному сложно, да и видео участника в шлеме на голове выглядело бы довольно странно.
Поэтому в Apple придумали чрезвычайно оригинальную технологию, в которой используется так называемая виртуальная камера. На основе 3D-скана лица пользователя Vision Pro создает его цифровой аватар (в Apple называют его Persona), который и участвует в видеоконференциях. Persona может использоваться как в FaceTime, так и в других приложениях для видеозвонков.
При этом лицо пользователя отслеживается в режиме реального времени датчиками AR-гарнитуры, чтобы аватар мог полностью копировать все, что делает пользователь, — движения головы, губ, мимику и так далее.
GAZEploit: Как подсмотреть, что вводит пользователь Apple Vision Pro
Самая важная для авторов исследования GAZEploit особенность цифрового аватара заключается в том, что Persona, помимо прочего, аккуратнейшим образом повторяет за пользователем и движения глаз, используя для этого чрезвычайно точные данные от встроенных в Vision Pro датчиков. Именно в этом механизме исследователи и обнаружили уязвимость, позволяющую перехватывать вводимый пользователем текст.
Основная идея атаки довольно проста: хотя система аккуратно скрывает ввод паролей во время видеоконференции, по движению глаз пользователя, которые дублирует его цифровой аватар, можно реконструировать символы, вводимые с виртуальной клавиатуры, точнее, виртуальных клавиатур, которых в visionOS три: цифровая для ввода PIN-кодов, буквенная и символьно-цифровая. Это усложняет процесс распознавания, поскольку стороннему наблюдателю неизвестно, какая именно клавиатура используется в данный момент.
Но благодаря использованию нейросетей атака GAZEploit эффективно автоматизируется. На первом этапе атаки нейросеть используется для того, чтобы распознавать сеансы ввода текстовых данных. Дело в том, что паттерн движения глаз во время работы с виртуальной клавиатурой сильно отличается от обычного: частота морганий значительно снижается, а направление взгляда становится более упорядоченным.
На втором этапе нейросеть по изменению стабильности направления взгляда выделяет моменты выбора глазами отдельных символов, а по характерному паттерну — моменты нажатий на виртуальные клавиши. Далее по направлению взгляда делается предположение о том, на какую именно клавишу был направлен взгляд пользователя.
Насколько точно GAZEploit распознает вводимые данные
На самом деле все работает немного сложнее, чем может показаться из приведенного выше графика. В итоге вычислений на базе положения глаз цифрового аватара получается карта вероятных точек на виртуальной клавиатуре, на которые мог быть направлен взгляд пользователя в отдельные моменты сеанса ввода текстовых данных.
Далее построенная исследователями модель преобразует собранную информацию в список из K наиболее вероятных виртуальных клавиш, «нажатых» пользователем. При этом модель предусматривает несколько различных сценариев ввода данных (пароль, адрес почты/ссылка, PIN-код, произвольное сообщение), учитывающих особенности каждого из них.
Также нейросеть использует словарь и дополнительные приемы, помогающие лучше интерпретировать ввод. Например, клавиша «пробел» из-за своего размера часто попадает в топ-5 кандидатов, создавая большое количество ложноположительных срабатываний, которые необходимо отфильтровывать. А клавишу backspace необходимо вообще обрабатывать отдельно: в случае правильной догадки ее нажатие будет означать, что предыдущий символ был удален, но если догадка неправильная, то можно ошибочно «выкинуть» сразу два символа.
Приведенная разработчиками детальная картина ошибок распознавания показывает, что GAZEploit часто путает расположенные рядом клавиши: в режиме максимальной точности (K=1) правильно угадываются около трети введенных символов. Однако для групп из пяти наиболее вероятных символов (K=5) точность в зависимости от конкретного сценария составляет уже от 73 до 92%.
Насколько атака GAZEploit опасна с практической точки зрения
Подобная точность на практике означает, что потенциальные атакующие, вероятнее всего, не смогут получить пароль в готовом виде, однако могут существенно — на многие порядки — уменьшить количество попыток, необходимых для его подбора методом брутфорса.
Как заявляют исследователи, в случае PIN-кода из шести цифр для того, чтобы перебрать четверть всех наиболее вероятных комбинаций, понадобится всего 32 попытки. А в случае 8-символьного случайного пароля, состоящего из букв и цифр, количество попыток снижается с сотен триллионов до сотен тысяч (с 2,2×1014 до 3,9×105), что делает взлом пароля возможным даже на доисторическом компьютере с процессором Pentium.
Исходя из этого, GAZEploit мог бы стать достаточно серьезной угрозой и найти практическое применение в высокоуровневых целевых атаках. К счастью, уязвимость уже исправлена: в последних версиях visionOS Persona приостанавливается при активации виртуальной клавиатуры.
В принципе, в Apple могли бы защитить пользователей от подобных атак и более элегантным способом: достаточно было добавить немного случайных искажений к точным биометрическим данным, на которых основаны движения глаз цифрового аватара.
Так или иначе, обладателям Apple Vision Pro стоит обновить свои устройства до последней версии visionOS — и можно жить спокойно. Напоследок посоветуем как им, так и всем остальным все же осторожнее относиться к вводу паролей во время видеозвонков — по возможности избегать этого, всегда использовать как можно более надежные (длинные и случайные) комбинации символов, а для их создания и хранения пользоваться менеджером паролей.
Источник: Лаборатория Касперского
04.10.2024