Tpm модуль что это
доверенный платформенный модуль (TPM) (TPM) на Windows 10 IoT Базовая
Что такое TPM?
Доверенный платформенный модуль (TPM) (TPM) — это криптографический сопроцессор, включая возможности создания случайных чисел, безопасного создания криптографических ключей и ограничения их использования. Он также включает в себя такие возможности, как удаленная аттестация и запечатанное хранилище. Техническая спецификация доверенного платформенного модуля — общедоступная, управляемая организация TCG (TCG). Последняя версия TPM 2,0 (выпущена 2014 октября) — это основная переработка спецификации, которая добавляет новые функции и устраняет недостатки прежней версии-TPM 1,2.
Зачем нужен TPM?
Компьютеры, включающие доверенный платформенный модуль, могут создавать криптографические ключи и шифровать их, чтобы их можно было расшифровать только с помощью доверенного платформенного модуля. Этот процесс, часто называемый «переносом » или «привязкой» ключа, может помочь защитить ключ от раскрытия. Каждый доверенный платформенный модуль имеет первичный ключ для переноса, называемый корневым ключом хранилища, который хранится в самом доверенном платформенном модуле. Частная часть ключа, созданного в доверенном платформенном модуле, никогда не предоставляется другим компонентам, программному обеспечению, процессу или человеку.
Компьютеры, включающие доверенный платформенный модуль, могут также создать ключ, который не только был упакован, но также привязан к определенным измерениям платформы. Этот тип ключа может быть развернут только в том случае, если эти измерения платформы имеют те же значения, что и при создании ключа. Этот процесс называется «запечатыванием» ключа для доверенного платформенного модуля. Расшифровка ключа называется «расзапечатыванием». TPM также может запечатывать и распечатывать данные, созданные за пределами доверенного платформенного модуля. Благодаря этому закрытому ключу и программному обеспечению, например шифрование диска BitLocker, можно блокировать данные до тех пор, пока не будут выполнены определенные условия оборудования или программного обеспечения.
При использовании доверенного платформенного модуля частные части пар ключей хранятся отдельно от памяти, контролируемой операционной системой. Ключи могут быть запечатаны в доверенный платформенный модуль, и определенные гарантии состояния системы (гарантии, определяющие надежность системы) можно выполнить до того, как ключи будут распечатаны и освобождены для использования. Поскольку TPM использует собственное внутреннее встроенное по и логические цепи для выполнения инструкций по обработке, он не зависит от операционной системы и не предоставляется уязвимостям, которые могут существовать в операционной системе или программном обеспечении приложения.
Архитектура TPM
Разница между TPM 1,2 и доверенным платформенным модулем 2,0.
Спецификация TPM была разработана дважды. В первый раз она разрабатывалась с версии 1.1 b до 1,2, включая новые возможности, запрошенные или идентифицируемые Комитетом по спецификациям. Эта форма развития функций эволюции, предоставилая окончательную спецификацию TPM 1,2 очень сложная. В конечном итоге, недостатки шифрования SHA-1 (который был самым надежным коммерческим алгоритмом в TPM 1,2) был раскрыт, что привело к необходимости изменения. Архитектура доверенного платформенного модуля была переработана с нуля, что привело к гораздо более интегрированному и унифицированному проектированию TPM 2,0.
Изменения и улучшения по сравнению с предыдущим доверенным платформенным модулем 1,2 включают:
Windows IoT Core поддерживает только tpm 2,0 и не поддерживает устаревшие модули tpm 1,2.
Что такое TBS?
Функция базовых служб TPM (TBS) — это системная служба, которая обеспечивает прозрачное совместное использование ресурсов доверенного платформенного модуля. Ресурсы доверенного платформенного модуля совместно используются несколькими приложениями на одном физическом компьютере с помощью удаленных вызовов процедур (RPC). Он централизует доступ к TPM между приложениями, используя приоритеты, заданные вызывающими приложениями.
TPM предоставляет криптографические функции, предназначенные для обеспечения доверия в платформе. Поскольку доверенный платформенный модуль реализован в аппаратном обеспечении, он имеет ограниченные ресурсы. TCG определяет программный стек TPM (ТСС), который использует эти ресурсы для предоставления доверенных операций для программного обеспечения приложения. Однако для запуска реализации Тсс параллельно с программным обеспечением операционной системы, которое также может использовать ресурсы доверенного платформенного модуля, не требуется выполнять собственную инициализацию. Функция TBS решает эту проблему, позволяя каждому стеку программного обеспечения, взаимодействующему с TBS, использовать ресурсы TPM для проверки любых других программных стеков, которые могут выполняться на компьютере.
решения TPM, доступные в Windows IoT Core
Несколько слов о программном TPM (Стпм), TPM встроенного по (Фтпм), дискретном TPM (Дтпм).
TPM встроенного по (Фтпм)
Для TPM (Фтпм) требуется специальная поддержка процессора или SoC, которая в настоящее время не реализована в Raspberry Pi 2 или 3. Для MinnowBoard Max требуется встроенное по версии 0,80 или более поздней. DragonBoard410c предоставляет возможности Фтпм, включенные по умолчанию.
Дискретный доверенный платформенный модуль (Дтпм)
Дискретный доверенный платформенный модуль (Дтпм) считается надежным решением важнейшим приоритетом для всех средств.
существует несколько производителей дтпмных микросхем и модулей пкб, которые поддерживаются в Windows IoT Core:
Изготовитель Веб-страница Тип модул Микросхема TPM инфинеон Доверенный платформенный модуль Инфинеон евалбоард Инфинеон SLB9670 TPM 2,0 Pi3g Pi3g.com Масса & Евалбоард продукта Инфинеон SLB9670 TPM 2,0
Программный доверенный платформенный модуль (Стпм)
Программный доверенный платформенный модуль (Стпм) также называется симулятором TPM. он не зависит от платформы, поддерживается в Windows IoT Core.
Стпм предназначен только для целей разработки и не предоставляет никаких реальных преимуществ безопасности.
Что такое доверенный платформенный модуль (TPM)?
Доверенный платформенный модуль (TPM) используется для повышения безопасности компьютера. Он используется такими службами, как шифрование диска BitLocker, Windows Hello и другие, для безопасного создания и хранения криптографических ключей, а также для подтверждения того, что операционная система и встроенное ПО на вашем устройстве соответствуют указанным сведениям и не были изменены.
Как правило, это отдельная микросхема на системной плате, хотя стандарт TPM 2.0 позволяет изготовителям, например Intel или AMD, встраивать возможности доверенного платформенного модуля в набор микросхем.
Доверенный платформенный модуль используется уже более 20 лет и входит в состав компьютеров с 2005 г. В 2016 г. версия TPM 2.0 (текущая версия на момент написания этой статьи) стала стандартом для новых компьютеров.
Когда вы шифруете данные, чтобы защитить их от посторонних глаз, программа для шифрования берет фрагмент данных, который нужно зашифровать, и объединяет его с длинной случайной строкой символов, чтобы создать новый (зашифрованный) фрагмент данных. Длинная случайная строка символов, используемая программой для шифрования, является криптографическим ключом.
Примечание: Незашифрованные данные называются «открытым текстом». Зашифрованная версия этих данных называется «зашифрованным текстом».
Расшифровать такой текст и прочитать исходный фрагмент данных может только пользователь, у кого есть правильный криптографический ключ.
Имеется ли на моем компьютере доверенный платформенный модуль?
Существует высокая вероятность того, что на вашем компьютере уже есть доверенный платформенный модуль и, если ему менее 5 лет, это версия TPM 2.0.
Чтобы узнать, есть ли доверенный платформенный модуль на вашем компьютере с Windows 10, выберите Пуск > Параметры > Обновление и безопасность > Безопасность Windows > Безопасность устройства. Если он у вас есть, на экране будет отрезок Процессор безопасности.
Совет: Если вы не видите раздел Процессор безопасности, возможно, на вашем устройстве есть TPM, но она отключена. Чтобы узнать, как включить его, см. статью Включение TPM 2.0 на компьютере.
Далее нужно узнать, какая версия доверенного платформенного модуля есть на вашем компьютере. Выберите Сведения об обработчике безопасности и на появившемся экране найдите версию спецификации. Должна быть указана версия 1.2 или 2.0.
Важно: Для Windows 11 требуется TPM 2.0. Дополнительные сведения см. в статье Требования к системе для Windows 11.
Хотите узнать больше о доверенном платформенном модуле? См. статью Обзор технологии доверенного платформенного модуля.
Обзор технологии доверенного платформенного модуля
Применяется к
В этом разделе для ИТ-специалистов описывается доверенный платформенный модуль (TPM) и его использование операционной системой Windows для управления доступом и проверки подлинности.
Описание компонента
Технология доверенного платформенного модуля (TPM) предназначена для предоставления аппаратных функций, связанных с безопасностью. Микросхема TPM — это защищенный криптографический процессор, предназначенный для выполнения криптографических операций. Микросхема имеет несколько физических механизмов обеспечения безопасности, которые делают ее устойчивой к несанкционированному вмешательству, и вредоносное программное обеспечение не может взломать функции безопасности TPM. Некоторые из основных преимуществ использования технологии TPM:
создание, сохранение и ограничение использования криптографических ключей;
технологию TPM можно использовать для проверки подлинности устройства с помощью уникального RSA-ключа TPM, записанного в модуль;
обеспечение целостности платформы за счет хранения измерений безопасности.
Самые распространенные функции TPM используются для оценки целостности системы, а также для создания и применения ключей. Во время загрузки системы загружаемый загрузочный код (в том числе встроенное ПО и компоненты операционной системы) можно проверить и записать в модуль TPM. Оценку целостности можно использовать для проверки запуска системы и подтверждения того, что ключ на основе TPM использовался, только когда система была загружена с правильным программным обеспечением.
Ключи на основе TPM можно настраивать различными способами. Например, можно сделать ключ на основе TPM недоступным за пределами модуля. Это удобно для защиты от фишинга, так как в этом случае ключ не может быть скопирован и использован без TPM. Ключи на основе TPM также можно настроить для ввода значения авторизации. Если число неудачных попыток авторизации слишком велико, TPM активирует свою логику защиты от атак перебором по словарю и предотвращает дальнейшие попытки подбора.
Разные версии TPM определены в спецификации организации TCG. Дополнительные сведения см. на веб-сайте TCG.
Автоматическая инициализация TPM в Windows
Начиная с Windows 10 и Windows 11 операционная система автоматически инициализирует TPM и берет его под контроль. Это означает, что в большинстве случаев мы не рекомендуем настраивать TPM с помощью консоли управления TPM, TPM.msc. Существует несколько исключений, в основном связанных со сбросом или чистой установкой на компьютере. Дополнительные сведения см. в разделе Удаление всех ключей из TPM. Мы больше не разрабатываем активно консоль управления доверенного платформенного модуля, начиная с Windows Server 2019 и Windows 10 версии 1809.
В некоторых корпоративных сценариях в Windows 10 версии 1507 и 1511 можно использовать групповую политику для резервного копирования значения авторизации владельца TPM в Active Directory. Состояние TPM сохраняется для разных установок операционной системы, поэтому данные TPM хранятся в Active Directory отдельно от объектов-компьютеров.
Практическое применение
На компьютерах с TPM можно устанавливать и создавать сертификаты. После настройки компьютера закрытый ключ RSA для сертификата привязывается к TPM и не может быть экспортирован. TPM также можно использовать в качестве замены смарт-картам, что сокращает затраты, связанные с созданием и оплатой смарт-карт.
Автоматизированная подготовка в TPM снижает стоимость развертывания TPM на предприятии. Новые API для управления TPM могут определить, требуется ли для подготовки TPM физическое присутствие специалиста для подтверждения запросов на изменение состояния TPM во время загрузки.
Антивредоносное программное обеспечение может использовать измеренные показатели состояния запуска операционной системы для подтверждения целостности компьютера с Windows 10, Windows 11 или Windows Server 2016. При этом запускается Hyper-V, чтобы убедиться, что центры обработки данных, использующие виртуализацию, не запускают недоверенные низкоуровневые оболочки. Вместе с сетевой разблокировкой BitLocker ИТ-администраторы могут передавать обновление, при этом компьютер не будет ожидать ввода ПИН-кода.
В TPM есть ряд параметров групповой политики, которые могут быть полезны в некоторых корпоративных сценариях. Дополнительные сведения см. в разделе Параметры групповой политики TPM.
Новые и измененные функции
Дополнительные сведения о новых и измененных функциях доверенного платформенного модуля в Windows см. в разделе Что нового в доверенном платформенном модуле?
Аттестация работоспособности устройства
Аттестация работоспособности устройства позволяет предприятиям установить отношение доверия на основе аппаратных и программных компонентов управляемого устройства. С помощью аттестации работоспособности устройства можно настроить MDM-сервер для запроса службы подтверждения работоспособности, что позволит или запретит доступ к безопасному ресурсу со стороны управляемого устройства.
На устройстве можно проверить следующее.
Предотвращение выполнения данных поддерживается и включено?
Шифрование диска BitLocker поддерживается и включено?
Безопасная загрузка поддерживается и включена?
Windows 11, Windows 10, Windows Server 2016 и Windows Server 2019 поддерживают подтверждение работоспособности устройства с помощью доверенного платформенного модуля 2.0. Поддержка доверенного платформенного модуля 1.2 была добавлена, начиная с Windows версии 1607 (RS1). Доверенный платформенный модуль 2.0 требует встроенного ПО UEFI. Компьютер с устаревшими BIOS и доверенным платформенным модулем 2.0 будет работать не так, как ожидалось.
Использование Windows модуля доверенных платформ
Операционная Windows улучшает большинство существующих функций безопасности в операционной системе и добавляет новые новые функции безопасности, такие как Device Guard и Windows Hello для бизнеса. Теперь аппаратные компоненты системы защиты размещены глубже в операционной системе, чем это было в предыдущих версиях Windows, благодаря чему достигается максимальная безопасность платформы и повышение удобства использования. Для достижения многих из этих улучшений безопасности Windows широкое использование модуля доверенных платформ (TPM). В этой статье представлен краткий обзор TPM, описывается его работа, а также обсуждаются преимущества, которые TPM предоставляет для Windows и совокупное влияние на безопасность Windows на компьютере с TPM.
См. также:
Обзор протокола TPM
TPM представляет собой модуль шифрования, который повышает безопасность компьютера и защищает личные данные. Защита данных путем шифрования и дешифрования, защита учетных данных и проверка программ, запущенных в системе, являются основными функциями, связанными с безопасностью компьютера. TPM участвует в этих и других сценариях.
Традиционно доверенные платформенные модули (TPM) представляют собой отдельные микросхемы, впаянные в материнскую плату компьютера. Некоторые реализации позволяют поставщикам оборудования оценивать и сертифицировать TPM отдельно от остальной системы. Хотя отдельные реализации TPM все еще распространены, их использование является проблематичным на тех встроенных устройствах, которые отличаются небольшими размерами или низким энергопотреблением. В некоторых более новых реализациях TPM функциональные возможности TPM интегрируются в тот же набор микросхем, который используют другие платформенные компоненты, обеспечивая при этом логическое разделение, аналогичное изолированным микросхемам TPM.
Модули TPM являются пассивными: они получают команды и возвращают ответы. Чтобы предоставить доступ ко всем преимуществам TPM, поставщик оборудования должен аккуратно интегрировать модуль TPM в системное оборудование и встроенное ПО. Это позволит модулю отправлять команды и получать ответы. Модули TPM изначально были разработаны для обеспечения безопасности и конфиденциальности владельца и пользователей платформы, однако более новые версии обеспечивают безопасность и конфиденциальность непосредственно самого системного оборудования. Однако перед использованием в расширенных сценариях модуль TPM необходимо подготовить к работе. Windows автоматически предусматривает TPM, но если пользователь переустановит операционную систему, пользователю может потребоваться сообщить операционной системе о том, чтобы она снова явно закажила TPM, прежде чем она сможет использовать все функции TPM.
Trusted Computing Group (TCG) — некоммерческая организация, которая публикует и поддерживает спецификации доверенного платформенного модуля. Целью TCG является разработка, определение и продвижение нейтральных по отношению к поставщикам, глобальных отраслевых стандартов, которые поддерживают аппаратный корень доверия для взаимодействующих доверенных вычислительных платформ. TCG также публикует спецификации TPM в виде международного стандарта ISO/IEC 11889 с использованием процесса предоставления общедоступной спецификации, которую определяет Совместный технический комитет 1, куда входят представители Международной организации стандартизации (ISO) и Международной электротехнической комиссии (IEC).
Поставщики оборудования внедряют модуль TPM в качестве компонента в доверенную вычислительную платформу например компьютер, планшет или телефон. Доверенные вычислительные платформы используют TPM, для обеспечения безопасности и конфиденциальности, достичь которых с использованием одного лишь программного обеспечения невозможно. Например, само по себе программное обеспечение не может достоверно сообщить о наличии вредоносного ПО при запуске системы. Тесная интеграция между TPM и платформой повышает прозрачность процесса загрузки и поддерживает оценку работоспособности устройства, позволяя надежно измерять и регистрировать программное обеспечение, которое запускает устройство. Реализация TPM в составе доверенной вычислительной платформы формирует аппаратное ядро доверия, что означает, что поведение оборудования является доверенным. Например, если ключ, хранящийся в TPM, имеет свойства, которые запрещают экспорт ключа, этот ключ не может покидать TPM.
Организация TCG разработала TPM в качестве недорогого массового решения безопасности, которое соответствует требованиям различных клиентских сегментов. Свойства безопасности различаются в зависимости от реализации TPM так же, как в зависимости от сектора различаются требования клиентов и регулирующих органов. Например, при государственных закупках некоторые правительства четко определяют требования к безопасности модулей TPM, а некоторые — нет.
По мере повышения скорости внедрения инноваций возникают все новые и новые программы сертификации для доверенных платформенных модулей, а также новые технологии в целом. И хотя с TPM однозначно лучше, чем без него, Майкрософт все же советует определить потребности вашей организации в плане безопасности и выяснить все нормативные требования, связанные с закупками в той отрасли, в которой вы работаете. В результате вы обеспечите оптимальное соотношение используемых сценариев, уровня надежности, затрат, удобства и доступности.
TPM в Windows
Функции безопасности Windows в сочетании с преимуществами TPM обеспечивают практическую безопасность и конфиденциальность. В следующих разделах описаны основные функции безопасности, связанные с TPM Windows и далее описано, как ключевые технологии используют TPM для обеспечения или повышения безопасности.
Поставщик шифрования платформы
В Windows предусмотрена система шифрования под названием Cryptographic API: Next Generation (CNG), концепция которой заключается в применении алгоритмов шифрования различными способами, но в рамках общего программного интерфейса (API). Приложения, в которых осуществляется шифрование, могут использовать общий API, не имея данных о том, каким образом применяется алгоритм и какой именно это алгоритм.
CNG выглядит, как стандартная начальная точка, однако эта система шифрования представляет собой некоторые из преимуществ, которые обеспечивает TPM. В рамках интерфейса CNG Windows или сторонние разработчики предоставляют поставщик служб шифрования (то есть обеспечивают реализацию алгоритма), который внедряется в виде самих по себе библиотек программного обеспечения либо в комбинации программного обеспечения и доступного оборудования системы или оборудования от стороннего поставщика. В случае реализации через оборудование поставщик служб шифрования взаимодействует с оборудованием за пределами интерфейса программного обеспечения CNG.
Поставщик службы шифрования платформы, представленный в операционной системе Windows 8, обладает следующими специальными свойствами TPM, которые отсутствуют в поставщиках исключительно программных CNG или присутствуют, но являются менее эффективными:
Защита ключей. Поставщик службы шифрования платформы может создавать ключи в TPM с ограничениями по их использованию. Операционная система может загружать и использовать ключи в TPM без их копирования в память системы, где они будут уязвимы перед вредоносными программами. Поставщик службы шифрования платформы может также настраивать ключи, которые защищает TPM, чтобы их было невозможно удалить. Если TPM создает ключ, этот ключ будет уникальным и находиться он будет только в этом TPM. Если TPM импортирует ключ, поставщик криптоплатформы может использовать ключ в этом TPM, но TPM не является источником для создания дополнительных копий ключа или включения использования копий в другом месте. Что же касается программных решений, защищающих ключи от копирования, они наоборот подвержены атакам средствами обратной разработки, при которых злоумышленник вычисляет, каким образом то или иное программное решение хранит ключи, или делает копии ключей, пока они находятся в памяти во время их использования.
Защита от атак словаря. Для ключей, защищенных TPM, может потребоваться значение авторизации, например PIN-код. Если применяется защита от атак с перебором по словарю, TPM может предотвратить атаки, при которых предпринимается большое количество попыток угадать значение PIN-кода. В случае слишком большого количества предпринятых попыток TPM просто возвращает ошибку с уведомлением о том, что дальнейшие попытки будут невозможны на протяжении определенного периода времени. Программные решения могут предлагать аналогичные функции, однако они не могут обеспечить такой же уровень защиты, особенно в случае перезагрузки системы, изменения времени на системных часах или отката файлов на жестком диске, в которых производится учет неправильных попыток. Кроме того, при использовании защиты от атак с перебором по словарю значения авторизации, такие как PIN-коды, могут быть короче и проще для запоминания и при этом обеспечивать тот же уровень защиты, что и более сложные значения при использовании программных решений.
Эти функции TPM обеспечивают для поставщика службы шифрования платформы явные преимущества перед решениями на основе программного обеспечения. Практический способ увидеть эти преимущества в действии — это использование сертификатов на Windows устройстве. На платформах с TPM Windows может использовать поставщик службы шифрования платформы для хранения сертификата. В шаблонах сертификатов можно указать, что TPM использует поставщик службы шифрования платформы для защиты ключа, связанного с сертификатом. В смешанных средах, где на некоторых компьютерах может не быть TPM, шаблон сертификата может предпочитать поставщику криптостандартов платформы Windows поставщику программного обеспечения. Если настройки сертификата не предполагают его экспортирования, на закрытый ключ для сертификата будут распространяться ограничения и его нельзя будет экспортировать из TPM. Если для сертификата требуется PIN-код, то этот PIN-код автоматически попадает под действие защиты от атак перебором по словарю, которую обеспечивает TPM.
Виртуальная смарт-карта
Смарт-карты— это надежно защищенные физические устройства, на которых, как правило, хранится один сертификат и соответствующий закрытый ключ. Пользователи вставляют смарт-карту во встроенное или USB-устройство для чтения карт и вводит PIN-код для ее разблокировки. Windows может получить доступ к сертификату карты и использовать закрытый ключ для авторизации либо для разблокировки томов данных с защитой BitLocker. Смарт-карты популярны, поскольку они обеспечивают двухфакторную проверку подлинности, для которой нужно что-то, что имеется у пользователя (то есть смарт-карта), и что-то, что он знает (например PIN-код смарт-карты). Однако смарт-карты достаточно трудно использовать, поскольку пользователю для этого необходимо приобрести смарт-карты и устройства для чтения смарт-карт и выполнить развертывание.
В Windows благодаря функции виртуальной смарт-карты TPM может имитировать постоянно вставленную смарт-карту. TPM становится «чем-то, что имеется у пользователя», но при этом пользователю по-прежнему требуется PIN-код. И хотя физические смарт-карты имеют ограничения по количеству попыток ввода PIN-кода, при превышении которого карта блокируется и требуется перезагрузка, защита виртуальной смарт-карты основывается на системе защиты TPM от атак перебором по словарю, которая не допускает слишком большого количества попыток угадать PIN-код.
В случае использования виртуальных смарт-карт на базе доверенного платформенного модуля модуль защищает закрытый ключ сертификата во время его использования и хранения, не допуская его копирования или использования в каких-либо других целях. Использование компонента, являющегося частью системы, вместо отдельной физической смарт-карты позволит снизить общие эксплуатационные расходы, поскольку в этом случае исключены такие сценарии, как «карта утеряна» и «карта забыта дома», и при этом пользователь получает все преимущества многофакторной проверки подлинности с помощью смарт-карты. Виртуальные смарт-карты просты в использовании: для их разблокировки требуется только PIN-код. Виртуальные смарт-карты поддерживают те же сценарии, что и физические смарт-карты, в том числе вход в Windows или проверка подлинности для доступа к ресурсам.
Windows Hello для бизнеса
Windows Hello для бизнеса обеспечивает различные варианты проверки подлинности, предназначенные для замены паролей, которые могут быть трудны для запоминания и легко могут быть скомпрометированы. Кроме того, при использовании решений по принципу «имя пользователя — пароль» часто для проверки подлинности на различных устройствах и в различных службах выбираются одинаковые комбинации имени пользователя и пароля; если эти учетные данные станут кому-либо известны, они будут скомпрометированы во многих местах. Windows Hello для бизнеса готовит устройства поочередно и объединяет информацию, указанную на каждом устройстве (т.е. криптографический ключ) с дополнительной информацией для проверки подлинности пользователей. В системе с доверенным платформенным модулем модуль может защитить ключ. Если в системе отсутствует TPM, ключ защищают программные средства. В качестве дополнительных данных, которые пользователь должен предоставить, может служить значение PIN-кода или, если в системе установлено необходимое оборудование, биометрические сведения, такие как отпечаток пальца или распознавание лиц. Для защиты личных данных биометрическая информация используется только на заданном устройстве, у которого имеется доступ к специальному ключу: эти данные не передаются на другие устройства.
Для внедрения новой технологии проверки подлинности необходимо, чтобы поставщик удостоверений и организации развернули и начали применять эту технологию. Windows Hello для бизнеса позволяет пользователям проводить проверку подлинности со своей существующей учетной записью Майкрософт, учетной записью Active Directory, учетной записью Microsoft Azure Active Directory или даже использовать для этого службы поставщика удостоверений от сторонних разработчиков или службы проверяющей стороны, которые поддерживают проверку подлинности Fast ID Online V2.0.
Поставщики удостоверений могут различными способами обрабатывать учетные данные на клиентских устройствах. Например, организация может подготовить только устройства с TPM, чтобы иметь уверенность в том, что TPM защищает учетные данные. Для того чтобы система была способна отличить TPM от вредоносной программы, действующей как TPM, требуются следующие свойства TPM (см. рис. 1):
Ключ подтверждения. Производитель TPM может создать в модуле специальный ключ, который называется ключ подтверждения. В сертификате ключа подтверждения, подписанного производителем, говорится, что ключ подтверждения присутствует в TPM, который сделал производитель. Решения могут использовать этот сертификат с TPM с содержащимся в нем ключом подтверждения, который подтверждает, что в сценарии действительно задействован TPM от конкретного производителя TPM (а не вредоносная программа, имитирующая TPM).
Ключ удостоверения проверки. В целях защиты личных данных в большинстве сценариев TPM не используется ключ подтверждения. Вместо этого в них используются ключи удостоверения подлинности, и ЦС применяет ключ удостоверения подлинности и его сертификат для подтверждения того факта, что в реальном TPM действительно имеется один или несколько ключей удостоверения подлинности. ЦС удостоверений выпускает сертификаты ключей удостоверения подлинности. Несколько ЦС удостоверений, как правило, рассматривают один и тот же сертификат ключа подтверждения, который может определить TPM как уникальный, но создано может быть любое количество сертификатов ключей удостоверения подлинности в целях ограничения распространения информации в другие сценарии.
При использовании Windows Hello для бизнеса Майкрософт может выполнять роль ЦС для проверки подлинности. Службы Майкрософт могут выдавать сертификат ключа удостоверения подлинности для каждого устройства, пользователя и поставщика удостоверения, чтобы гарантировать защиту личных данных и помочь поставщикам удостоверений обеспечить выполнение требований TPM на устройстве перед тем, как будут подготовлены учетные данные Windows Hello для бизнеса.
Шифрование диска BitLocker
BitLocker обеспечивает шифрование в полном объеме для защиты неиспользуемых данных. При наиболее распространенной конфигурации устройства жесткий диск разбивается на несколько томов. Операционная система и данные пользователя содержатся в одном томе, в котором хранится конфиденциальная информация, а в прочих томах содержатся общедоступные данные, например компоненты загрузки, системная информация и средства восстановления. (Эти другие тома используются достаточно редко, чтобы они не были видны пользователям.) Если объем, содержащий операционную систему и пользовательские данные, не шифруется, кто-то может загрузить другую операционную систему и легко обойти правоприменительных разрешений на чтение любых пользовательских данных в операционной системе.
При наиболее распространенной конфигурации BitLocker шифрует диск с операционной системой, и если компьютер или жесткий диск будут утеряны или украдены в выключенном состоянии, данные на этом томе останутся конфиденциальными. При включении компьютер запускается, как обычно, и пользователю предлагается войти в Windows. При этом единственным способом входа в систему для пользователя является ввод его учетных данных, после чего операционная система сможет обеспечить применение обычных разрешений для файлов. Однако в случае изменения каких-либо этапов процедуры загрузки, например загрузки другой операционной системы с USB-устройства, том с операционной системой и данными пользователя будет недоступен для чтения и использования. TPM и встроенное ПО системы совместно записывают данные о запуске системы, в том числе сведения о загруженном программном обеспечении и параметрах конфигурации, например, была ли загрузка осуществлена с жесткого диска или USB-устройства. BitLocker исходит из того, что TPM позволит использовать ключ только в том случае, если запуск будет выполнен ожидаемым образом. Встроенное ПО системы и TPM разрабатывались таким образом, чтобы они в тесном взаимодействии обеспечивали следующие возможности:
Аппаратный корень доверия для измерения. TPM позволяет программному обеспечению отправлять ему команды, которые выполняют запись показателей программного обеспечения или сведений о конфигурации. Эти сведения можно рассчитать с помощью хэш-алгоритма, который преобразует множество данных в небольшое, статистически уникальное хэш-значение. Встроенное ПО системы имеет компонент под названием «базовый доверенный источник оценки» (CRTM), который неявно является надежным. CRTM безусловно хэширует следующий компонент программного обеспечения и записывает значение показателя, отправляя команду TPM. Последующие компоненты— системное встроенное ПО или загрузчики операционной системы— продолжают процедуру, измеряя любые компоненты программного обеспечения, которые они загружают, прежде чем запустить. Поскольку показатель каждого компонента отправляется в TPM перед выполнением, компонент не может стереть свой показатель из TPM. (Однако в случае перезагрузки системы показатели удаляются.) В результате на каждом этапе процедуры запуска системы TPM хранит показатели программного обеспечения загрузки и информацию о конфигурации. Любые изменения в программном обеспечении загрузки или конфигурации приведут к возникновению новых показателей в TPM на этом и последующих этапах. Поскольку системное встроенное ПО безусловно запускает цепочку измерения показателей, оно обеспечивает аппаратный корень доверия для показателей TPM. На определенном этапе процесса запуска значение записи всех загруженных программ и информации о конфигурации уменьшается, и цепочка показателей заканчивается. TPM позволяет создавать ключи, которые можно использовать только в том случае, если конфигурация платформы регистрирует, что показатели имеют определенные значения.
Ключ используется только тогда, когда измерения загрузки точны. BitLocker создает ключ в TPM, который может быть использован только в том случае, если показатели загрузки соответствуют ожидаемым значениям. Ожидаемое значение рассчитывается на том этапе запуска, когда диспетчер загрузки Windows запускается из тома на системном жестком диске, где расположена операционная система. Диспетчеру загрузки Windows, который хранится в загрузочном томе незашифрованным, необходимо использовать ключ TPM, чтобы он мог расшифровать данные, которые считываются в память из тома с операционной системой, после чего запуск продолжается с использованием зашифрованного тома с операционной системой. В случае загрузки другой операционной системы или изменения конфигурации значения показателей в TPM будут другими, и TPM не позволит диспетчеру загрузки Windows использовать ключ, а процесс запуска не будет продолжен в обычном режиме, поскольку данные в операционной системе не удастся расшифровать. Если кто-либо попытается загрузить систему с использованием другой операционной системы или с другого устройства, показатели программного обеспечения или конфигурации в TPM будут неправильными, и TPM не позволит использовать ключ, необходимый для расшифровки тома с операционной системой. В качестве защитной меры предусмотрено, что в случае внезапного изменения значений показателей пользователь всегда может воспользоваться ключом восстановления BitLocker для получения доступа к данным тома. Организации могут настроить BitLocker для хранения служб домена Active Directory key-in Active Directory (AD DS).
Аппаратные характеристики устройства важны для функции BitLocker— от них зависит ее способность защищать данные. Во-первых, имеет значение, предоставляет ли устройство векторы атак, когда система отображает экран входа в систему. Например, если устройство Windows имеет разъем, через который возможен прямой доступ к памяти, и любой пользователь может вставить свое оборудование и считать память, злоумышленник может считать ключ расшифровки тома с операционной системы из памяти на этапе отображения экрана входа в Windows. Чтобы снизить этот риск, организации могут таким образом настроить BitLocker, чтобы ключ TPM запрашивал одновременно правильные показатели программного обеспечения и значение авторизации. Процесс запуска системы прерывается диспетчером загрузки Windows, и пользователю предлагается ввести значение авторизации для ключа TPM или вставить USB-устройство с этим значением. Этот процесс не дает BitLocker автоматически загрузить ключ в память в тех случаях, когда это может быть опасно, но использовать его не очень удобно.
Более новое оборудование и Windows совместной работы, чтобы отключить прямой доступ к памяти через порты и уменьшить векторы атак. В итоге организации могут разворачивать больше систем, и при этом пользователям не придется вводить дополнительную информацию для авторизации в процессе запуска. Правильное оборудование позволяет применять BitLocker при конфигурации «только TPM», что дает пользователям возможность входить в систему только один раз без использования PIN-кода или USB-ключа во время загрузки.
Device Encryption
Device Encryption — это потребительская версия BitLocker, которая базируется на той же технологии. Это работает, если клиент входит в учетную запись Майкрософт и система отвечает современным требованиям к оборудованию в режиме ожидания, шифрование диска BitLocker автоматически включено в Windows. Ключ восстановления копируется в Microsoft Cloud, и пользователь может получить к нему доступ через свою учетную запись Майкрософт. Требования к современному оборудованию Windows, что оборудование подходит для развертывания шифрования устройств и позволяет использовать конфигурацию «только для TPM» для простого потребительского опыта. Кроме того, оборудование текущего режима ожидания снижает вероятность изменения значений показателей и предлагает пользователю воспользоваться ключом восстановления.
Что касается показателей программного обеспечения, Device Encryption учитывает показатели служб, предоставляющих программные компоненты (на основании подписей кода от производителей, например, изготовителей оборудования или Microsoft), вместо того чтобы самостоятельно выполнять точное хэширование программных компонентов. Это позволяет обслуживать компоненты без изменения итоговых значений показателей. Что касается показателей конфигурации, используемые значения выбираются на основе политики безопасной загрузки, а не многочисленных других параметров конфигурации, записанных во время запуска. Эти значения также изменяются достаточно редко. В результате получается, что функция Device Encryption включается на соответствующем оборудовании удобным для пользователя способом, и при этом осуществляется защита данных.
Измеряемая загрузка
В Windows 8 была представлена функция измеряемой загрузки как способ регистрации операционной системой цепочки показателей программных компонентов и сведений о конфигурации в TPM путем инициализации операционной системы Windows. В предыдущих версиях Windows цепочка показателей прерывалась на самом компоненте диспетчера загрузки Windows, и показатели в TPM не помогали определить начальное состояние Windows.
Процесс загрузки Windows проходит поэтапно и часто предполагает взаимодействие драйверов от сторонних разработчиков с оборудованием от определенного поставщика или внедрение решений против вредоносных программ. При работе с программным обеспечением функция измеряемой загрузки обеспечивает запись показателей ядра Windows, антивредоносных драйверов с ранним запуском и драйверов загрузки в TPM. При работе с параметрами конфигурации функция измеряемой загрузки обеспечивает запись информации, касающейся безопасности, например, данных подписи, которые используют антивредоносные драйверы, и данные конфигурации о функциях безопасности Windows (например, включена ли функция BitLocker).
Благодаря измеряемой загрузке показатели TPM отображают полные сведения о начальном состоянии программного обеспечения Windows и параметрах конфигурации. Если параметры безопасности и другие защитные функции настроены правильно, они смогут стать доверенными и впоследствии обеспечивать безопасность запущенной операционной системы. Прочие сценарии могут использовать данные о начальном состоянии операционной системы, чтобы определить, можно ли доверять запущенной операционной системе.
Показатели TPM предназначены для того, чтобы не допустить записи какой-либо конфиденциальной информации в качестве показателя. В качестве дополнительного средства защиты конфиденциальных данных функция измеряемой загрузки обеспечивает прерывание цепочки показателей в начальном состоянии Windows. В результате набор показателей не будет включать сведения о том, какие именно приложения используются или каким образом используется Windows. Информацию о показателей можно передавать внешним объектам, чтобы показать, что на устройстве применяются соответствующие политики безопасности и оно не запустится при использовании вредоносного программного обеспечения.
TPM предлагает для сценариев следующие возможности использования показателей, записанных в TPM во время загрузки:
При добавлении новых функций безопасности Windows функция измеряемой загрузки добавляет к показателям, записанным в TPM, данные конфигурации, связанные с безопасностью. Функция измеряемой загрузки запускает сценарии удаленной аттестации в соответствии со встроенным системным ПО и состоянием инициализации Windows.
Подтверждение работоспособности устройств
Некоторые Windows помогают решениям безопасности реализовать сценарии удаленной проверки. Корпорация Майкрософт представляет службу подтверждения работоспособности, которая может создавать сертификаты ключей удостоверения подлинности для TPM от других производителей, а также анализировать данные измеряемой загрузки для извлечения простых сведений системы безопасности, например, о том, включен или выключен BitLocker. Простые сведения системы безопасности можно использовать для оценки работоспособности устройства.
Решения по управлению мобильными устройствами (MDM) могут получать простые сведения системы безопасности от службы подтверждения работоспособности Microsoft для клиента, не применяя при этом сложные квоты или подробные показатели TPM. Решения MDM могут действовать на основании сведений о безопасности, помещая в карантин неработоспособные устройства или блокируя доступ к облачным службам, таким как Microsoft Office 365.
Credential Guard
Credential Guard — это новая функция в Windows, которая помогает Windows учетных данных в организациях, развернующих AD DS. В прошлом учетные данные пользователя (например, пароль для входа) хэшировались для создания маркера авторизации. Пользователь использовал маркер для доступа к ресурсам, на использование которых у него имелось разрешение. Недостатком модели с маркером было то обстоятельство, что вредоносная программа, которая имела доступ к ядру операционной системы, могла просматривать память компьютера и собирать данные обо всех маркерах, используемых на тот момент. Злоумышленник мог воспользоваться полученными маркерами для входа на другие машины и заполучить еще больше учетных данных. Такой тип атаки называется «передача хэша». Принцип действия этой вредоносной технологии заключается в инфицировании одной машины с последующим инфицирование множества других машин в данной организации.
Точно так же, как Microsoft Hyper-V обособляет виртуальные машины, Credential Guard с помощью виртуализации изолирует процесс, выполняющий хэширование учетных данных, в области памяти, к которой ядро операционной системы не имеет доступа. В процессе загрузки выполняется инициализация и защита этой изолированной области памяти, чтобы компоненты в более обширной среде ОС не могли ее изменить. Credential Guard использует TPM для защиты своих ключей с помощью показателей TPM, поэтому они доступны только на этапе загрузки, когда инициализируется отдельная область; они недоступны для ядра обычной операционной системы. Код локальной системы безопасности в ядре Windows взаимодействует с изолированной областью памяти, предъявляя учетные данные и получая взамен одноразовые маркеры авторизации.
Полученное решение обеспечивает комплексную защиту, поскольку даже если вредоносная программа запустится в ядре операционной системы, она не сможет получить доступ к секретной информации внутри изолированной области памяти, которая, собственно, создает маркеры авторизации. Решение не решает проблему регистраторов ключей, так как пароли, которые такие регистраторы захватывают, фактически проходят через нормальное ядро Windows, но в сочетании с другими решениями, такими как смарт-карты для проверки подлинности, Credential Guard значительно повышает защиту учетных данных в Windows.
Заключение
TPM добавляет преимущества безопасности на основе оборудования для Windows. При установке на оборудовании, включаемом TPM, window обеспечивает значительно улучшенные преимущества безопасности. В таблице ниже перечислены ключевые преимущества основных функций TPM.
Хотя некоторые из вышеупомянутых функций имеют дополнительные требования к оборудованию (например, поддержка виртуализации), TPM является краеугольным камнем Windows безопасности. Корпорация Майкрософт и другие участники продолжают улучшать глобальные стандарты, касающиеся TPM. Мы находим все новые и новые приложения, использующие данный модуль, и прикладываем все усилия, чтобы обеспечить нашим клиентам ощутимые преимущества. Корпорация Майкрософт включила поддержку большинства функций TPM в свою версию Windows для Интернета вещей (IoT) под названием Windows IoT Core. Устройства IoT, которые могут развертываться в небезопасных физических местоположениях и подключаться к таким облачным службам, как Azure IoT Hub, могут использовать TPM для управления совершенно новыми способами, удовлетворяя все возникающие требования к безопасности.