Технология надежного исполнения
В этой статье есть несколько проблем. Пожалуйста, помогите улучшить его или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалять эти шаблонные сообщения )
|
Технология Intel Trusted Execution ( Intel TXT , ранее известная как LaGrande Technology ) — это технология компьютерного оборудования, основными целями которой являются:
- Подтверждение подлинности платформы и ее операционной системы .
- Обеспечение запуска подлинной операционной системы в доверенной среде, которая затем может считаться доверенной.
- Предоставление доверенной операционной системы с дополнительными возможностями безопасности, недоступными непроверенной системе.
Intel TXT использует доверенный платформенный модуль (TPM) и криптографические методы для обеспечения измерений программного обеспечения и компонентов платформы, чтобы системное программное обеспечение, а также приложения локального и удаленного управления могли использовать эти измерения для принятия решений о доверии. Он дополняет Intel Management Engine . Эта технология основана на отраслевой инициативе Trusted Computing Group (TCG) по обеспечению более безопасных вычислений. Он защищает от программных атак, направленных на кражу конфиденциальной информации путем повреждения кода системы или BIOS или изменения конфигурации платформы.
Подробности
[ редактировать ]Доверенный платформенный модуль (TPM), как указано в TCG, обеспечивает множество функций безопасности, включая специальные регистры (называемые регистрами конфигурации платформы — PCR), которые хранят различные измерения в экранированном месте таким образом, чтобы предотвратить подделку. Измерения состоят из криптографического хеширования с использованием алгоритма безопасного хеширования (SHA); спецификация TPM v1.0 использует алгоритм хеширования SHA-1 . Более поздние версии TPM (v2.0+) требуют SHA-2 . [ 1 ] [ 2 ]
Желаемая характеристика криптографического алгоритма хэширования заключается в том, что (для всех практических целей) результат хеширования (называемый хеш-дайджестом или хешем) любых двух модулей будет давать одно и то же значение хеш-функции только в том случае, если модули идентичны.
Измерения
[ редактировать ]Измерения могут касаться кода, структур данных, конфигурации, информации или всего, что можно загрузить в память. TCG требует, чтобы код не выполнялся до тех пор, пока он не будет измерен. Чтобы обеспечить определенную последовательность измерений, хеш-измерения в последовательности не записываются в разные PCR, а скорее PCR «расширяется» измерением. Это означает, что TPM принимает текущее значение PCR и измерение, которое необходимо расширить, хеширует их вместе и заменяет содержимое PCR этим результатом хеширования. В результате единственный способ получить определенное измерение в ПЦР — это провести точно такие же измерения в том же порядке. Следовательно, если какой-либо измеряемый модуль был модифицирован, результирующее измерение PCR будет другим, и, таким образом, можно легко обнаружить, были ли изменены или повреждены какие-либо измеренные код, конфигурация, данные и т. д. Механизм расширения PCR имеет решающее значение для создания цепочки доверия на уровнях программного обеспечения (см. ниже).
Цепочка доверия
[ редактировать ]Технология поддерживает как статическую, так и динамическую цепочку доверия. Статическая цепочка доверия запускается при включении платформы (или при ее перезагрузке), что сбрасывает все PCR к значениям по умолчанию. Для серверных платформ первое измерение выполняется аппаратным обеспечением (т. е. процессором) для измерения модуля с цифровой подписью (называемого модулем аутентифицированного кода или ACM), предоставленного производителем набора микросхем . Процессор проверяет подпись и целостность подписанного модуля перед его выполнением. Затем ACM измеряет первый модуль кода BIOS, который может выполнить дополнительные измерения.
Измерения модулей кода ACM и BIOS расширены до PCR0, который, как говорят, содержит статический корень измерения доверия (CRTM), а также измерение доверенной вычислительной базы BIOS (TCB). BIOS измеряет дополнительные компоненты в PCR следующим образом:
- PCR0 — CRTM , код BIOS и расширения хост-платформы [ а ]
- PCR1 — Конфигурация хост-платформы
- PCR2 — дополнительного ПЗУ код
- PCR3 – Конфигурация и данные дополнительного ПЗУ
- PCR4 — код IPL (начальный загрузчик программы) (обычно основная загрузочная запись — MBR)
- PCR5 — конфигурация и данные кода IPL (для использования кодом IPL)
- PCR6 — события перехода состояния и пробуждения
- PCR7 – Контроль производителя хост-платформы
Динамическая цепочка доверия запускается, когда операционная система вызывает специальную инструкцию безопасности, которая сбрасывает динамические PCR (PCR17–22) к значениям по умолчанию и запускает измеренный запуск. Первое динамическое измерение выполняется аппаратным обеспечением (т. е. процессором) для измерения другого модуля с цифровой подписью (называемого SINIT ACM), который также предоставляется производителем набора микросхем и чья подпись и целостность проверяются процессором. Это известно как динамический корень измерения доверия (DRTM).
Затем SINIT ACM измеряет первый модуль кода операционной системы (называемый измеряемой средой запуска – MLE). Прежде чем MLE будет разрешено к выполнению, SINIT ACM проверяет, соответствует ли платформа требованиям Политики управления запуском (LCP), установленной владельцем платформы. ЛКП состоит из трёх частей:
- Проверка того, что версия SINIT равна или новее указанного значения.
- Проверка правильности конфигурации платформы (PCONF) путем сравнения PCR0–7 с заведомо правильными значениями (владелец платформы решает, какие PCR включить)
- Проверка правильности MLE путем сравнения его измерения со списком заведомо хороших измерений.
Целостность LCP и его списков заведомо исправных измерений защищена путем хранения хеш-измерений политики в TPM в защищенном энергонезависимом месте, которое может изменить только владелец платформы.
Выполнять как доверенную ОС
[ редактировать ]Как только LCP удовлетворен, SINIT ACM позволяет MLE работать как доверенная ОС, предоставляя доступ к специальным регистрам безопасности и включив доступ уровня TPM Locality 2. Теперь MLE может выполнять дополнительные измерения в рамках динамических ПЦР. Динамические ПЦР содержат измерение:
- PCR17 – DRTM и политика контроля запуска
- PCR18 — код запуска доверенной ОС (MLE).
- PCR19 — доверенная ОС (например, конфигурация ОС)
- PCR20 — доверенная ОС (например, ядро ОС и другой код)
- PCR21 – согласно определению доверенной ОС
- PCR22 – согласно определению доверенной ОС
Эта технология также обеспечивает более безопасный способ инициализации платформы операционной системой. В отличие от обычной инициализации процессора [которая включала отправку загрузочным процессором (BSP) межпроцессорного прерывания при запуске (SIPI) каждому прикладному процессору, тем самым запуская каждый процессор в «реальном режиме» и затем переходя в «реальный режим». виртуальный режим» и, наконец, в «защищенный режим»], операционная система избегает этой уязвимости, выполняя безопасный запуск (также известный как измеренный запуск), который переводит процессоры приложений в специальное состояние сна, из которого они непосредственно запускаются в защищенном режиме с включенной подкачкой. , и им не разрешено покидать это состояние. [ 3 ]
Приложение
[ редактировать ]Значения ПЦР доступны как локально, так и удаленно. Кроме того, TPM имеет возможность подписывать значения PCR цифровой подписью (т. е. котировку PCR), чтобы любой объект мог проверить, что измерения получены из TPM и защищены им, что позволяет удаленной аттестации обнаруживать фальсификацию, повреждение, и вредоносное программное обеспечение. Кроме того, эти значения можно использовать для идентификации среды выполнения (конкретной версии BIOS, уровня ОС, конфигурации и т. д.) и сравнения их с собственными списками заведомо хороших значений для дальнейшей категоризации платформы. Эта возможность оценивать и назначать уровни доверия платформам известна как доверенные вычислительные пулы.
Некоторые примеры использования доверенных пулов вычислений:
- Изоляция — возможность контролировать, подключается ли платформа к производственной сети или помещается ли она в карантин на основе ее уровня доверия или неспособности пройти политику контроля запуска.
- Политика на основе доверия – например, ограничение запуска критически важных приложений только на платформах, соответствующих указанному уровню доверия.
- Соблюдение требований и аудит – демонстрация того, что критически важные, личные или конфиденциальные данные обрабатывались только на платформах, отвечающих требованиям доверия.
Многочисленные серверные платформы включают Intel TXT, а функциональность TXT используется поставщиками программного обеспечения, включая HyTrust , PrivateCore , Citrix и VMware . Проекты с открытым исходным кодом также используют функциональность TXT; например, tboot обеспечивает систему целостности на основе TXT для ядра Linux и гипервизора Xen . [ 4 ] [ 5 ]
Компьютеры с Windows 10 с привязкой PCR7 имеют возможность включать или отключать полное шифрование устройства . [ 6 ]
См. также
[ редактировать ]- Intel вПро
- База безопасных вычислений нового поколения
- Intel Management Engine
- Доверенные вычисления
Примечания
[ редактировать ]- ^ CRTM измеряется процессором, а исходный код BIOS измеряется ACM (все остальные измерения выполняются с помощью BIOS или другого кода прошивки), но только после измерения этого кода.
Ссылки
[ редактировать ]- ^ «Использование SHA-1 в TPM v1.2» . Группа доверенных вычислений . Проверено 14 марта 2014 г.
- ^ «Часто задаваемые вопросы по спецификации библиотеки TPM 2.0» . Группа доверенных вычислений . Проверено 14 марта 2014 г.
- ^ «Глава 2.2: Запуск MLE». Руководство по разработке программного обеспечения технологии Intel Trusted Execution Technology (Intel® TXT) (PDF) . Интел.
- ^ «tboot (доверенная загрузка)» . sourceforge.net . 6 октября 2014 г. Проверено 16 ноября 2014 г.
- ^ Джозеф Цихула (28 февраля 2011 г.). «Надежная загрузка: проверка запуска Xen» (PDF) . xenproject.org . Проверено 16 ноября 2014 г.
- ^ «Windows 8.1 включает в себя бесшовное автоматическое шифрование диска, если ваш компьютер его поддерживает» . Арс Техника . 17 октября 2013 года . Проверено 18 октября 2013 г.
Внешние ссылки
[ редактировать ]- «Надежное исполнение», Технология , Intel .
- «Надежное выполнение», Технология (PDF) (обзор), Intel .
- «Надежное выполнение», Технология (PDF) (обзор архитектуры), Intel .
- Руководство по разработке программного обеспечения для технологии Intel Trusted Execution (PDF) , Intel .
- «Виртуализация», Технологии , Intel .
- Обзор Intel TXT , часть документации ядра Linux , 1 декабря 2014 г.
- Управление целостностью с помощью Intel TXT , LWN.net , 1 апреля 2009 г., Джейк Эдж
- Атака на технологию Intel Trusted Execution , Брифинги Black Hat , февраль 2009 г., Рафал Войтчук и Джоанна Рутковска
- Trusted Computing Technologies, Intel Trusted Execution Technology , Национальные лаборатории Сандии, январь 2011 г., Джереми Дэниел Вендт и Макс Джозеф Гиз