Основы TPM

В этом разделе для ИТ-специалистов представлено описание компонентов доверенного платформенного модуля (TPM 1.2 и TPM 2.0) и объясняется способ их применения для защиты от атак перебором по словарю.

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

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

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

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

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

Сведения о совместимости версий Windows и TPM см. в разделе Обзор технологии доверенного платформенного модуля. Возможности, доступные в версиях, определяются в спецификации организацией TCG. Дополнительные сведения см. на странице службы доверенного платформенного модуля веб-сайта организации TCG: Доверенный платформенный модуль.

Следующие разделы содержат обзор технологий, которые поддерживают TPM.

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

Параметры групповой политики служб доверенного платформенного модуля

Автоматическая подготовка и управление TPM

Подготовку TPM можно упростить, чтобы облегчить развертывание систем, готовых для BitLocker и других зависимых от TPM функций. Эти усовершенствования охватывают упрощение модели состояния TPM для информирования о состояниях Готов, Готов с ограниченной функциональностью или Не готов. Также можно автоматически подготавливать доверенные платформенные модули в состоянии Готов, удаленная подготовка для устранения требования физического присутствия технического специалиста при начальном развертывании. Кроме того, стек TPM доступен в среде предустановки Windows (Windows PE).

Добавлено несколько параметров управления для облегчения управления и конфигурации модуля TPM с помощью групповой политики. Основные новые параметры включают резервное копирование на основе Active Directory проверки подлинности владельца TPM, уровень проверки подлинности владельца, который должен храниться локально на TPM, и программные параметры блокировки TPM для обычных пользователей. Дополнительные сведения о резервном копировании проверки подлинности владельца для доменов Windows Server 2008 R2 AD DS см. в разделе Расширения схемы AD DS для поддержки резервного копирования TPM.

Измеряемая загрузка с поддержкой аттестации

Функция измеряемой загрузки предоставляет антивредоносное ПО с доверенным журналом (устойчивым к подделке и незаконному изменению) всех компонентов загрузки. Антивредоносное ПО может использовать журнал, чтобы определить, можно ли доверять запущенным ранее компонентам, не заражены ли они вредоносными программами. Это ПО также может отправлять журналы измеряемой загрузки на удаленный сервер для оценки. Удаленный сервер может запускать действия исправления, взаимодействуя с программой на клиенте или через внештатные механизмы, при необходимости.

Виртуальная смарт-карта на основе TPM

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

Хранилище сертификатов на основе TPM

TPM можно использовать для защиты сертификатов и ключей RSA. Поставщик хранилища ключей TPM обеспечивает простое и удобное использование модуля TPM как способа надежной защиты закрытых ключей. KSP TPM можно использовать для формирования ключей при регистрации организации на получение сертификатов. Управление KSP осуществляется шаблонами в пользовательском интерфейсе. TPM также можно использовать для защиты сертификатов, импортированных из внешнего источника. Сертификаты на основе TPM можно использовать, как стандартные сертификаты с дополнительными функциями, чтобы сертификат никогда не покидал модуля TPM, в котором были созданы ключи. Теперь TPM можно использовать для криптографических операций с помощью API-интерфейса шифрования следующего поколения (CNG). Дополнительные сведения см. в разделе API-интерфейс шифрования: следующее поколение.

Значение авторизации владельца TPM

Для Windows 8 изменение способа сохранения значения авторизации владельца TPM реализовано в схеме AD DS. Значение авторизации владельца TPM теперь сохраняется в отдельном объекте, который привязывается к объекту-компьютеру. Это значение сохранялось как свойство в самом объекте-компьютере для схем Windows Server 2008 R2 по умолчанию. Контроллеры домена Windows Server 2012 располагают схемой по умолчанию для резервного копирования сведений об авторизации владельца TPM в отдельном объекте. Если контроллер домена не обновлен до Windows Server 2012, необходимо расширить схему для поддержки этого изменения. Если в среде Windows Server 2008 R2 включено резервное копирование значения авторизации владельца TPM D Active Directory без расширения схемы, подготовка TPM даст сбой и TPM останется в состоянии "Не готов" для компьютеров под управлением Windows 8.

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

Данные реестра

Ключ реестра: HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\TPM

DWORD: OSManagedAuthLevel

Данные значенияПараметр

0

Нет

2

Делегат

4

Полная

 

Примечание  

Если параметр проверки подлинности управляемого операционной системой TPM меняется с "Полный" на "Делегировано", то значение авторизации владельца TPM будет восстановлено, а все копии начального значения авторизации владельца TPM будут недействительны. При резервном копировании значения авторизации владельца TPM в AD DS новое значение авторизации владельца будет автоматически архивировано в AD DS после его изменения.

 

Командлеты TPM

Если для написания сценариев и управления компьютерами используется PowerShell, теперь управлять TPM можно также с помощью Windows PowerShell. Для установки командлетов TPM используйте следующую команду:

dism /online /enable-feature /FeatureName:tpm-psh-cmdlets

Подробные сведения об отдельных командлетах см. в разделе Командлеты TPM в Windows PowerShell.

Интерфейс физического присутствия

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

  • Активация TPM
  • Удаление существующих сведений о владельце из TPM без пароля владельца
  • Деактивация TPM
  • Отключение TPM на время без пароля владельца

Состояния наличия в TPM

Для каждого из этих состояний наличия TPM 1.2 модуль TPM может перейти в другое состояние (например, из выключенного во включенное состояние). Состояния не исключают друг друга.

Эти состояния наличия неприменимы для доверенного платформенного модуля 2.0, так как его нельзя отключить из среды операционной системы.

СостояниеОписание

Включено

Большинство функций TPM доступны.

TPM можно включить и отключить несколько раз за период загрузки при принятии права владения.

Отключено

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

TPM можно включить и отключить несколько раз за период запуска.

Активирован

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

Деактивирован

Аналогично отключенному состоянию, но предполагается принятие права собственности при деактивации и включении модуля TPM. TPM можно активировать и деактивировать только при условии физического присутствия, что требует перезагрузки.

Имеющий владельца

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

Не имеющий владельца

TPM не имеет корневого ключа хранилища и может содержать или не содержать ключ подтверждения.

 

Важно  

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

 

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

Ключи подтверждения

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

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

Аттестация ключа

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

Как TPM осуществляет защиту от атак перебором по словарю

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

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

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

Поведение атаки перебором по словарю TPM 2.0

TPM 2.0 располагает четко определенной логикой атаки перебором по словарю. В отличие от TPM 1.2, для которого логика атаки перебором по словарю была установлена изготовителем и значительно различалась в отрасли.

Предупреждение  

Для этого раздела сертифицированное оборудование для Windows 8 также относится к системам Windows 8.1. Следующие ссылки на Windows охватывают эти поддерживаемые версии Windows.

 

Для систем сертифицированного оборудования Windows 8 с TPM 2.0 модуль TPM настроен Windows на блокировку после 32 ошибок авторизации и отбрасывание одной ошибки авторизации каждые 2 часа. Это означает, что пользователь может быстро попытаться использовать ключ с неправильным значением авторизации 32 раза. Для каждой из 32 попыток модуль TPM регистрирует, было ли значение авторизации правильным или нет. Это вызывает блокировку модуля TPM после 32 неудачных попыток.

Попытки использовать ключ со значением авторизации в течение следующих 2 часов не принесут успешного результата или ошибки; будет указано, что TPM заблокирован. Через 2 часа одна ошибка авторизации будет отброшена, а число ошибок авторизации, которые помнит модуль TPM, упадет до 31; соответственно, модуль TPM выйдет из заблокированного состояния и вернется к нормальной работе. С правильным значением авторизации ключи можно использовать обычным образом, если в течение следующих 2 часов не произойдет ошибки авторизации. По истечении 64 часов без ошибок авторизации в памяти модуля TPM не останется сведений об ошибках авторизации и можно снова выполнить 32 неудачные попытки.

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

Логику атаки перебором по словарю для модуля TPM 2.0 можно незамедлительно полностью сбросить, отправив команду блокировки сброса модулю TPM и введя пароль владельца TPM. По умолчанию Windows автоматически подготавливает TPM 2.0 и сохраняет пароль владельца TPM для использования администраторами системы.

В некоторых ситуациях на предприятии значение авторизации владельца TPM настроено на централизованное хранение в Active Directory и не хранится в локальной системе. Администратор может запустить MMC TPM и сбросить время блокировки TPM. Если пароль владельца TPM хранится на локальном компьютере, он будет использован для сброса времени блокировки. Если пароль владельца TPM недоступен в локальной системе, то администратор должен указать его. Если администратор попытается восстановить состояние блокировки TPM с помощью неправильного пароля владельца TPM, модуль TPM не разрешит следующую попытку сброса состояния блокировки в течение 24 часов.

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

Логика в основе параметров Windows 8.1 и Windows 8 по умолчанию

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

Например, при использовании BitLocker с модулем TPM и конфигурацией PIN с течением времени потребуется ограничить число подборов PIN. Если компьютер утерян, то постороннее лицо может сделать только 32 последовательные попытки подбора PIN-кода и далее делать одну попытку каждые 2 часа. Это составляет 4415 догадок в год. Это хороший показатель для администраторов, чтобы можно было определить, сколько символов PIN-кода использовать для развертываний BitLocker.

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

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

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

Порог блокировки в 32 ошибки выбран потому, что пользователь редко блокирует модуль TPM (даже при обучении вводу новых паролей или при частой блокировке/разблокировке компьютеров). Если пользователи блокируют TPM, необходимо подождать 2 часа или использовать другие учетные данные для входа, например имя пользователя и пароль.

Как проверить состояние TPM?

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

Функциональные возможности TPM в режиме ограниченной функциональности

Если модуль TPM находится в режиме ограниченной функциональности, определенные компоненты, которые используют TPM, будут работать неправильно. Обычно это вызвано выполнением новой установки Windows 10 на устройстве, где ранее была установлена система Windows 8.1, Windows 8 или Windows 7 на том же аппаратном обеспечении. Если модуль TPM находится в режиме ограниченной функциональности, в заголовке "Состояние" оснастки доверенного платформенного модуля отображается TPM готов к использованию в режиме ограниченной функциональности. Это можно исправить, очистив модуль TPM.

Mt431890.wedge(ru-ru,VS.85).gifОчистка TPM

  1. Откройте оснастку доверенного платформенного модуля (tpm.msc).

  2. Нажмите Очистить TPM, а затем выберите Перезагрузка.

  3. Когда компьютер перезагружается, может быть предложено нажать клавишу на клавиатуре для очистки модуля TPM.

  4. После перезагрузки компьютера модуль TPM будет автоматически подготовлен для использования системой Windows 10.

Примечание  

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

 

Дополнительные ресурсы

Обзор технологии доверенного платформенного модуля

Параметры групповой политики служб доверенного платформенного модуля

Командлеты TPM в Windows PowerShell

Расширения схемы для Windows Server 2008 R2 в целях поддержки резервного копирования AD DS данных доверенного платформенного модуля, полученных от клиентов Windows 8

Поставщики WMI TPM

Подготовка организации к использованию BitLocker: планирование и политики — конфигурации модуля TPM

 

 

Показ: