В TrustZone обнаружены уязвимости

В TrustZone обнаружены уязвимости

В TrustZone обнаружены уязвимости

Исследователи безопасности из группы Zero, опубликовали результаты поиска уязвимостей в технологии ARM TrustZone, позволяющей создавать аппаратно изолированные защищённые окружения, в которых выполняется отдельная специализированная операционная система.

Основным предназначением TrustZone является обеспечение изолированного выполнения обработчиков ключей шифрования, биометрической аутентификации, платёжных данных и другой конфиденциальной информации.

В исследовании рассмотрены реализации двух TEE-окружений (Trusted Execution Environment) - Qualcomm QSEE и Trustonic Kinibi, применяемых в Android-смартфонах и базирующихся на расширениях ARM TrustZone. Обе системы предоставляют урезанные проприетарные операционные системы, работающие на отдельном виртуальном процессоре и позволяющие выполнять специализированные защищённые обработчики (TA, Trusted Applications"). Защищённые обработчики не могут напрямую взаимодействовать с основной операционной системой Android, их вызов и передача данных осуществляется косвенно, через интерфейс диспетчеризации, работу которого обеспечивает устанавливаемые в основной системе библиотеки, процессы-демоны и модули ядра, пишет opennet.ru.

 

 

Исследование показало недостаточный уровень безопасности рассмотренных решений, в которых было выявлено несколько уязвимостей, а также одна кардинальная архитектурная недоработка (возможность отката на старую уязвимую версию обработчиков в защищённом окружении), которую невозможно устранить без изменений на аппаратном уровне или снижения стабильности работы устройства. Выполняемые внутри защищённых окружений операционные системы в полной мере не реализуют современные методы блокирования атак (например, защиту от переполнения стека), что позволяет использовать выявленные уязвимости для совершения реальных атак. Проблемы проявляются во всех устройствах на чипах Qualcomm и устройствах на чипах Trustonic Kinibi версии до 400 (т.е. все устройства на базе Samsung Exynos, кроме Galaxy S8 и S8 Plus).

Для получения контроля над компонентами защищённого окружения достаточно найти уязвимость в выполняемых в данном окружении обработчиках, которые написаны без использования языков, обеспечивающих безопасные методы работы с памятью, и содержат типовые ошибки, свойственные коду на языке Си. Например, продемонстрированы методы эксплуатации, которые манипулируют переполнением стека в запускаемом внутри защищённого окружения обработчике одноразовых паролей (OTP). Эксплуатация производится через передачу слишком больших значений токенов, не вмещающихся в буфер, созданный на основании передаваемого в составе команды аргумента с размером токена.

Таким образом атака на компоненты защищённой ОС напоминает эксплуатацию уязвимостей в ядре ОС, осуществляемую через манипуляцию с системными вызовами. Но в случае защищённого окружения проблема усложняется тем, что многими производителями смартфонов не предусмотрено средств для отзыва защищённых обработчиков и выявленную уязвимость становится не так просто исправить - появляется возможность применять старые уязвимые обработчики для получения контроля за защищённым окружением, т.е. выявленную уязвимость можно использовать неопределённое время. Во многих случаях обработчики связаны с выполнением привилегированных операций в системе, что при успешной атаке позволяет не только получить доступ к данным, связанным с обработчиком, но и получить контроль над всем устройством.

Ошибочная раскладка помогла обойти первый рубеж защиты GPT-6 Astra

Разработчик под ником vechen обнаружил странность в GPT-6 Astra: модель понимает русский и украинский текст, случайно набранный в английской раскладке, но система предварительной модерации может увидеть в нём лишь безобидную кашу из букв.

В опубликованном эксперименте GPT-6 Astra High без дополнительных инструкций распознала смысл фразы, введённой латиницей вместо кириллицы.

Затем исследователь проверил слова и запросы, которые потенциально должны привлекать внимание защитных механизмов. В одном из тестов модель согласилась помочь со взломом сайта под предлогом проверки собственного ресурса, хотя аналогичный запрос в нормальной раскладке должен проходить более строгую проверку.

Причина, предположительно, в разделении системы на несколько уровней. Сначала входной фильтр анализирует текст пользователя, после чего сама модель интерпретирует запрос и формирует ответ.

 

Впрочем, до полноценного джейлбрейка не дошло. Проверка «Код.ру» показала, что неправильная раскладка действительно может помочь опасному запросу добраться до модели, но финальный фильтр блокирует запрещённый ответ.

Метод работает не со всеми языковыми парами. Кириллический текст, набранный латиницей, Astra распознаёт стабильно, а сочетание английской и турецкой раскладок в тестах не сработало. Похожее поведение исследователь заметил и у Fable 5.

Напомним, на прошлой неделе мы писали, что первые пользователи GPT-6 Astra заметили, что модель распараллеливает задачи и нагружает компьютеры кучей процессов.

RSS: Новости на портале Anti-Malware.ru