VeraCrypt

Документация >> Шифрование системы >> EFI Secure Boot

EFI Secure Boot

Шифрование системы VeraCrypt совместимо с EFI Secure Boot: EFI-загрузчики VeraCrypt подписаны Microsoft в рамках программы Microsoft для подписи сторонних UEFI-компонентов, поэтому прошивка может проверять их по стандартным сертификатам Microsoft без добавления пользовательского ключа. На этой странице описано, как VeraCrypt выбирает подписанные загрузчики, как это связано с переходом Microsoft Secure Boot от центров сертификации 2011 года (CA) к центрам сертификации 2023 года, а также как диагностировать и устранять сбои загрузки, связанные с Secure Boot.

Наборы подписанных загрузчиков

Начиная с версии 1.26.29 VeraCrypt поставляет два полных набора EFI-загрузчиков, подписанных Microsoft:
При установке, обновлении, восстановлении/переустановке и запуске шифрования системы VeraCrypt считывает базу данных подписей прошивки (db) и выбирает набор загрузчиков, чьим подписывающим центрам сертификации доверяет прошивка. Если присутствует пара центров сертификации 2023 года, предпочтение отдаётся набору 2023 года; в противном случае используется набор 2011 года, если прошивка доверяет Microsoft Corporation UEFI CA 2011. Если Secure Boot включён и прошивка не доверяет ни одному набору, VeraCrypt отказывается устанавливать свой загрузчик и выводит ошибку, вместо того чтобы установить загрузчик, который прошивка отклонит при следующей перезагрузке.
Изменение конфигурации Secure Boot в прошивке (например, включение дополнительных сертификатов в настройках BIOS) само по себе не перезаписывает файлы, уже установленные в системном разделе EFI. После изменения базы данных Secure Boot в прошивке запустите установщик VeraCrypt в режиме Восстановить/переустановить или позвольте службе VeraCrypt System Favorites автоматически обновить загрузчик (она повторно оценивает выбор при запуске Windows, входе в сеанс или разблокировке, выходе из сна и завершении работы).

Диагностика

VeraCrypt записывает сведения о том, какой набор загрузчиков был установлен и почему, в следующий ключ реестра:
HKEY_LOCAL_MACHINE\SOFTWARE\VeraCrypt\Diagnostics\EfiBootLoader
    EfiBootLoaderResourceSet          REG_DWORD  2011 (0x7db) или 2023 (0x7e7)
    EfiBootLoaderSelectionReason      REG_SZ     понятная человеку причина выбора
    EfiBootLoaderFirmwareDbLastError  REG_DWORD  последняя ошибка чтения/разбора db прошивки (0 = нет)
    EfiBootLoaderSelectionTimeUtc     REG_SZ     время последнего выбора
Следующие команды, выполненные из окна PowerShell с повышенными правами, показывают, какие сертификаты Microsoft присутствуют в db прошивки (обратите внимание: на некоторых прошивках имена могут не отображаться при таком простом текстовом поиске, даже если сертификаты присутствуют):
reg query HKLM\SOFTWARE\VeraCrypt\Diagnostics\EfiBootLoader /s

$t = [Text.Encoding]::ASCII.GetString((Get-SecureBootUEFI db).Bytes)
'Microsoft Corporation UEFI CA 2011',
'Microsoft Windows Production PCA 2011',
'Windows UEFI CA 2023',
'Microsoft UEFI CA 2023',
'Microsoft Option ROM UEFI CA 2023' |
  ForEach-Object { "$_ : $($t -match [regex]::Escape($_))" }
Кроме того, служба VeraCrypt System Favorites записывает предупреждение в журнал приложений Windows (источник VeraCryptSystemFavorites), когда обнаруживает, что активная db Secure Boot больше не доверяет одному из компонентов установленной цепочки загрузки.

Переход на сертификаты Microsoft 2023 года

Сертификаты Microsoft Secure Boot 2011 года истекают в 2026 году: Microsoft Corporation KEK CA 2011 и Microsoft Corporation UEFI CA 2011 истекли в июне 2026 года, а Microsoft Windows Production PCA 2011 истекает в октябре 2026 года. Microsoft заменяет их центрами сертификации 2023 года и распространяет новые сертификаты, а также Windows Boot Manager, подписанный Windows UEFI CA 2023, через Windows Update.
Два важных момента для пользователей VeraCrypt:

Новые компьютеры, доверяющие только CA 2023 года

Некоторые новые компьютеры поставляются с завода с конфигурацией Secure Boot, содержащей только Windows UEFI CA 2023 и вообще не содержащей сторонних центров сертификации Microsoft. На таких системах сначала нужно включить в настройках прошивки два сторонних центра сертификации, необходимых для набора загрузчиков VeraCrypt 2023 года (Microsoft UEFI CA 2023 и Microsoft Option ROM UEFI CA 2023). Обычно этот параметр называется "Allow Microsoft 3rd Party UEFI CA", "Third-Party CA" или "Third-Party Certificates". После его включения запустите установщик VeraCrypt в режиме Восстановить/переустановить (или начните шифрование системы), чтобы VeraCrypt выбрал набор загрузчиков 2023 года.
Если прошивка не предоставляет возможности доверять стороннему центру сертификации Microsoft, шифрование системы VeraCrypt нельзя использовать на этом компьютере при включённом Secure Boot.

Обновление существующей системы до сертификатов 2023 года

Windows распространяет сертификаты 2023 года поэтапно, на основе телеметрии. Устройства обновляются автоматически только после того, как Microsoft получает достаточную уверенность в конкретном сочетании оборудования и прошивки. Поскольку компьютер с системным шифрованием VeraCrypt загружается через нестандартную цепочку загрузки (загрузчик VeraCrypt занимает место Windows Boot Manager), такие компьютеры обычно не классифицируются для автоматического обновления, и развёртывание не запускается само. Приложение "Безопасность Windows" может сообщать, что "not yet enough data to classify your device". По той же причине участия в управляемом Microsoft развёртывании (значение реестра MicrosoftUpdateManagedOptIn) на таких компьютерах может оказаться недостаточно.
Microsoft документирует значение реестра для явного запуска обновления (см. Microsoft KB5068202, "Registry key updates for Secure Boot"). Из командной строки с повышенными правами:
reg add HKLM\SYSTEM\CurrentControlSet\Control\Secureboot /v AvailableUpdates /t REG_DWORD /d 0x5944 /f

rem при необходимости запустите задачу обслуживания сразу (иначе она выполняется каждые 12 часов):
schtasks /Run /TN "\Microsoft\Windows\PI\Secure-Boot-Update"
Ход выполнения можно отслеживать в HKLM\SYSTEM\CurrentControlSet\Control\Secureboot\Servicing (значения UEFICA2023Status и UEFICA2023Error) и по событиям обслуживания Secure Boot в журнале событий Windows. Обновление db добавляет Windows UEFI CA 2023, а на системах, которые уже доверяют Microsoft Corporation UEFI CA 2011 (что верно для каждой системы VeraCrypt с Secure Boot), также добавляет Microsoft UEFI CA 2023 и Microsoft Option ROM UEFI CA 2023.
Перед запуском обновления на машине с системным шифрованием VeraCrypt примите следующие меры предосторожности:
После применения обновления db VeraCrypt автоматически переключится на набор загрузчиков 2023 года при следующем обновлении загрузчика (Восстановить/переустановить, обновление версии или одна из автоматических точек обновления службы System Favorites). Результат можно проверить в описанном выше ключе реестра диагностики и заново создать Диск восстановления, когда появится соответствующее приглашение.

Восстановление после сбоя загрузки Secure Boot

Если конфигурация Secure Boot в прошивке больше не доверяет одному из компонентов цепочки загрузки, возможны два разных сбоя:
В обоих случаях процедура восстановления такова:
  1. Временно отключите Secure Boot в настройках прошивки и запустите Windows обычным образом (предзагрузочная аутентификация VeraCrypt работает и с отключённым Secure Boot) или загрузите Диск восстановления VeraCrypt и используйте "Restore VeraCrypt loader binaries to system disk".
  2. В Windows настройте сертификаты Secure Boot в прошивке/Windows по необходимости (включите сторонние центры сертификации в настройках прошивки или примените обновления сертификатов Windows Secure Boot, как описано выше), затем запустите установщик VeraCrypt в режиме Восстановить/переустановить.
  3. Снова включите Secure Boot.

Устаревшая процедура с пользовательскими ключами (не рекомендуется)

В более старых версиях VeraCrypt была задокументирована процедура с пользовательскими ключами (скрипт VeraCrypt-DCS SecureBoot, sb_set_siglists.ps1), которая заменяла базы Secure Boot прошивки пользовательским ключом платформы и сертификатами Microsoft эпохи 2011 года. Эта процедура устарела и не должна использоваться на системах с цепочкой сертификатов 2023 года: она удаляет доверие к Windows Boot Manager, подписанному сертификатом 2023 года, и нарушает загрузку Windows после предзагрузочной аутентификации VeraCrypt. Системы, где она применялась, должны восстановить заводские ключи Secure Boot производителя, а затем следовать обычной процедуре, описанной на этой странице.
 
Следующий раздел >>