Tcg tpm support что это - TurboComputer.ru
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд (пока оценок нет)
Загрузка...

Tcg tpm support что это

Trusted Platform Module

Другие идентичные названия опции: Security Chip, Execute TPM Command.

В число опций BIOS, предназначенных для защиты информации компьютера, входит опция Trusted Platform Module. Она позволяет включить поддержку одноименного аппаратно-программного комплекса защиты информации. Пользователь может выбрать всего два варианта значений опции – Enabled (Включено) и Disabled (Выключено).

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

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

Система Trusted Platform Module является одной из попыток удовлетворить насущную потребность в подобной технологии. Хотя она и не является панацеей, тем не менее, она способна значительно повысить степень защиты информации как на уровне компьютерных сетей, так и на уровне отдельных компьютеров и прочих устройств, содержащих важные данные.

Trusted Platform Module (TPM, доверенный платформенный модуль) – это программно-аппаратный комплекс для защиты информации. Комплекс может устанавливаться на любые компьютеры и даже на отдельные накопители и мобильные устройства, такие как смартфоны. Чаще всего комплексом TPM оснащаются ноутбуки. Что немаловажно, компьютерные системы, оснащенные аппаратными модулями TPM, стоят не намного дороже, чем аналогичные по характеристикам системы, не оснащенные TPM.

Основные свойства данных, которые призвана обеспечить технология TPM:

Стандарт TPM был разработан рядом известных производителей программного и аппаратного обеспечения, в число которых входят Microsoft, HP, Intel, IBM. Впоследствии к их числу присоединились такие компании, как Sun, AMD, Sony и Verisign.

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

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

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

Основой системы TPM является специальный чип, встроенный в материнскую плату. Этот чип, который часто называется криптографическим процессором или просто криптопроцессором, содержит необходимые для защиты информации программные и аппаратные средства. Его назначение – хранить и генерировать ключи, производить ассиметричное шифрование и хэширование данных. Микросхемы криптопроцессоров на сегодняшний день изготавливаются многими производителями и установлены на миллионах компьютеров.

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

На программном уровне для работы TPM необходима поддержка технологии со стороны операционной системы, а также наличие специального программного обеспечения. Технология Trusted Platform Module поддерживается большинством современных операционных систем линейки Windows, начиная с Windows XP SP2, а также современными версиями Linux.

Опция Trusted Platform Module позволяет включить в BIOS поддержку данной технологии. Она доступна лишь в том случае, если материнская плата компьютера оснащена криптопроцессором-микросхемой TPM. Выбор значения Enabled позволяет пользователю включить эту микросхему, а значения Disabled – выключить.

Стоит ли включать?

Ответ на этот вопрос зависит от того, установлена ли у вас на компьютере система Trusted Platform Module. Если да, то систему стоит включить. Однако необходимо помнить, что использование системы не является панацеей и не всегда может заменить применение традиционных антивирусов, брандмауэров и прочих средств компьютерной безопасности.

Производители BIOS предлагают пользователю выбор, и вы всегда сможете выключить данную систему, если вы не нуждаетесь в ее помощи. Само собой, если ваш компьютер оснащен старой операционной системой, не поддерживающей TPM (Windows XP SP1 и более старые ОС), то включение ее также не имеет никакого смысла.

Как обновить и очистить прошивку процессора безопасности TPM

Если у вас есть ноутбук или ПК с поддержкой TPM, и вы получаете сообщение в Центре безопасности Windows Defender, в котором сообщается, что вам необходимо обновить свой процессор безопасности или прошивку TPM, вам следует обновить его по приоритету. В этом руководстве я расскажу, как можно очистить TPM и обновить прошивку безопасности TPM.

Что такое TPM в Windows 10?

Trusted Platform Module (TPM) – является специализированным чипом. TPM обычно устанавливается на системную плату компьютера и взаимодействует с остальными компонентами системы с помощью аппаратной шины. Он может хранить ключи шифрования RSA, специфичные для хост-системы и аппаратной аутентификации. Чип TPM также содержит “пару” ключей RSA, называемую ключом подтверждения. Пара поддерживается внутри чипа и не может быть доступна с помощью программного обеспечения. Короче говоря, он может хранить важные данные, включая отпечатки пальцев, данные о лицах и т. д.

Как проверить есть ли TPM на компьютере?

Нажмите сочетание кнопок Win + R и введите tpm.msc. Модуль TPM может находиться в одном из следующих состояний: Готов к использованию, Готов к использованию в режиме ограниченной функциональности и Не готов к использованию. Чтобы воспользоваться большинством функций TPM в Windows 10, модуль TPM должен быть Готов к использованию.

Важно: Если у вас будет модуль, то вы сможете обновить и очистить TPM именно в этих параметрах справа. По этому вы можете не прибегать ниже к пунктам. Но если что пойдет не так, ниже пункты именно для вас.

Примечание: При включении TPM могут быть проблемы с bitlocker, отключите bitlocker при включении модуля TPM.

Как обновить прошивку процессора безопасности TPM

Обновление для TPM обычно содержит исправление для уязвимости безопасности, которая может повлиять на безопасность операционной системы. В этом обновлении будет рассмотрена уязвимость, которую вам необходимо будет загрузить и установить. Также возможно, что обновления прошивки отправляются OEM-производителями, которые быстрее по сравнению с Windows Update.

Загрузка и установка обновлений для Windows

Это лучший способ обновить ваш TPM. Если у вас отключены автоматические обновления, то обновите windows до последней версии через центр обновления Windows или установите патчи вручную , через каталог micosoft.

Установка обновлений прошивки OEM-производителями

Многие OEM-производители, включая Microsoft, предлагают обновления встроенного ПО отдельно. Если обновление прошивки TPM не было включено в Центр обновления Windows, то вам придется вручную загрузить и применить его. Ниже приведен список OEM-производителей, с которых вы можете загрузить обновление.

Как очистить TPM

После того как вы установили обновление прошивки либо через Центр обновления Windows, либо с веб-сайта OEM, вам также потребуется очистить TPM. Это важно для обеспечения безопасности данных. Очистка вашего TPM приведет к сбросу вашего процессора безопасности до его настроек по умолчанию.

  • Откройте Защитник Windows 10, перейдите Безопасность устройств. Далее найдите Устранение неполадок процессора безопасности и нажмите Очистить TPM. Перед завершением процесса необходимо перезагрузить устройство.

Очистить TPM с помощью PowerShell

Есть команда, которая сбрасывает модуль Trusted Platform Module в состояние по умолчанию и удаляет значение авторизации владельца и все ключи , хранящиеся в модуле TPM. Эта команда использует значение авторизации владельца, хранящееся в реестре, вместо указания значения или использования значения в файле.

  • Откройте PowerShell от имени администратора и введите Clear-Tpm.

Tcg tpm support что это

Trusted Platform Module (TPM), криптопроцессор, обеспечивает средства безопасного создания ключей шифрования, способных ограничить использование ключей (как для подписи так и для шифрования/дешифрования), с той же степенью неповторяемости, как и генератор случайных чисел. Также этот модуль включает следующие возможности: удалённую аттестацию, привязку, и надёжное защищённое хранение. Удалённая аттестация создаёт связь аппаратных средств, загрузки системы, и конфигурации хоста (ОС компьютера), разрешая третьему лицу (вроде цифрового магазина музыки) проверять, чтобы программное обеспечение, или музыка, загруженная из магазина, не были изменены или скопированы пользователем (см. ТСЗАП). Криптопроцессор шифрует данные таким способом, что они могут быть расшифрованы только на компьютере, где были зашифрованы, под управлением того же самого программного обеспечения. Привязка шифрует данные, используя ключ подтверждения TPM — уникальный ключ RSA, записанный в чип в процессе его производства, или другой ключ, которому доверяют.

Модуль TPM может использоваться, чтобы подтвердить подлинность аппаратных средств. Так как каждый чип TPM уникален для специфического устройства, это делает возможным однозначное установление подлинности платформы. Например, чтобы проверить, что система, к которой осуществляется доступ — ожидаемая система.

Архитектура TPM

В спецификации TCG описан минимальный набор алгоритмов и протоколов, которым должен удовлетворять чип TPM. Кроме того, производителем могут быть реализованы дополнительные алгоритмы и протоколы (которые, разумеется, должны быть описаны производителем в соответствующей документации). [2]

Читайте также:  Переносим данные с одного Samsung-устройства на другое

В архитектуре чипа реализованы следующие защитные алгоритмы:

  • защищённое управление памятью,
  • шифрование шины и данных,
  • активное экранирование.

Активное экранирование позволяет чипу детектировать электрическое тестирование и, в случае необходимости, блокировать чип. Кроме того, при изготовлении TPM используются и нестандартные технологические шаги, такие как запутывание топологии слоёв ИС. Эти меры значительно усложняют взлом чипа, увеличивают стоимость взлома, что ведёт к уменьшению потенциальных нарушителей. [3]

Ввод/Вывод (англ. I/O)

Этот компонент управляет потоком информации по шине. Направляет сообщения к соответствующим компонентам. I/O компонент вводит в действие политику доступа, связанную с функциями TPM.

Криптографический процессор

Осуществляет криптографические операции внутри TPM. Эти операции включают в себя:

  • Генерация асимметричных ключей (RSA);
  • Асимметричное шифрование/расшифрование(RSA);
  • Хэширование (SHA-1);
  • Генерация случайных чисел.

TPM использует эти возможности для генерации случайных последовательностей, генерации асимметричных ключей, цифровой подписи и конфиденциальности хранимых данных. Также TPM поддерживает симметричное шифрование для внутренних нужд. Все хранимые ключи по силе должны соответствовать ключу RSA длиной 2048 бит.

Энергонезависимая память (англ. Non-Volatile Storage)

Используется для хранения ключа подтверждения, корневого ключа (англ. Storage Root Key, SRK), авторизационных данных, различных флагов.

Ключ подтверждения (англ. Endorsement Key, EK)

EK — ключ RSA размером 2048 бит. Открытая чаcть называется PUBEK, закрытая — PRIVEK. EK генерируется до того, как конечный пользователь получит платформу. Последующие попытки сгенерировать или вставить EK не должны выполняться. Таким образом, EK — ключ, связанный с чипом. TPM должен гарантировать, что PRIVEK не будет доступен вне чипа. Используется только для установления владельца TPM и установления AIK.

Регистры конфигурации платформы (Platform Configuration Registers, PCR)

Могут хранится как в энергонезависимой, так и в энергозависимой памяти. Эти регистры сбрасываются при старте системы или при потери питания. TCG предписывает минимальное количество регистров (16). Регистры 0-7 зарезервированы для нужд TPM. Регистры 8-15 доступны для использования операционной системой и приложениями. Размер всех регистров — 160 бит.

Ключи подтверждения подлинности (англ. Attestation Identity Keys, AIK)

Эти ключи должны быть постоянными, но рекомендуется хранить AIK в виде блобов в постоянной внешней памяти (вне TPM), а не внутри энергонезависимой памяти TPM. TCG предполагает, что производители обеспечат достаточно места для многих блобов AIK, которые будут одновременно загружаться в энергозависимую память TPM. AIK — ключ RSA длиной 2048 бит. Фактически, TPM может сгенерировать неограниченное количество AIK. TPM должен защищать закрытую часть асимметричного ключа. AIK не используется для шифрования, только для подписей. Переход AIK от одного TPM к другому должен быть запрещён.

Генератор случайных чисел (англ. Random Number Generator, RNG)

Используется для генерации ключей и случайностей в сигнатурах. TPM должен быть способным обеспечить 32 случайных бита на каждый вызов. RNG чипа состоит из следующих компонентов:

  • Источник энтропии и коллектор

Источник энтропии — процесс (или процессы), обеспечивающие энтропию. Такими источниками могут быть шум, счётчик тактов процессора и другие события. Коллектор энтропии — процесс, который собирает энтропию, удаляет смещение, выравнивает выходные данные. Энтропия должна передаваться только регистру состояния.

  • Регистр состояния

Реализация регистра состояния может использовать 2 регистра: энергозависимый и независимый. При старте TPM загружает энергозависимый регистр из энергонезависимого. Любое последующее изменение регистра состояния от источника энтропии или от смешивающей функции влияет на энергозависимый регистр. При выключении TPM записывает текущее значение регистра состояния в энергонезависимый регистр (такое обновление может происходить и в любое другое время). Причиной такой реализации является стремление реализовать энергонезависимый регистр на флэш-памяти, количество записи в которую ограничено. TPM должен обеспечить отсутствие экспорта регистра состояния.

  • Смешивающая функция

Берёт значение из регистра состояния и выдаёт выходные данные RNG. Каждое использование смешивающей функции должно изменять регистр состояния.

При потери питания происходит сброс RNG. Любые выходные данные RNG для TPM должны быть защищены.

Устройство SHA-1 (англ. SHA-1 Engine)

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

Генератор ключей RSA (англ. RSA Key Generator)

Создаёт пары ключей RSA. TCG не накладывает минимальных требований ко времени генерации ключей.

Устройство RSA (англ. RSA Engine)

Используется для цифровых подписей и шифрования. Нет ограничений на реализацию алгоритма RSA. Производители могут использовать китайскую теорему об остатках или любой другой метод. Минимально рекомендуемая длина ключа — 2048 бит. Значение открытой экспоненты должно быть .

Доверенная платформа (англ. The trusted Platform)

В системах TCG корни доверия (roots of trust) — компоненты, которым нужно доверять. Полный набор корней доверия имеет минимальную функциональность, необходимую для описания платформы, что влияет на доверенность этой платформе. Есть три корня доверия: корень доверия для измерений (RTM), корень доверия для хранения (RTS) и корень доверия для сообщений (RTR). RTM — вычислительный механизм, который производит надёжные измерения целостности платформы. RTS — вычислительный механизм, способный хранить хэши значений целостности. RTR — механизм, который надёжно сообщает о хранимой в RTS информации. Данные измерений описывают свойства и характеристики измеряемых компонентов. Хэши этих измерений — «снимок» состояния компьютера. Их хранение осуществляется функциональностью RTS и RTR. Сравнивая хэш измеренных значений с хэшом доверенного состояния платформы можно говорить о целостности системы.

Возможные применения

Аутентификация

TPM может рассматриваться в качестве токена (Security token) аутентификации следующего поколения. Криптопроцессор поддерживает аутентификацию и пользователя, и компьютера, обеспечивая доступ к сети только авторизованным пользователям и компьютерам. [4] Это может использоваться, например, при защите электронной почты, основанной на шифровании или подписывании при помощи цифровых сертификатов, привязанных к TPM. Также отказ от паролей и использование TPM позволяют создать более сильные модели аутентификации для проводного, беспроводного и VPN доступа.

Защита данных от кражи

Это основное назначение «защищённого контейнера». Самошифрующиеся устройства, реализованные на основе спецификаций Trusted Computing Group, делают доступными встроенное шифрование и контроль доступа к данным. Такие устройства обеспечивают полное шифрование диска, защищая данные при потере или краже компьютера. [5]

  • Улучшение производительности

Аппаратное шифрование позволяет оперировать со всем диапазоном данных без потерь производительности.

  • Усиление безопасности

Шифрование всегда включено. Кроме того, ключи генерируются внутри устройства и никогда не покидают его.

  • Низкие издержки использования

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

Большие перспективы имеет связка TPM+Bitlocker.Такое решение позволяет прозрачно от ПО шифровать весь диск.

Управление доступом к сети (NAC)

TPM может подтверждать подлинность компьютера и даже его работоспособность ещё до получения доступа к сети и, если необходимо, помещать компьютер в карантин. [6]

Защита ПО от изменения

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

Защита от копирования

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

Реализация

Производители

Уже более 300’000’000 компьютеров были оснащены чипом TPM. [4] В будущем TPM может устанавливаться на такие устройства, как мобильные телефоны. Микроконтроллеры TPM производятся следующими компаниями:

Критика

Trusted Platform Module критикуется и за название (доверие — англ. trust — всегда обоюдное, в то время как пользователю-то разработчики TPM и не доверяют), так и за ущемления свободы, связанные с ним. За эти ущемления устройство часто называют Treacherous computing («вероломные вычисления»).

Потеря «владения» компьютером

Владелец компьютера больше не может делать с ним всё, что угодно, передавая часть прав производителям программного обеспечения. В частности, TPM может мешать (из-за ошибок в ПО или намеренного решения разработчиков):

  • переносить данные на другой компьютер;
  • свободно выбирать программное обеспечение для своего компьютера;
  • обрабатывать имеющиеся данные любыми доступными программами.

Потеря анонимности

Стиль этого раздела неэнциклопедичен или нарушает нормы русского языка.

Одно из преимуществ Интернета – анонимность. На данный момент, если на компьютере нет троянских программ, в программном обеспечении нет явных ошибок, а cookie удалены, единственным идентификатором пользователя будет IP-адрес.

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

Подавление конкурентов

Программа, ставшая лидером отрасли (как AutoCAD, Microsoft Word или Adobe Photoshop) может установить шифрование на свои файлы, делая невозможным доступ к этим файлам посредством программ других производителей, создавая, таким образом, потенциальную угрозу свободной конкуренции на рынке прикладного ПО.

Поломка

При поломке TPM защищённые контейнеры оказываются недоступными, а данные в них — невосстановимыми. TPM практичен только если существует сложная система резервного копирования — естественно, для обеспечения секретности она должна иметь свои TPM’ы.

Читайте также:  Прошивка смартфона Explay Fresh

Взломы

На конференции по компьютерной безопасности Black Hat 2010 было объявлено о взломе чипа Infineon SLE66 CL PE, изготовленного по спецификации TPM. [7] Данный чип используется в компьютерах, оборудовании спутниковой связи и игровых приставках. Для взлома использовался электронный микроскоп (стоимостью около $70000). Оболочка чипа была растворена кислотой, для перехвата команд были использованы мельчайшие иголки. Infineon утверждают, что они знали о возможности физического взлома чипа. Борчерт (Borchert), вице-президент компании, заверил, что дорогое оборудование и техническая сложность взлома не представляет опасности для подавляющего большинства пользователей чипов.

О безопасности UEFI, часть заключительная

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

Если вам интересно, чем безопасности прошивки могут помочь STM , SGX и PSP — жду вас под катом.

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

Часть седьмая. Технологии будущего

Несмотря на то, что все описываемые далее технологии уже давно представлены официально, рассказывать о них я все равно буду как о возможностях завтрашнего дня, по весьма прозаической причине — даже в такой быстроразвивающейся среде как UEFI от представления какой-то технологии до ее внедрения могут пройти годы (достаточно вспомнить PFAT , появившуюся еще в Haswell, но не внедренную толком до сих пор).

Про SGX и STM я уже упоминал в конце третьей части, поэтому начну рассказ с PSP, которым теперь без вариантов комплектуются все новые AMD APU.

AMD Platform Security Processor

Наблюдая за успехами Intel Management Engine, которым последние 5 лет оборудован каждый чипсет и SoC Intel, в AMD тоже решили не отставать от прогресса и встроить в свои SoC’и чего-нибудь эдакого.

Еще бы — хочется иметь аппаратный корень доверия, хочется нормальный генератор случайных чисел, хочется криптоускоритель и эмулятор TPM 2.0, в общем — много всего хочется, и реализовать это все не трудно — купи IP Core у какого-нибудь поставщика, напиши к нему прошивку и навесь на него побольше системных функций, чтобы пользователь твоей платформы даже не вздумал отключить то, за что столько денег уплочено.

В итоге в качестве IP Core купили ядро ARM Cortex-A5 с поддержкой технологии TrustZone, для эмуляции TPM 2.0 приобрели у Trustonic код TEE , остальное реализовали сами и представили получившийся SoC-внутри-SoC’а в 2013 году на очередном UEFI Plugfest.


Оригинальная схема PSP, про эмуляцию TPM речи тогда еще не шло.

Для обеспечения безопасности UEFI этот самый PSP предоставляет следующее: подсистему HVB, внутреннее хранилище для S3 BootScript, эмулятор TPM для реализации Measured Boot, генератор случайных чисел и ускоритель криптографических операций.

Hardware Validated Boot

Про эту технологию я уже рассказывал в первой части, теперь расскажу более подробно. Суть ее простая — PSP получает управление до старта BSP и проверяет, чтобы содержимое второй стадии его прошивки и стартового кода не было изменено, в случае успеха BSP стартует с ResetVector’а и машина загружается как обычно, а в случае неудачи пользователю показывают код ошибки на POST-кодере, а BSP крутит мертвый цикл до hard reset’а, после которого все повторяется заново.

HVB, таким образом, является аппаратным корнем доверия для системы, но защищает эта технология только PEI-том, проверка же всего остального — на совести авторов прошивки.


Оригинальная схема AMD HVB

По умолчанию HVB отключен на всех платформах и для включения необходима достаточно нетривиальное его конфигурирование, поэтому я пока и сам не испытывал технологию на практике (хотя непосредственно работаю с прошивками для второго поколения процессоров с PSP), и машин с включенным HVB на открытом рынке не видел.

Integrated TPM 2.0

К релизу Windows 10 рабочая группа TCG подготовила интересное нововведение: вместо использовавшегося ранее интерфейса TIS для взаимодействия с модулями TPM теперь можно использовать вызовы ACPI, что позволяет производителям процессоров реализовать TPM не на внешнем чипе, а прямо в чипсете, да еще и половину реализации сделать программной. Такое решение имеет как преимущества (заменить чипсет сложнее, чем чип TPM в корпусе SSOP-28), так и недостатки (vendor lock-in), но реализовали его на данный момент и Intel (в Skylake) и AMD (в APU с PSP). Стандарт TPM 2.0 поддерживается обоими решениями не целиком, а только настолько, чтобы система со встроенным TPM могла использовать BitLocker и получить сертификат Windows 10 Ready. Тем не менее, теперь полку пользователей TPM однозначно прибудет. Вместе с встроенным TPM появились также аппаратный ГСЧ и криптоускоритель, которые, при желании, можно использовать отдельно.

Secure S3 BootScript Storage

Еще одна фишка PSP — встроенный NVRAM, в котором можно безопасно хранить какие-то пользовательские данные. На данный момент AMD сохраняет туда S3 BootScript, что хорошо защищает систему от атак на него. При этом немного страдает время выхода из S3, но лишние 50-100 мс ради безопасности вполне можно терпеть.

К сожалению, у AMD с открытой документацией на PSP очень грустно, поэтому дать полезных ссылок не могу, все, что мог рассказать без нарушения NDA — уже рассказал.

Intel Software Guard Extensions

Вернемся теперь к технологиям Intel. Об SGX начали говорить около года назад, но для конечного пользователя она стала доступна всего несколько недель назад, когда Intel включила ее для процессоров Skylake в очередном обновлении микрокода. SGX — это новый набор инструкций, позволяющих приложениям создавать т.н. «анклавы», т.е. регионы памяти для кода и данных, аппаратно защищенные от доступа извне, даже если этот доступ производится из более привилегированных режимов исполнения вроде ring 0 и SMM.

Технология достаточно сложная для понимания и использования (почти 200 страниц Programming Reference), но потенциально очень мощная, поэтому Intel начала заниматься ее продвижением.


Принципиальная схема работы SGX, один из более 200 слайдов вот этой презентации, она же в виде 80-минутного видео.

Intel называет SGX «обратной песочницей», т.е вместо того, чтобы пытаться изолировать потенциально вредоносное или недоверенное ПО, при помощи SGX программа может изолировать себя от всего остального мира. Идея сходна с ARM TrustZone, но если у ARM мир делится на обычный и доверенный и они выполняются на разных ядрах, взаимодействуя только через вызов инструкции SMC , то у Intel ядро одно и то же, зато память делится обычную и безопасную:


Безопасный анклав посреди обычной памяти.

Мое отношение к этой технологии пока еще не сформировалось — я ее просто еще не пробовал, т.к. не работаю над Skylake в данный момент. Тем не менее, стараюсь не отставать от прогресса слишком уж сильно, поэтому читаю краем уха все, что пишут про SGX, к примеру:
Портал об SGX на сайте Intel.
Обзорная лекция об SGX с сайта Дармштадтского Технического Университета.
Обзорная статья NccGroup с кучей интересных ссылок.
Открытая платформа для написания своего кода для SGX.
И вообще, весь раздел про SGX на firmwaresecury.com.

Intel SMI Transfer Monitor

Вторая технология Intel, о которой я уже упоминал — STM. Первые упоминания о нем датированы 2009 годом, и после 6 лет разработки технология наконец-то была представлена в августе 2015. Суть ее простая: вместо диспетчера SMM в SMRAM запускается гипервизор, и все обработчики SMI выполняются в виртуализованном окружении, что позволяет запретить им вредоносные действия вроде изменения данных в памяти ядра и тому подобные.


Слайд из презентации STM на IDF2015.

Технология позволяет значительно уменьшить как «поверхность атаки» на обработчики SMM, так и разрушительность последствий взлома обработчиков SMI. К примеру, запретив доступ к MMIO чипсета для всех обработчиков, кроме используемого для обновления прошивки, можно защитить ее от остальных обработчиков, путь даже они взломаны атакующим и он имеет возможность выполнить в них произвольный код.
Самое главное преимущество — неприхотливость, для работы STM нужны только включенные VT-x/AMDV и правильные настройки уровней доступа. На данный момент предварительная поддержка STM реализована в EDK2 только для тестовой платы MinnowBoard Max, но в ближайшие полгода-год IBV адаптируют ее для своих платформ, и взлома SMM можно будет опасаться гораздо меньше. Понятно, что бесплатной безопасности не бывает, и STM вносит дополнительную сложность в итак не самый простой процесс инициализации SMM, плюс обработка SMI занимает больше времени (страшнее, на самом деле, то, что оно занимает еще более неопределенное время, опять страдают пользователи жестких ОСРВ), плюс виртуализацию незнающий пользователь платформы может отключить и STM не получится использовать в таких условиях. Тем не менее, я потыкал в STM веткой на MinnowBoard и могу сказать: чем скорее IBV внедрят её — тем лучше.

Читайте также:  Приложения для селфи-палки на Андроид

Заключение

Ну вот и подошел к концу этот цикл статей, надеюсь читателю было интересно.
Технологии развиваются быстро, и если завтра появится какая-то прорывная технология (или найдут зияющую дыру в существующих) — постараюсь о них написать.

В следующей статье будем укрощать SecureBoot — сгенерируем свои ключ PK и KEK, а параноики смогут запретить загрузку любых вещей, не подписанных их ключами. Спасибо за внимание.

СОБЕРИ САМ

Концепция Trusted Platform Module (TPM): первый практический взгляд

Доверяемые компьютеры: плюс или минус?

Сегодня ИТ-сферу регулярно потрясают новые проблемы безопасности вроде вирусов, “червей” и “троянских коней”. Эта тенденция подтверждается статистикой скачивания обновлений антивирусов и анти-троянских программ, а также числом современных компьютерных “паразитов”. Да и судебные прецеденты тоже есть: недавно за решётку попал 19-летный автор “червей” Sasser и Netsky. И суд не проявил снисхождения, дав срок в один год и девять месяцев.

По оценке японской компании Trend Micro в 2002 году вредоносные программы принесли убыток в $378 млн. В 2004 году было насчитано 37,8 млн. инфицированных компьютеров, на 8% больше, чем в 2003. Если судить по месячной статистике, в этом году нас вновь ждёт увеличение числа заражённых компьютеров, однако уровень роста окажется меньше, чем в предыдущие годы, главным образом из-за контрмер. Для ИТ-менеджеров и администраторов заключение будет логичным: они должны предотвратить вторжение вируса, а также выполнение постороннего кода или частей программы.

В любом случае, подобный подход следует отличать от обычных мер безопасности вроде вирусных сканеров, межсетевых экранов и демилитаризованных зон (DMZ). Довольно большое число поставщиков ПО предлагают широкий диапазон продуктов по обеспечению безопасности, но результат пока далёк от удовлетворительного. И главной причиной этого можно считать, что ни одна из перечисленных концепций до сих пор не рассматривала как программную, так и аппаратную сторону проблемы. Ситуацию призвана изменить группа Trusted Computing Group с выпуском решений “доверяемый платформенный модуль” (Trusted Platform Module, TPM).

Разработки TCPA/TCG

Ассоциация Trusted Computing Platform Alliance (TCPA) была создана в 1999 году. В то время в ней участвовали важные игроки аппаратной и программной индустрии вроде HP, IBM, Microsoft и других. К сожалению, деятельность TCPA не оказалась успешной из-за структуры: любой из двухсот членов имел право отложить или отменить какое-либо решение. А достигнуть в некоторых сферах компромисса бывает очень сложно.

Именно поэтому в апреле 2004 года TCPA была преобразована в новый консорциум под названием Trusted Computing Group (TCG). В новой организации только немногие компании (названные “promoters”) могут принимать решение. Сегодня в их число входят AMD, Hewlett-Packard, IBM, Intel, Microsoft, Seagate, Sony, Sun и Verisign. Оставшиеся члены, числом почти в тысячу, были названы “contributors” или “adopters”. Они участвуют в работе над черновыми спецификациями или попросту получают ранний доступ к различным новым разработкам.

Среди результатов деятельности TCPA/TCG можно назвать “доверяемый платформенный модуль” (Trusted Platform Module, TPM), раньше называвшийся “чипом Фрица” (Fritz Chip). Фриц Холлингс (Fritz Hollings) – это американский сенатор, известный своей горячей поддержкой системы защиты авторских прав на цифрую информацию (digital rights management, DRM).

TPM обычно реализуется в виде чипа на материнской плате, который интегрируется в процесс загрузки системы. При включении компьютера он проверяет состояние системы (trusted).

Цели Trusted Computing Group

Одной из целей TCG было создание “безопасного компьютера” (“safe computer”), в котором аппаратное, программное обеспечение, а также все процессы связи проверяются и защищаются. Слово “связь” здесь следует понимать в общем смысле, поскольку сюда же относятся взаимодействия между различными частями ПО. Ниже приведены основные задачи, поставленные TCG.

  • Защита данных (Data security).
    Данные могут считывать только авторизованные пользователи. Должна обеспечиваться безопасность передачи данных на компьютер и с него. Личные данные не должны раскрываться.
  • Безопасность данных (Data safety).
    Аппаратное и программное обеспечение должно обеспечить надёжную работу с данными.
  • Целостность данных (Data integrity).
    Программное обеспечение и данные не должны изменяться без уведомления (скажем, под воздействием вирусов или “червей”).
  • Авторство данных (Data authenticity).
    Должна существовать возможность проверить авторство получателя и отправителя, а также службы данных (через процесс “assignment”). Каждый чип TPM можно ясно идентифицировать, поэтому он вполне очевидно привязывается к системе.

Конечно, возможности доверяемой платформы не ограничены одним компьютером – сюда можно добавить все современные виды связи. Видение TCG охватывает мобильные телефоны и КПК, а также устройства ввода, накопители и сертификаты. В качестве расширений TPM могут использоваться устройства безопасности вроде считывателя отпечатка пальцев или радужной оболочки глаза. Усилия по разработке в этих направлениях легли на плечи подгрупп TCG. Одна из таких подгрупп – TNC (Trusted Network Connect), работающая над безопасностью сетевых соединений.

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

Конечно, технология доверяемых компьютеров даёт техническую почву для таких мыслей. Но пока что никто не решился на явную реализацию защиты авторских прав на цифровую информацию. Возможно, это связано с жёсткой критикой, которую получила Microsoft за платформу Palladium. Она была переосмыслена Microsoft и теперь существует под названием “Next Generation Secure Computing Base” (NGSCB). Но перед нами не что иное, как старая начинка в новой обёртке.

Этапы развития

Современные разработки наглядно показывают развитие мер в области безопасности. В самом начале решения были чисто программными. Затем появились изолированные приложения с собственным аппаратным обеспечением – те же смарт-карты для работы в банковских программах.

Следующим шагом явились черновые намётки TP-модулей, которые в современном виде представляют решения вроде “чипа Фрица”. Первым производителем аппаратного обеспечения, взявшим на вооружение Trusted Computing, стала компания IBM: ноутбук ThinkPad T23 был оснащён TP-модулем от Infineon.

Первым шагом дальше начальной концепции TPM стало введение технологии под названием Execute Disable Bit (XD) у Intel, Non Execute (NX) у AMD и Data Execution Protection (DEP) у Microsoft. Эта технология борется с атаками методом переполнения буфера: память разделяется на области, из которых может выполняться код, и из которых выполнение запрещено. Однако эта функция должна поддерживаться процессором, операционной системой и приложениями. Среди операционных систем функцию поддерживают Microsoft Windows Server 2003 SP1, Microsoft Windows XP SP2, Windows XP Professional x64, SUSE Linux 9.2 и Enterprise Linux 3 update 3.

Как работает TPM?

Модули TPM (текущая версия 1.2) обеспечивают так называемый хэш (hash) для системы с помощью алгоритма SHA1 (Secure Hash Algorithm). Значение хэша получается из информации, полученной от всех ключевых компонентов вроде видеокарты и процессора, в сочетании с программными элементами (операционной системой, среди всего прочего).

Компьютер будет стартовать только в проверенном состоянии (authorized condition), когда TPM получит правильное значение хэша. В проверенном состоянии операционная система получает доступ к корневому ключу шифрования (encrypted root key), который требуется для работы приложений и доступа к данным, защищённым системой TPM. Если при загрузке было получено неправильное значение хэша, то система считается не доверяемой, и на ней будут работать только обычные, свободные файлы и программы.

Среди сегодняшних производителей модулей Trusted Platform (TPM) можно отметить Infineon, National Semiconductor (хотя его подразделение TPM было недавно продано Winbond) и Atmel. Кроме того, существуют чипы с интеграцией TPM от Phoenix/Award, процессоры от Transmeta и сетевые контроллеры от Broadcom, которые используются Hewlett-Packard. Seagate объявила о решении выпустить контроллеры жёстких дисков с интегрированной функцией TPM.

В области программ, использующих установленные TPM, Wave Systems предлагает среду Embassy Security Center, полный пакет Embassy Trust Suite (управление документами, цифровыми подписями) и инструментарий CSP Toolkit (Cryptographic Service Prov >Вместе с тем, сегодня существуют побочные технологии и улучшения, чьи характеристики по безопасности реализуются ещё более строго. Среди примеров можно выделить технологию Intel LaGrande, ARM TrustZone, и новинку следующего, 2006 года – AMD Pres >Если будут определены изменения в аппаратной конфигурации, то TPM сможет повторно сертифицировать новые компоненты в онлайновом режиме. Операционная система с ядром безопасности Nexus работает в областях памяти, защищённых процессором (помните, Data Execution Protection), а данные доверяемых приложений нельзя изменить снаружи.

В текущей версии 1.2 TPM есть некоторые приятные функции. “Direct Anonymous Attestation” (DAA) обеспечивает улучшенную связь с другими надёжными клиентами. “Locality” вводит различные уровни безопасности TPM. “Delegation” различает характеристики безопасности у различных пользователей. “NV Storage” обеспечивает лучшее использование энергонезависимых носителей. “Transport protection” улучшает передачу данных на не-TPM системы, а “Monotonic Counters” прослеживает каждый шаг вашей работы, чтобы предотвратить так называемые атаки “replay”.

Ссылка на основную публикацию
Adblock
detector