Windows 10 включен device guard

Содержание
  1. Device Guard: Что это такое и как включить или отключить
  2. Ограничение на использование Device Guard
  3. Как включить и отключить Device Guard
  4. Ошибка несовместимости с Credential Guard сторонних виртуальных машин
  5. Подпись Device Guard Device Guard signing
  6. В этом разделе In this section
  7. Ограничения файлов и их размера File and size limits
  8. Типы файлов File types
  9. Роли и разрешения Store для бизнеса Store for Business roles and permissions
  10. Сертификаты подписи Device Guard Device Guard signing certificates
  11. Включение безопасной загрузки, BitLocker и Device Guard в Windows 10 IoT базовая Enabling Secure Boot, BitLocker, and Device Guard on Windows 10 IoT Core
  12. Порядок загрузки Boot Order
  13. Блокировка устройств IoT Locking-down IoT Devices
  14. Безопасная загрузка платформы Platform Secure Boot
  15. Безопасная загрузка UEFI UEFI Secure Boot
  16. Целостность кода Windows Windows Code Integrity
  17. Шифрование устройства BitLocker BitLocker Device Encryption
  18. Device Guard в Windows IoT базовая Device Guard on Windows IoT Core
  19. Обеспечение безопасности на основе Интернета вещей Core Turnkey Security on IoT Core
  20. Предварительные требования Prerequisites
  21. Разработка устройств IoT Development IoT Devices
  22. Создать блокирующие пакеты Generate Lockdown Packages
  23. Тестирование пакетов блокировки Test Lockdown packages
  24. Создать образ блокировки Generate Lockdown image
  25. Разработка с включенным применением совместного проектирования Developing with CodeSigning Enforcement Enabled
  26. Разблокировка зашифрованных дисков Unlocking Encrypted Drives
  27. Отключение BitLocker Disabling BitLocker

Device Guard: Что это такое и как включить или отключить

Device Guard — использует виртуализацию для изоляции секретов и тем самым обеспечивает защиту от взлома. Это гарантирует, что только привилегированное системное программное обеспечение может получить доступ к таким данным как хэши паролей NTLM и учетные данные домена. Credential Guard создает виртуальный контейнер и хранит все важные данные в нем, что не позволяет получить доступ к этим токенам на уровне системы без специальных прав авторизации. Примечательно то, что Credential Guard можно развернуть на виртуальной машине как Hyper-V.

К примеру, если хакер взломал и получил доступ к Windows 10, то он мог получить и доступ к хэшу, который используется для шифрования учетных записей, так как хэш храниться в локальной ОЗУ без защиты. В Credential Guard хэш храниться в виртуальном контейнере, и даже, если система будет скомпрометирована, то хакер не получит доступ к этому хэшу.

Ограничение на использование Device Guard

  1. Поддержка виртуализации 64x битным процессором.
  2. Безопасная загрузка.
  3. Чип на материнской плате TPM версии 1.0 или 2.0.
  4. Включенный Hyper-V.
  5. Доступно в Windows 10 Education, Enterprise и Windows Server 2016.

В документации Microsoft вы можете обнаружить, что Credential Guard поддерживается в Windows 10, что означает Pro и Home. Я сам запутался, и дело в том, что документация не правильная и требует правок. На github есть обсуждение на эту тему, и функция Credential Guard как бы есть, но она не шифрует данные в виртуальном контейнере, т.е. она не работает. Обратите внимание на это сообщение и это .

Как включить и отключить Device Guard

В групповых политиках перейдите «Конфигурация компьютера» > «Административные шаблоны» > «Система» > «Device Guard» > справа выберите «Включить средство обеспечения безопасности на основе виртуализации«.

Ошибка несовместимости с Credential Guard сторонних виртуальных машин

Иногда, пользователи могут видеть ошибку «VMware Workstation и устройства Device/Credential Guard несовместимы. VMware Workstation можно запустить после отключения Device/Credential Guard» при использовании сторонних виртуальных машин как VirtualBox или VMware Workstation.

Способ 1. В этом случае нужно отключить несколько компонентов как Aplication Guard, Hyper-V и песочница Windows. Также, посмотрите не включен ли Credential Guard в групповых политиках, указанном выше способом.

Способ 2. Если выше способ не помог и виртуальные машины выдают ошибку на несовместимость Credential Guard, то откройте редактор реестра и перейдите по пути:

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity
  • Нажмите два раза по Enabled и установите значение 0.
  • Перезагрузите ПК.

Если после перезапуска Windows, ошибка появляется, то запустите командную строку от имени администратора и введите:

  • bcdedit /set hypervisorlaunchtype off

Если хотите вернуть команду по умолчанию, то введите bcdedit /set hypervisorlaunchtype auto

Подпись Device Guard Device Guard signing

Мы представляем новую версию службы подписей охранников устройств (DGSS), которая будет более удобной для автоматизации. We are introducing a new version of the Device Guard Signing Service (DGSS) to be more automation friendly. Новая версия службы (DGSS v2) теперь доступна. The new version of the service (DGSS v2) is now available. Как было объявлено ранее, до конца декабря 2020 г. необходимо перейти на DGSS v2. As announced earlier, you will have until the end of December 2020 to transition to DGSS v2. В конце декабря 2020 г. существующие веб-механизмы для текущей версии службы DGSS будут отменены и больше не будут доступны для использования. At the end of December 2020, the existing web-based mechanisms for the current version of the DGSS service will be retired and will no longer be available for use. Пожалуйста, заделайте планы перехода на новую версию службы до конца декабря 2020 г. Please make plans to migrate to the new version of the service by the end of December 2020.

Следующие основные изменения, которые мы внося в службу: Following are the major changes we are making to the service:

  • Метод потребления службы будет изменяться на более эффективный метод автоматизации на основе cmdlets PowerShell. The method for consuming the service will change to a more automation-friendly method based on PowerShell cmdlets. Эти cmdlets доступны в качестве загрузки NuGet, https://www.nuget.org/packages/Microsoft.Acs.Dgss.Client/ . These cmdlets are available as a NuGet download, https://www.nuget.org/packages/Microsoft.Acs.Dgss.Client/.
  • Для достижения нужной изоляции вам потребуется получить новую политику CI из DGSS v2 (и необязательно подписывать ее). In order to achieve desired isolation, you will be required to get a new CI policy from DGSS v2 (and optionally sign it).
  • DGSS v2 не будет поддерживать загрузку листовых сертификатов, используемых для подписывания файлов (однако корневой сертификат будет доступен для скачивания). DGSS v2 will not have support for downloading leaf certificates used to sign your files (however, the root certificate will still be available to download). Обратите внимание, что сертификат, используемый для подписания файла, можно легко извлечь из самого подписанного файла. Note that the certificate used to sign a file can be easily extracted from the signed file itself. В результате после того, как DGSS v1 завершится в конце декабря 2020 г., вы больше не сможете скачать листовые сертификаты, используемые для подписи файлов. As a result, after DGSS v1 is retired at the end of December 2020, you will no longer be able to download the leaf certificates used to sign your files.

Следующие функции будут доступны с помощью этих окей PowerShell: The following functionality will be available via these PowerShell cmdlets:

  • Получить политику CI Get a CI policy
  • Подписание политики CI Sign a CI policy
  • Подписание каталога Sign a catalog
  • Загрузка корневого сертификата Download root cert
  • Скачайте историю операций по подписанию Download history of your signing operations

Для любых вопросов свяжитесь с нами по DGSSMigration@microsoft.com. For any questions, please contact us at DGSSMigration@microsoft.com.

Относится к: Applies to

  • Windows 10 Windows 10
  • Windows10 Mobile Windows 10 Mobile

Подпись Device Guard– это функция Device Guard, доступная в Microsoft Store для бизнеса и образования. Device Guard signing is a Device Guard feature that is available in Microsoft Store for Business and Education. Она предоставляет администраторам единый ресурс для подписывания файлов каталога и политик целостности кода. It gives admins a single place to sign catalog files and code integrity policies. После того как администраторы создали файлы каталога для неподписанных приложений и подписали файлы каталога, они могут добавить владельцев подписи в политику целостности кода. After admins have created catalog files for unsigned apps and signed the catalog files, they can add the signers to a code integrity policy. Вы можете объединить политику целостности кода с имеющейся политикой, чтобы включить настраиваемый сертификат подписи. You can merge the code integrity policy with your existing policy to include your custom signing certificate. Это позволяет сделать файлы каталога доверенными. This allows you to trust the catalog files.

Device Guard— это набор компонентов для укрепления целостности аппаратного и программного обеспечения. Device Guard is a feature set that consists of both hardware and software system integrity hardening features. Данные компоненты используют новые параметры безопасности на основе виртуализации и модель операционной системы мобильного устройства типа «никому не доверяй». These features use new virtualization-based security options and the trust-nothing mobile device operating system model. Ключевая функция данной модели называется настраиваемой целостностью кода. Она позволяет организации выбирать, какое программное обеспечение или доверенные издатели программного обеспечения могут запускать код на ее клиентских компьютерах. A key feature in this model is called configurable code integrity, which allows your organization to choose exactly which software or trusted software publishers are allowed to run code on your client machines. Кроме того, Device Guard дает возможность организациям подписывать имеющиеся бизнес-приложения (LOB), чтобы их системы доверяли собственному коду без необходимости перепаковки приложения. Also, Device Guard offers organizations a way to sign existing line-of-business (LOB) applications so that they can trust their own code, without the requirement that the application be repackaged. Такой же метод подписывания позволяет организациям доверять отдельным приложениям сторонних разработчиков. Also, this same method of signing allows organizations to trust individual third-party applications. Дополнительные сведения см. в руководстве по развертыванию Device Guard. For more information, see Device Guard deployment guide.

В этом разделе In this section

Статья Topic Описание Description
Добавление неподписанного приложения в политику целостности кода Add unsigned app to code integrity policy Если вы хотите добавить неподписанное приложение в политику целостности кода, необходимо начать с политики целостности кода, созданной на эталонном устройстве. When you want to add an unsigned app to a code integrity policy, you need to start with a code integrity policy created from a reference device. Затем создайте файлы каталога для неподписанного приложения, подпишите их и объедините политику по умолчанию, которая содержит ваш сертификат подписи, с имеющимися политиками целостности кода. Then, create the catalog files for your unsigned app, sign the catalog files, and then merge the default policy that includes your signing certificate with existing code integrity policies.
Подпись политики целостности кода путем подписи Device Guard Sign code integrity policy with Device Guard signing Подписание политик целостности кода препятствует незаконному изменению политик после их развертывания. Signing code integrity policies prevents policies from being tampered with after they’re deployed. Вы можете подписать политики целостности кода на портале подписи Device Guard. You can sign code integrity policies with the Device Guard signing portal.

Ограничения файлов и их размера File and size limits

При передаче файлов для подписывания в Device Guard существуют несколько ограничений для файлов и их размера. When you’re uploading files for Device Guard signing, there are a few limits for files and file size:

Описание Description Ограничение Limit
Максимальный размер политики или файла каталога Maximum size for a policy or catalog file 3,5 MБ 3.5 MB
Максимальный размер нескольких файлов (передаваемых в группе) Maximum size for multiple files (uploaded in a group) 4 MБ 4 MB
Максимальное число файлов при отправке Maximum number of files per upload 15 файлов 15 files

Типы файлов File types

Типы файлов каталога и политики соответствуют требуемым. Catalog and policy files have required files types.

Файл File Необходимый тип файла Required file type
Файлы каталога catalog files CAT .cat
Файлы политики policy files BIN .bin

Роли и разрешения Store для бизнеса Store for Business roles and permissions

Для подписывания политик целостности кода и входа на портал Device Guard требуется роль подписавшего Device Guard. Signing code integrity policies and access to Device Guard portal requires the Device Guard signer role.

Сертификаты подписи Device Guard Device Guard signing certificates

Все сертификаты, созданные службой подписи Device Guard, уникальны для каждого клиента и не зависят от центров сертификации подписывания рабочего кода Майкрософт. All certificates generated by the Device Guard signing service are unique per customer and are independent of the Microsoft production code signing certificate authorities. Все ключи центров сертификации (CA) хранятся в криптографических границах аппаратных модулей безопасности, соответствующих стандарту FIPS 140-2. All Certification Authority (CA) keys are stored within the cryptographic boundary of Federal Information Processing Standards (FIPS) publication 140-2 compliant hardware security modules. После создания ключи корневого сертификата и ключи CA верхнего уровня удаляются из веб-службы подписывания, шифруются и хранятся автономно. After initial generation, root certificate keys and top level CA keys are removed from the online signing service, encrypted, and stored offline.

Включение безопасной загрузки, BitLocker и Device Guard в Windows 10 IoT базовая Enabling Secure Boot, BitLocker, and Device Guard on Windows 10 IoT Core

Windows 10 IoT базовая включает в себя предложения функций безопасности, такие как безопасная Загрузка UEFI, шифрование устройств BitLocker и Device Guard. Windows 10 IoT Core includes security feature offerings such as UEFI Secure Boot, BitLocker Device Encryption and Device Guard. Они помогут сборщикам устройств создавать полностью заблокированные устройства Windows IoT, устойчивые к различным типам атак. These will assist device builders in creating fully locked down Windows IoT devices that are resilient to many different types of attacks. Вместе эти функции обеспечивают оптимальную защиту, которая гарантирует, что платформа будет запускаться определенным образом, одновременно заблокируя неизвестные двоичные файлы и защищая данные пользователя с помощью шифрования устройства. Together, these features provide the optimal protection that ensures that a platform will launch in a defined way, while locking out unknown binaries and protecting user data through the use of device encryption.

Порядок загрузки Boot Order

Чтобы углубиться в отдельные компоненты, предоставляющие безопасную платформу для устройства IoT, необходимо понимать порядок загрузки на устройстве Windows 10 IoT базовая. An understanding of the boot order on a Windows 10 IoT Core device is needed before we can delve into the individual components that provide a secure platform for the IoT device.

Существует три основных области, которые происходят при включении устройства Интернета вещей, вплоть до загрузки ядра ОС и выполнения установленного приложения. There are three main areas that occur from when an IoT device is powered on, all the way through to the OS kernel loading and execution of installed application.

  • Безопасная загрузка платформы Platform Secure Boot
  • Безопасная загрузка Единый интерфейс EFI (UEFI) Unified Extensible Firmware Interface (UEFI) Secure Boot
  • Целостность кода Windows Windows Code Integrity

Дополнительные сведения о процессе загрузки Windows 10 можно найти здесь. Additional information on the Windows 10 boot process can be found here.

Блокировка устройств IoT Locking-down IoT Devices

Чтобы зафиксировать устройство Windows IoT, необходимо выполнить следующие рекомендации. In order to lockdown a Windows IoT device, the following considerations must be made.

Безопасная загрузка платформы Platform Secure Boot

При первом включении устройства первым шагом в общем процессе загрузки является загрузка и запуск загрузчиков загрузки встроенного по, который инициализирует оборудование на iOS и предоставляет возможности аварийной мигания. When the device is first powered on, the first step in the overall boot process is to load and run firmware boot loaders, which initialize the hardware on the devies and provide emergency flashing functionality. Затем среда UEFI загружается и управление передается. The UEFI environment is then loaded and control is handed over.

Эти загрузчики встроенного по являются специфичными для SoC, поэтому вам придется работать с соответствующим производителем устройства, чтобы эти загрузчики были созданы на устройстве. These firmware boot loaders are SoC-specific, so you will need to work with the appropriate device manufacturer to have these boot loaders created on the device.

Безопасная загрузка UEFI UEFI Secure Boot

Безопасная Загрузка UEFI является первой точкой применения политики и находится в UEFI. UEFI Secure Boot is the first policy enforcement point, and is located in UEFI. Она позволяет системе разрешать только выполнение двоичных файлов, подписанных указанными полномочиями, например драйверы встроенного по, ПЗУ, драйверы UEFI, приложения и загрузчик UEFI. It restricts the system to only allow execution of binaries signed by a specified authority, such as firmware drivers, option ROMs, UEFI drivers or applications, and UEFI boot loaders. Эта функция предотвращает выполнение неизвестного кода на платформе и защищает систему от потенциальных проблем с безопасностью. This feature prevents unknown code from being executed on the platform and potentially weakening the security posture of it. Безопасная загрузка снижает риск атак с помощью вредоносных программ, выполняемых при предварительной загрузке на устройство, например rootkit-программы. Secure Boot reduces the risk of pre-boot malware attacks to the device, such as rootkits.

Изготовителям оборудования необходимо хранить базы данных безопасной загрузки UEFI на устройстве IoT во время изготовления. As the OEM, you need to store the UEFI Secure Boot databases on the IoT device at manufacture time. К этим базам данных относятся база данных сигнатур (DB), Отозванная база данных сигнатуры (DBX) и база данных ключа регистрации ключа (KEK). These databases include the Signature database (db), Revoked Signature database (dbx), and the Key Enrollment Key database (KEK). Эти базы данных хранятся в энергонезависимом ОЗУ (NV-RAM) на встроенном устройстве. These databases are stored on the firmware nonvolatile RAM (NV-RAM) of the device.

База данных сигнатур (DB): Здесь перечислены хэши для входа или образы для загрузчиков операционных систем, приложений UEFI и драйверов UEFI, которые разрешено загружать на устройство. Signature Database (db): This lists the signers or image hashes of operating system loaders, UEFI applications, and UEFI drivers that are allowed to be loaded on the device

База данных отозванных подписей (DBX): Здесь перечислены хэши для входа или образы для загрузчиков операционных систем, приложений UEFI и драйверов UEFI, которые больше не являются доверенными и не могут быть загружены на устройстве. Revoked Signature Database (dbx): This lists the signers or image hashes of operating system loaders, UEFI applications and UEFI drivers that are no longer trusted, and are NOT allowed to be loaded on the device

База данных ключей регистрации ключей (KEK): Содержит список ключей подписывания, которые можно использовать для обновления подписей и отозванных баз данных сигнатур. Key Enrollment Key database (KEK): Contains a list of signing keys that can be used to update the signature and revoked signature databases.

После создания и добавления этих баз данных на устройство изготовитель оборудования блокирует редактирование встроенного по и создает ключ подписывания платформы (PK). Once these databases are created and added to the device, the OEM locks the firmware from editing, and generates a platform signing key (PK). Этот ключ можно использовать для подписывания обновлений KEK или для отключения безопасной загрузки UEFI. This key can be used to sign updates to the KEK or to disable UEFI Secure Boot.

Ниже приведены действия по безопасной загрузке UEFI. Here are the steps taken by UEFI Secure Boot:

  1. После включения устройства базы данных подписей проверяются по ключу подписывания платформы (PK). After the device is powered on, the signature databases are each checked against the platform signing key (PK).
  2. Если встроенное по не является доверенным, встроенное по UEFI запускает восстановление, зависящее от изготовителя оборудования, для восстановления доверенного встроенного по. If the firmware isn’t trusted, UEFI firmware initiates OEM-specific recovery to restore trusted firmware.
  3. Если не удается загрузить диспетчер загрузки Windows, встроенное по попытается загрузить резервную копию диспетчера загрузки Windows. If Windows Boot Manager cannot be loaded, the firmware will attempt to boot a backup copy of Windows Boot Manager. Если это также не удается, встроенное по UEFI инициирует исправление, зависящее от изготовителя оборудования. If this also fails, the UEFI firmware initiates OEM-specific remediation.
  4. Диспетчер загрузки Windows запускает и проверяет цифровую подпись ядра Windows. Windows Boot Manager runs and verifies the digital signature of the Windows Kernel. Если вы доверяете, диспетчер загрузки Windows передает управление ядру Windows. If trusted, Windows Boot Manager passes control to the Windows Kernel.

Дополнительные сведения о безопасной загрузке, а также рекомендации по созданию ключа и управлению см. здесь. Additional details on Secure Boot, along with key creation and management guidance, is available here.

Целостность кода Windows Windows Code Integrity

Целостность кода Windows (ВЦИ) повышает безопасность операционной системы, проверяя целостность драйвера или приложения при каждой загрузке в память. Windows Code Integrity (WCI) improves the security of the operating system by validating the integrity of a driver or application each time it is loaded into memory. CI содержит два основных компонента: целостность кода режима ядра (КМЦИ) и целостность кода пользовательского режима (УМЦИ). CI contains two main components — Kernel Mode Code Integrity (KMCI) and User Mode Code Integrity (UMCI).

Настраиваемая целостность кода (CCI) — это функция Windows 10, позволяющая сборщикам устройств блокировать устройство и разрешать его запуск и выполнение только подписанного и доверенного кода. Configurable Code Integrity (CCI) is a feature in Windows 10 that allows device builders to lockdown a device and only allow it to run and execute code that is signed and trusted. Для этого сборщики устройств могут создать политику целостности кода на «Золотой» устройстве (финальной версии оборудования и программного обеспечения), а затем защитить и применить эту политику на всех устройствах в цехе. To do so, device builders can create a code integrity policy on a ‘golden’ device (final release version of hardware and software) and then secure and apply this policy on all devices on the factory floor.

Дополнительные сведения о развертывании политик целостности кода, аудите и применении см. впоследней документации TechNet. To learn more about deploying code integrity policies, auditing and enforcement, check out the latest technet documentation here.

Ниже приведены действия, выполняемые функцией целостности кода Windows. Here are the steps taken by Windows Code Integrity:

  1. Ядро Windows будет проверять все остальные компоненты на соответствие базе данных сигнатур перед загрузкой. Windows Kernel will verify all other components against the signature database before loading. Сюда входят драйверы, файлы запуска и ELAM (ранний запуск антивредоносной программы). This includes drivers, startup files, and ELAM (Early Launch Anti-Malware).
  2. Ядро Windows загрузит доверенные компоненты в процессе запуска и запрещает загрузку ненадежных компонентов. Windows Kernel will load the trusted components in the startup process, and prohibit loading of the untrusted components.
  3. Операционная система Windows 10 IoT базовая загружается вместе с любыми установленными приложениями. Windows 10 IoT Core operating system loads, along with any installed applications.

Шифрование устройства BitLocker BitLocker Device Encryption

Windows 10 IoT базовая также реализует упрощенную версию шифрования устройств BitLocker, защищая устройства IoT от автономных атак. Windows 10 IoT Core also implements a lightweight version of BitLocker Device Encryption, protecting IoT devices against offline attacks. Эта возможность имеет строгую зависимость от наличия доверенного платформенного модуля на платформе, включая необходимый протокол предварительной версии в UEFI, который выполняет необходимые измерения. This capability has a strong dependency on the presence of a TPM on the platform, including the necessary pre-OS protocol in UEFI that conducts the necessary measurements. Эти измерения, предшествующие ОС, гарантируют, что операционная система будет иметь более точную информацию о том, как была запущена ОС. Однако он не применяет никаких ограничений на выполнение. These pre-OS measurements ensure that the OS later has a definitive record of how the OS was launched; however, it does not enforce any execution restrictions.

Функции BitLocker в Windows 10 IoT Базовая обеспечивает автоматическое шифрование тома ОС на основе NTFS при привязке всех доступных томов данных NTFS к нему. BitLocker functionality on Windows 10 IoT Core allows for automatic encryption of NTFS-based OS volume while binding all available NTFS data volumes to it. Для этого необходимо убедиться, что для GUID тома ЕФИЕСП задано значение C12A7328-F81F-11d2-BA4B-00A0C93EC93B. For this, it’s necessary to ensure that the EFIESP volume GUID is set to C12A7328-F81F-11D2-BA4B-00A0C93EC93B.

Device Guard в Windows IoT базовая Device Guard on Windows IoT Core

Большинство устройств IoT основаны на устройствах с фиксированной функцией. Most IoT devices are built as fixed-function devices. Это означает, что сборщики устройств точно узнают, какое встроенное по, операционную систему, драйверы и приложения должны выполняться на определенном устройстве. This implies that device builders know exactly which firmware, operating system, drivers, and applications should be running on a given device. В свою очередь, эти сведения можно использовать для полного блокирования устройства IoT, разрешая только выполнение известного и надежного кода. In turn, this information can be used to fully lockdown an IoT device by only allowing execution of known and trusted code. Device Guard в Windows 10 IoT базовая помогает защитить устройства IoT, гарантируя, что неизвестный или недоверенный исполняемый код нельзя запустить на заблокированных устройствах. Device Guard on Windows 10 IoT Core can help protect IoT devices by ensuring that unknown or untrusted executable code cannot be run on locked-down devices.

Обеспечение безопасности на основе Интернета вещей Core Turnkey Security on IoT Core

Чтобы упростить включение ключевых функций безопасности на устройствах Интернета вещей, корпорация Майкрософт предоставляет готовый пакет безопасности , позволяющий построителям устройств создавать полностью заблокированные устройства IOT. To facilitate easy enablement of key security features on IoT Core devices, Microsoft is providing a Turnkey Security Package that allows device builders to build fully locked down IoT devices. Этот пакет поможет вам: This package will help with:

  • Подготовка защищенных загрузочных ключей и включение функции на поддерживаемых платформах IoT Provisioning Secure Boot keys and enabling the feature on supported IoT platforms
  • Настройка и Настройка шифрования устройств с помощью BitLocker Setup and configuration of device encryption using BitLocker
  • Запуск блокировки устройства для разрешения выполнения только подписанных приложений и драйверов Initiating device lockdown to only allow execution of signed applications and drivers

Следующие шаги позволят создать образ блокировки с помощью пакета безопасности с подготовкой The following steps will lead through the process to create a lockdown image using the Turnkey Security Package

Предварительные требования Prerequisites

  • КОМПЬЮТЕР под управлением Windows 10 Корпоративная (другие версии Windows не поддерживаются предоставленными сценариями) A PC running Windows 10 Enterprise (other Windows versions are not supported by the provided scripts)
  • Пакет SDK для Windows 10 — требуется для создания сертификата Windows 10 SDK — Required for Certificate Generation
  • Windows 10 ADK — требуется для создания CAB-файла Windows 10 ADK — Required for CAB generation
  • Эталонная платформа. для окончательного закрытия потребуется выпуск оборудования с поставкой встроенного по, ОС, драйверов и приложений Reference platform — release hardware with shipping firmware, OS, drivers, and applications will be required for final lockdown

Разработка устройств IoT Development IoT Devices

Windows 10 IoT базовая работает с различными полупроводниковыми устройствами, которые используются на сотнях устройств. Windows 10 IoT Core works with various silicons that are utilized in hundreds of devices. Из предложенных устройств для разработки IOTниже предоставляются встроенные функциональные возможности TPM, а также безопасная загрузка, измеряемая Загрузка, BitLocker и Device Guard. Of the suggested IoT development devices, the following provide firmware TPM functionality out of the box, along with Secure Boot, Measured Boot, BitLocker, and Device Guard capabilities:

Адаптер Qualcomm Драгонбоард 410c Qualcomm DragonBoard 410c

Чтобы включить безопасную загрузку, может потребоваться выполнить инициализацию РПМБ. In order to enable Secure Boot, it may be necessary to provision RPMB. После того как ЕММК будет включен в Windows 10 IoT Core (в соответствии с инструкциями в этой статье, нажмите [Power] + [vol +] + [vol-] одновременно на устройстве при включении питания и выберите «подготавливать рпмб» в меню «БДС». Once the eMMC has been flashed with Windows 10 IoT Core (as per instructions here, press [Power] + [Vol+] + [Vol-] simultaneously on the device when powering up and select «Provision RPMB» from the BDS menu. Обратите внимание, что это необратимый шаг. Please note that this is an irreversible step.

Intel Минновбоардмакс Intel MinnowBoardMax

Версия встроенного по для MinnowBoard Intel должна быть 0,82 или выше (получите последнюю версию встроенного по). For Intel’s MinnowBoard Max, firmware version must be 0.82 or higher (get the latest firmware). Чтобы включить возможности доверенного платформенного модуля, включите поддержку TPM с помощью клавиатуры & дисплей и нажмите клавишу F2, чтобы войти в программу установки UEFI. To enable TPM capabilities, power up board with a keyboard & display attached and press F2 to enter UEFI setup. Перейдите в раздел Device Manager-> установка системы — > конфигурация безопасности — > PTT и установите для нее значение _ _. Go to Device Manager -> System Setup -> Security Configuration -> PTT and set it to . Нажмите клавишу F10, чтобы сохранить изменения и продолжить перезагрузку платформы. Press F10 to save changes and proceed with a reboot of the platform.

Raspberry Pi 2 и 3 не поддерживают TPM, поэтому мы не можем настроить сценарии блокировки. Raspberry Pi 2 nor 3 do not support TPM and so we cannot configure Lockdown scenarios.

Создать блокирующие пакеты Generate Lockdown Packages

Скачайте пакет скриптов девицелоккдовн , который содержит все дополнительные средства и сценарии, необходимые для настройки и блокировки устройств. Download the DeviceLockDown Script package, which contains all of the additional tools and scripts required for configuring and locking down devices

Запустите консоль администрирования PowerShell (PS) на компьютере с Windows 10 и перейдите к расположению скачанного скрипта. Start an Administrative PowerShell (PS) console on your Windows 10 PC and navigate to the location of the downloaded script.

Подключите эталонную аппаратную платформу (запустив незаблокированный образ) к компьютеру через сетевую папку с помощью Mount your reference hardware platform (running the unlocked image) to your PC via network share using

Создание ключей для устройства с помощью Generate keys for your device using

  • Ключи и сертификаты создаются в указанной выходной папке с соответствующим суффиксом. The keys and certificates are generated in the specified output folder with appropriate suffix.
  • Защитите созданные ключи , так как устройство будет доверять двоичным файлам, подписанным с помощью этих ключей, только после блокировки. Secure your generated keys as the device will trust binaries signed with these keys only after lockdown.
  • Вы можете пропустить этот шаг и использовать предварительно созданные ключи только для тестирования You may skip this step and use the pre-generated keys for testing only

Настройка settings.xml Configure settings.xml

  • Раздел «Общие». Указание каталогов пакетов General section : Specify the package directories
  • Раздел Tools: Указание пути для средств Tools section : Set the path for the tools
    • Windows10KitsRoot (e.g. C:\Program Files (x86)\Windows Kits\10\ ) Windows10KitsRoot (e.g. C:\Program Files (x86)\Windows Kits\10\ )
    • виндовссдкверсион (e.g. 10.0.15063.0 ) WindowsSDKVersion (e.g. 10.0.15063.0 )
      • Версия пакета SDK, установленная на компьютере, находится в папке C:\Program Files (x86)\Windows Kits\10\ SDK version installed on your machine is under C:\Program Files (x86)\Windows Kits\10\
  • Раздел безопасной загрузки. Укажите, какие ключи следует использовать для безопасной загрузки (ключи PK и SB). SecureBoot section : Specify which keys to use for secure boot (PK and SB keys)
  • Раздел BitLocker: Указание сертификата для восстановления данных BitLocker (ключ DRA) BitLocker section : Specify a certificate for BitLocker data recovery (DRA key)
  • Раздел Сиполици. Указание сертификатов, которые должны быть доверенными SIPolicy section : Specify certs that should be trusted
    • Сканпас: путь к устройству для сканирования двоичных файлов, \\a.b.c.d\C$ ScanPath : Path of the device for scanning binaries , \\a.b.c.d\C$
    • Обновление: подписавшие Сиполици (ключи Паус) Update : Signer of the SIPolicy (PAUTH keys)
    • Пользователь: сертификаты пользовательского режима (ключи УМЦИ) User : User mode certificates (UMCI keys)
    • Ядро: сертификаты режима ядра (ключи КМЦИ) Kernel : Kernel mode certificates (KMCI keys)
  • Упаковка: укажите параметры для создания пакета. Packaging : Specify the settings for the package generation

Чтобы помочь в тестировании во время первоначального цикла разработки, корпорация Майкрософт предоставила вам соответствующие ключи и сертификаты. In order to assist with testing during the initial development cycle, Microsoft has provided pre-generated keys and certificates where appropriate. Это означает, что Microsoft Test, разработка и предварительные версии двоичных файлов считаются доверенными. This implies that Microsoft Test, Development and Pre-Release binaries are considered trusted. Во время окончательного создания продукта и создания образа обязательно удалите эти цертифкатес и используйте собственные ключи, чтобы убедиться, что устройство полностью заблокировано. During final product creation and image generation, be sure to remove these certifcates and use your own keys to ensure a fully locked down device.

  1. Выполните следующие команды, чтобы создать необходимые пакеты: Execute the following commands to generate required packages:

Тестирование пакетов блокировки Test Lockdown packages

Чтобы проверить созданные пакеты, вручную установите их на незаблокированном устройстве, выполнив следующие действия. You can test the generated packages by manually installing them on a unlocked device by the following steps

Flash устройство с разблокированным образом (изображение, используемое для сканирования на предыдущем шаге). Flash the device with the unlocked image (image used for scanning in earlier step).

Подключение к устройству (с помощью SSH или с помощью PowerShell) Connect to the device (using SSH or using PowerShell)

Скопируйте следующие CAB-файлы на устройство в каталоге, например c:\OemInstall Copy the following .cab files to the device under a directory e.g. c:\OemInstall

  • OEM.Custom.Cmd.cab OEM.Custom.Cmd.cab
  • OEM.Security.BitLocker.cab OEM.Security.BitLocker.cab
  • OEM.Security.SecureBoot.cab OEM.Security.SecureBoot.cab
  • OEM.Security.DeviceGuard.cab OEM.Security.DeviceGuard.cab

Запустите промежуточное хранение созданных пакетов, выполнив следующие команды. Initiate staging of the generated packages by issuing the following commands

Если вы используете пользовательский образ, вам придется пропустить этот файл и вручную изменить его на c:\windows\system32\oemcustomization.cmd содержимое, доступное в Output\OEMCustomization\OEMCustomization.cmd файле If you are using custom image, then you will have to skip this file and manually edit the c:\windows\system32\oemcustomization.cmd with the contents available in Output\OEMCustomization\OEMCustomization.cmd file

Finally, commit the packages via

Устройство будет перезагружено в ОС обновления (с отображением шестеренки) для установки пакетов и будет снова перезагружено в основную ОС. The device will reboot into update OS (showing gears) to install the packages and will reboot again to main OS. После повторной загрузки устройства в Маинос безопасная загрузка будет включена, а Сиполици будет задействована. Once the device reboots back into MainOS, Secure Boot will be enabled and SIPolicy should be engaged.

Перезагрузите устройство еще раз, чтобы активировать шифрование BitLocker. Reboot the device again to activate the BitLocker encryption.

Тестирование функций безопасности Test the security features

  • Безопасной загрузки: повторите попытку bcdedit /debug on получить сообщение о том, что значение защищено политикой безопасной загрузки SecureBoot: try bcdedit /debug on , you will get an error stating that the value is protected by secure boot policy
  • BitLocker: Run start /wait sectask.exe -waitencryptcomplete:1 , если ERRORLEVEL имеет значение -2147023436 (ERROR_TIMEOUT), а шифрование не завершено. BitLocker: Run start /wait sectask.exe -waitencryptcomplete:1 , if ERRORLEVEL is -2147023436 (ERROR_TIMEOUT) then encryption is not complete. При запуске sectask.exe из CMD-файла пропустите start /wait . When running sectask.exe from a .cmd file omit the start /wait .
  • Девицегуард: запустите любой неподписанный двоичный файл или двоичный файл, подписанный сертификатом, которого нет в списке Сиполици, и убедитесь, что он не работает. DeviceGuard : Run any unsigned binary or a binary signed with certificate not in the SIPolicy list and confirm that it fails to run.

Создать образ блокировки Generate Lockdown image

После проверки того, что заблокированные пакеты работают в соответствии с заданными ранее параметрами, эти пакеты можно включить в образ, выполнив приведенные ниже действия. After validating that the lockdown packages are working as per the settings defined earlier, you can then include these packages into the image by following the below given steps. Инструкции по созданию пользовательских образов см. в статье о производстве IOT . Read the IoT manufacturing guide for custom image creation instructions.

В каталоге рабочей области обновите следующие файлы из созданного выходного каталога выше. In the workspace directory, update the following files from the generated output directory above

  • Безопасной загрузки Copy ..\Output\SecureBoot\*.bin ..\Workspace\Common\Packages\Security.SecureBoot SecureBoot : Copy ..\Output\SecureBoot\*.bin ..\Workspace\Common\Packages\Security.SecureBoot
    • SetVariable_db. bin SetVariable_db.bin
    • SetVariable_kek. bin SetVariable_kek.bin
    • SetVariable_pk. bin SetVariable_pk.bin
  • Диска Copy ..\Output\Bitlocker\*.* ..\Workspace\Common\Packages\Security.Bitlocker BitLocker : Copy ..\Output\Bitlocker\*.* ..\Workspace\Common\Packages\Security.Bitlocker
    • DETask.xml DETask.xml
    • Security.Bitlocker.wm.xml Security.Bitlocker.wm.xml
    • Setup. BitLocker. cmd setup.bitlocker.cmd
  • Девицегуард: Copy ..\Output\DeviceGuard\*.* ..\Workspace\Common\Packages\Security.DeviceGuard DeviceGuard : Copy ..\Output\DeviceGuard\*.* ..\Workspace\Common\Packages\Security.DeviceGuard
    • Сиполицион. p7b SIPolicyOn.p7b
    • Сиполициофф. p7b SIPolicyOff.p7b

Добавление RetailOEMInput.xml и TestOEMInput.xml в каталоге ProductName с ИДЕНТИФИКАТОРом функции пакета блокировки Add RetailOEMInput.xml and TestOEMInput.xml under the ProductName directory with lockdown package feature ID

  • SEC_BITLOCKER
  • SEC_SECUREBOOT
  • SEC_DEVICEGUARD

Повторно создать изображение Re-generate Image

  • buildpkg all (при этом создаются новые блокирующие пакеты на основе файлов политики выше). buildpkg all (this generates new lockdown packages based on above policy files)
  • buildimage ProductName test(or)retail (это приведет к созданию нового Flash. ФФУ) buildimage ProductName test(or)retail (this generates new Flash.ffu)

Устройство Flash с этой новой Flash. ФФУ и проверить функции безопасности. Flash the device with this new Flash.ffu and validate the security features.

См. секуресампле в качестве примера конфигурации dragonной доски. See SecureSample as an example of a lockdown dragon board configuration.

Кроме того, вы можете создать пакеты безопасности в самой оболочке Иоткоре. Дополнительные сведения см. в разделе Добавление пакетов безопасности . Alternatively, you can generate the security packages in the IoTCore Shell itself, see adding security packages for the details.

Разработка с включенным применением совместного проектирования Developing with CodeSigning Enforcement Enabled

После создания и блокировки пакетов все двоичные файлы, появившиеся в образе во время разработки, должны быть подписаны соответствующим образом. Once the packages are generated and lockdown is activated, any binaries introduced into the image during development will need to be signed appropriately. Убедитесь, что двоичные файлы пользовательского режима подписаны с помощью ключа .\кэйс\ * * *-умЦи. pfx. Ensure that your user-mode binaries are signed with the key .\Keys\ ***-UMCI.pfx. Для подписывания режима ядра, например для драйверов, необходимо указать собственные ключи подписывания и убедиться, что они также включены в Сиполици выше. For kernel-mode signing, such as for drivers, you’ll need to specify your own signing keys and make sure that they are also included in the SIPolicy above.

Разблокировка зашифрованных дисков Unlocking Encrypted Drives

При разработке и тестировании при попытке чтения содержимого с зашифрованного устройства в автономном режиме (например, SD-карты для Минновбоардмакс или ЕММК Драгонбоард в режиме массового хранения USB) программа «DiskPart» может использоваться для назначения буквы диска Маинос и объема данных (предположим, что используется v: для Маинос и w: для данных). During development and testing, when attempting to read contents from an encrypted device offline (e.g. SD card for MinnowBoardMax or DragonBoard’s eMMC through USB mass storage mode), ‘diskpart’ may be used to assign a drive letter to MainOS and Data volume (let’s assume v: for MainOS and w: for Data). Тома будут заблокированы и должны быть разблокированы вручную. The volumes will appear locked and need to be manually unlocked. Это можно сделать на любом компьютере, на котором установлен сертификат ОЕМ-дра. pfx (включен в Пример девицелоккдовн). This can be done on any machine that has the OEM-DRA.pfx certificate installed (included in the DeviceLockDown sample). Установите PFX-файл и выполните следующие команды в командной строке администратора: Install the PFX and then run the following commands from an administrative CMD prompt:

  • manage-bde -unlock v: -cert -cf OEM-DRA.cer
  • manage-bde -unlock w: -cert -cf OEM-DRA.cer

Если содержимое должно часто использоваться в автономном режиме, для томов после первоначального разблокировки можно настроить автоматическое разблокирование BitLocker с помощью следующих команд: If the contents need to be frequently accessed offline, BitLocker autounlock can be set up for the volumes after the initial unlock using the following commands:

  • manage-bde -autounlock v: -enable
  • manage-bde -autounlock w: -enable

Отключение BitLocker Disabling BitLocker

Если возникает необходимость временно отключить BitLocker, инициировать сеанс PowerShell с устройством Интернета вещей и выполнить следующую команду: sectask.exe -disable . Should there arise a need to temporarily disable BitLocker, initate a remote PowerShell session with your IoT device and run the following command: sectask.exe -disable .

Шифрование устройства будет снова включено при следующей загрузке устройства, если не будет отключена задача по расписанию. Device encryption will be re-enabled on subsequent device boot unless the scheduled encryption task is disabled.

Читайте также:  Гаджет звук для windows 10
Оцените статью