Открыть сервис

Trusted Execution Environment

Trusted Execution Environment (TEE, доверенная среда исполнения) — это аппаратно-изолированная область внутри основного процессора устройства (например, смартфона, планшета, сервера), которая обеспечивает безопасное выполнение кода и хранение конфиденциальных данных независимо от основной операционной системы (ОС). TEE гарантирует, что даже при компрометации ОС или приложений, работающих в обычном (богатом) окружении, данные и процессы внутри TEE остаются защищёнными от несанкционированного доступа, модификации и наблюдения.

Принцип работы

TEE реализуется на аппаратном уровне и представляет собой изолированное вычислительное окружение, работающее параллельно с основной ОС. Ключевым элементом является доверенное приложение (Trusted Application, TA), которое выполняется внутри TEE, и доверенная операционная система (Trusted OS), управляющая ресурсами TEE. Доступ к TEE осуществляется через строго определённые интерфейсы, которые контролируются аппаратными механизмами, такими как монитор безопасности (Secure Monitor) или гипервизор.

Основные этапы работы TEE:

  1. Загрузка: при включении устройства процессор запускает доверенную загрузку (Secure Boot), которая проверяет целостность и подлинность кода TEE и доверенной ОС.
  2. Изоляция: TEE использует аппаратные механизмы, такие как отдельные области памяти (TrustZone в ARM, SGX в Intel), которые недоступны для основной ОС даже при получении ею полного контроля над устройством.
  3. Выполнение: доверенные приложения внутри TEE обрабатывают конфиденциальные данные (например, ключи шифрования, биометрические шаблоны) и взаимодействуют с внешним миром только через защищённые каналы.
  4. Защита: TEE обеспечивает конфиденциальность (данные не видны извне), целостность (код и данные не могут быть изменены) и аутентичность (выполняемый код является подлинным).

История

Концепция TEE возникла как ответ на рост числа кибератак и необходимость защиты конфиденциальных данных на мобильных устройствах. Первые реализации появились в начале 2010-х годов.

  • 2010 год: компания ARM представила технологию TrustZone, которая стала первой широко распространённой аппаратной реализацией TEE для мобильных процессоров. TrustZone разделяет процессор на два «мира»: нормальный (Normal World) для основной ОС и безопасный (Secure World) для TEE.
  • 2013 год: GlobalPlatform, международная организация по стандартизации, выпустила спецификацию TEE, определившую архитектуру, интерфейсы и требования к безопасности. Это позволило унифицировать разработку TEE-решений.
  • 2015 год: корпорация Intel представила технологию Software Guard Extensions (SGX), которая обеспечивает аппаратную изоляцию на уровне отдельных приложений (так называемые анклавы) в серверных и клиентских процессорах.
  • 2018 год: компания AMD анонсировала Secure Encrypted Virtualization (SEV), технологию, изолирующую виртуальные машины на уровне шифрования памяти.
  • 2020-е годы: TEE активно внедряется в облачные вычисления, интернет вещей (IoT) и финансовые технологии. Появляются открытые реализации, такие как OP-TEE (Open Portable Trusted Execution Environment) и Trusty TEE от Google.

Классификация TEE

TEE можно классифицировать по нескольким признакам:

По аппаратной платформе

  • ARM TrustZone: наиболее распространённая реализация для мобильных устройств, встраиваемых систем и IoT. Использует разделение процессора на два мира.
  • Intel SGX: ориентирована на серверные и клиентские процессоры Intel. Создаёт анклавы — защищённые области памяти, недоступные даже для ОС.
  • AMD SEV: предназначена для виртуализации в облачных средах. Шифрует память виртуальных машин, защищая их от гипервизора.
  • RISC-V TEE: открытая архитектура, позволяющая реализовать TEE на основе набора инструкций RISC-V.

По области применения

  • Мобильные TEE: используются в смартфонах и планшетах для защиты биометрических данных (отпечатки пальцев, Face ID), платежей (Apple Pay, Google Pay) и DRM (цифровое управление правами).
  • Серверные TEE: применяются в облачных вычислениях для изоляции конфиденциальных рабочих нагрузок (например, обработка персональных данных, шифрование ключей).
  • Встраиваемые TEE: используются в устройствах IoT, автомобилях, медицинском оборудовании для защиты критически важных функций.

По уровню изоляции

  • Процессорная изоляция: TEE работает на уровне ядра процессора, как в TrustZone.
  • Прикладная изоляция: TEE изолирует отдельные приложения или процессы, как в Intel SGX.
  • Виртуализационная изоляция: TEE защищает целые виртуальные машины, как в AMD SEV.

Устройство и характеристики

TEE состоит из нескольких ключевых компонентов:

  • Аппаратное обеспечение: процессор с поддержкой TEE (например, ARM Cortex-A с TrustZone), защищённая память (Secure RAM), аппаратные генераторы случайных чисел, криптографические ускорители.
  • Доверенная операционная система (Trusted OS): легковесная ОС, работающая внутри TEE. Примеры: OP-TEE, Trusty TEE, QSEE (Qualcomm Secure Execution Environment).
  • Доверенные приложения (Trusted Applications): специализированные программы, выполняемые внутри TEE. Они имеют доступ к защищённым ресурсам и взаимодействуют с обычными приложениями через API.
  • Монитор безопасности (Secure Monitor): программный или аппаратный компонент, управляющий переключением между нормальным и безопасным мирами.

Основные характеристики TEE:

  • Изоляция: полная изоляция от основной ОС и приложений, даже при наличии уязвимостей.
  • Целостность: гарантия того, что код и данные внутри TEE не были изменены.
  • Конфиденциальность: данные внутри TEE не могут быть прочитаны извне.
  • Аутентичность: выполнение только подписанного и проверенного кода.
  • Производительность: TEE обычно работает медленнее основной ОС из-за ограниченных ресурсов и дополнительных проверок.

Применение

TEE нашла широкое применение в различных отраслях:

Мобильные устройства

  • Платежи: защита данных банковских карт и проведение транзакций в Apple Pay, Google Pay, Samsung Pay.
  • Биометрия: хранение и обработка шаблонов отпечатков пальцев, Face ID, распознавание голоса.
  • DRM: защита цифрового контента (видео, музыка) от несанкционированного копирования (например, Widevine от Google).
  • Аутентификация: хранение ключей для двухфакторной аутентификации (FIDO2).

Облачные вычисления

  • Конфиденциальные вычисления: обработка конфиденциальных данных (медицинские записи, финансовые транзакции) в облачных средах без доступа провайдера к данным.
  • Защита ключей: хранение и использование криптографических ключей в анклавах Intel SGX.
  • Блокчейн: выполнение смарт-контрактов в защищённой среде (например, проект Secret Network).

Интернет вещей (IoT)

  • Защита прошивки: обеспечение целостности и аутентичности обновлений прошивки в устройствах IoT.
  • Безопасная связь: шифрование данных, передаваемых между устройствами IoT и серверами.
  • Управление доступом: защита ключей и сертификатов для аутентификации устройств.

Автомобильная промышленность

  • Защита электронных блоков управления (ЭБУ): изоляция критически важных функций, таких как управление тормозами и двигателем.
  • Обновления по воздуху (OTA): безопасная установка обновлений программного обеспечения.

Финансовый сектор

  • Обработка транзакций: защита данных кредитных карт и проведение безопасных платежей.
  • Цифровые подписи: хранение и использование ключей для электронной подписи.

Критика

Несмотря на преимущества, TEE имеет ряд недостатков и критикуется экспертами по безопасности:

  • Уязвимости: TEE не является абсолютно защищённой. Были обнаружены атаки, такие как Foreshadow (на Intel SGX), Plundervolt (манипуляция напряжением), AEPIC Leak (утечка данных через прерывания). Эти уязвимости позволяют злоумышленникам извлекать данные из TEE.
  • Сложность реализации: разработка и отладка TEE-приложений требует высокой квалификации, что увеличивает стоимость и время разработки.
  • Ограниченная производительность: TEE обычно имеет ограниченные вычислительные ресурсы и память, что может быть критично для ресурсоёмких задач.
  • Зависимость от производителя: TEE часто является проприетарной технологией, что создаёт риски vendor lock-in и ограничивает возможности аудита безопасности.
  • Проблемы с обновлениями: обновление TEE и доверенной ОС может быть сложным и требовать перезагрузки устройства, что создаёт уязвимости в период между обновлениями.
  • Эксплуатация в злонамеренных целях: TEE может использоваться для сокрытия вредоносного кода, например, для создания руткитов, которые невозможно обнаружить из основной ОС.

Интересные факты

  • Технология TrustZone используется в большинстве современных смартфонов на базе процессоров ARM, включая устройства Apple (iPhone, iPad) и устройства на Android.
  • Intel SGX была использована в проекте Microsoft Azure Confidential Computing для защиты облачных вычислений.
  • В 2021 году исследователи из Университета Граца (Австрия) продемонстрировали атаку Platypus, которая позволяла извлекать данные из Intel SGX с помощью анализа энергопотребления.
  • Стандарт GlobalPlatform TEE является основой для многих коммерческих реализаций, включая Qualcomm Secure Execution Environment (QSEE) и Trustonic TEE.
  • В России TEE используется в системах электронного правительства, например, для защиты данных в мобильных приложениях «Госуслуги» и «Москва».

Источники

  • GlobalPlatform. «TEE System Architecture». GlobalPlatform, 2013.
  • ARM. «ARM Security Technology: Building a Secure System using TrustZone Technology». ARM, 2009.
  • Intel. «Intel Software Guard Extensions (Intel SGX)». Intel Corporation, 2015.
  • AMD. «AMD Secure Encrypted Virtualization (SEV)». AMD, 2018.
  • «OP-TEE: Open Portable Trusted Execution Environment». Linaro, 2014.
  • «Trusty TEE: A Secure OS for Android». Google, 2014.
  • «Foreshadow: Breaking the Virtual Memory Abstraction with Transient Out-of-Order Execution». Van Bulck et al., 2018.
  • «Plundervolt: Software-based Fault Injection Attacks against Intel SGX». Murdock et al., 2020.
  • «AEPIC Leak: Architecturally Leaking Uninitialized Data from the Microarchitecture». Abera et al., 2022.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →