Как включить BitLocker при загрузке Windows 10 из диспетчера загрузки стороннего производителя?

Моя установка

У меня есть ноутбук ThinkPad P1 Gen 3, и я хочу, чтобы он выполнял двойную загрузку Linux и Windows 10. Для этого я хочу использовать диспетчер загрузки, поддерживающий как Linux, так и Windows; в настоящее время я использую rEFInd. Я также хочу включить безопасную загрузку и зашифровать мой диск Windows с помощью BitLocker.

Проблема: BitLocker не работает

Проблема в том, что я не могу зашифровать свой диск с помощью BitLocker. Когда я загружаю Windows с помощью rEFInd, BitLocker не работает. Я определил, что он отключается, потому что привязка PCR7 невозможна — в Системная информация он говорит:

Конфигурация PCR7:
Связывание невозможно

Поддержка шифрования устройства:
Причины неудачного автоматического шифрования устройства: привязка PCR7 не поддерживается; Обнаружены недопустимые шина / устройства с поддержкой DMA

Кажется, все это каким-то образом связано с Trusted Platform Module (TPM), но я все еще читаю больше об этой теме, которая для меня нова.

С другой стороны, когда я загружаю Windows непосредственно из записи UEFI, опуская rEFInd, привязка PCR7 возможна, и BitLocker работает нормально.

Я тестировал другие менеджеры загрузки, поддерживающие Linux, например systemd-boot, и проблема была такой же. Таким образом, проблема возникает не только в rEFInd, но и в любом диспетчере загрузки, кроме диспетчера загрузки Windows, который запускается напрямую через UEFI.

Вопрос

Почему привязка PCR7 невозможна при загрузке Windows из другого диспетчера загрузки? Как я могу это исправить?

2 ответа
2

Почему привязка PCR7 невозможна при загрузке Windows из другого диспетчера загрузки?

PCR7 — это регистр, в котором регистрируются все параметры безопасной загрузки — полное содержимое PK / KEK / db, а также конкретные сертификаты, используемые для проверки каждого загрузочного приложения (например, rEFInd, Bootmgfw, Winload.efi).

BitLocker, похоже, имеет умышленное ограничение что это будет Только привязать к PCR7, если его значение указывает, что вся цепочка загрузки подписана исключительно с использованием сертификатов Microsoft Windows Production PCA. Он откажется, если что-то в процессе (например, rEFInd или другой сторонний загрузчик) было подписано с использованием другого сертификата, даже если этому другому сертификату доверяет ваша конфигурация UEFI.

Это, скорее всего, предназначено для изоляции операционных систем в среде с двойной загрузкой, например, чтобы не допустить, чтобы кто-то просто перезагрузился в произвольный незащищенный Linux через Shim и таким образом получил доступ к вашим файлам Windows.

(Примечание: на самом деле я не знаю, принимает ли BitLocker загрузчики, подписанные «Microsoft Corporation UEFI CA 2011», предназначенные для сторонних загрузчиков. Если это так, то вы можете использовать Shim для загрузки rEFInd, поскольку Shim подписан используя этот CA.)

(Примечание: использование BitLocker PCR7 не мешает вам иметь настраиваемые сертификаты, установленные в PK, KEK или db — это нормально иметь настройку безопасной загрузки с настраиваемым ключом для целей Linux, если эти настраиваемые записи db не участвуют в процесс загрузки Windows.)

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

Как я могу это исправить?

Если вы используете функцию «Шифрование устройства» (Windows 10 Home / Pro), вы не можете избежать этого — эта урезанная версия BitLocker всегда требует безопасной загрузки и использования TPM PCR7.

Если вы используете полную версию BitLocker (только для Windows 10 Pro), все это не мешает BitLocker использовать TPM в целом — он по-прежнему может использовать альтернативный метод привязки к PCR0 / 2/4/11 (PCR4 — это регистр, содержащий точные хэши загрузочных файлов). Проблема в том, что использование PCR0 / 2/4 немного более хрупкое и приводит к более частым запросам ключа восстановления. Например, каждый раз, когда вы обновляете Shim или rEFInd, значение PCR4 будет меняться, и вам понадобится ключ восстановления.

(Примечание: если вы включите BitLocker с активной привязкой PCR7, а затем перезагрузитесь через rEFInd, чтобы PCR7 стал непригодным для использования, вам будет предложено ввести ключ восстановления, и вместо этого BitLocker будет автоматически повторно привязан к PCR0 / 2/4/11. И наоборот. наоборот, перезагрузка из меню UEFI непосредственно в Windows приведет к тому, что BitLocker попытается выполнить повторную привязку к PCR7 после ввода ключа восстановления.)

Мое предложение: просто всегда используйте загрузочное меню UEFI, предоставленное прошивкой, для выбора своей ОС. Если это некрасиво или неудобно, воспользуйтесь функцией «BootNext» через efibootmgr --boot-next или же bcdedit.exe /bootsequence для прямой загрузки в запрашиваемую ОС. (Это даже позволяет, например, использовать «Linux» в качестве ярлыка на рабочем столе Windows.)

Я думаю, BitLocker не ограничивается шифрованием всего диска.

BitLocker в режиме «Программного шифрования» никогда не шифрует весь диск — он шифрует Windows. перегородка, точно так же, как можно было бы использовать LUKS для шифрования своего раздела Linux.

Все остальные разделы остаются без изменений. В частности, поскольку прошивка UEFI обычно не имеет встроенной поддержки BitLocker, «Системный раздел EFI» имеет оставаться незашифрованным.

Можно ли использовать два раздела UEFI?

Да, но 1) в этом нет необходимости, 2) это вам не особо поможет. Нет никакой разницы между использованием двух разделов и помещением загрузочных файлов Windows и Linux в один и тот же раздел — имеют значение только сами файлы.

  • Спасибо! Это тонна полезной информации, которую я не смог найти нигде в Интернете. На самом деле я использую загрузчик Shim для загрузки rEFInd, и он не работает, поэтому кажется, что BitLocker не принимает ничего, подписанного Корпорация Microsoft UEFI CA 2011 сертификат.

    — Роберт Кушньер
    15 часов назад

  • Как переключить BitLocker на использование альтернативного метода привязки к PCR0 / 2/4/11?

    — Роберт Кушньер
    15 часов назад

  • Для меня это казалось автоматическим. По крайней мере, если вы сначала успешно включите его с помощью PCR7, кажется, что после перезагрузки ключа восстановления он всегда будет повторно связываться со всем, что возможно (и manage-bde -protectors перечисляет текущую активную привязку). Однако вы можете попробовать использовать групповую политику (gpedit.msc), «Компьютер> Административное> Компоненты Windows> BitLocker> Операционная система» имеет несколько кнопок — как для отключения привязки Secure Boot PCR7, так и для принудительного создания настраиваемого профиля привязки.

    — user1686
    15 часов назад

  • Имейте в виду, что, поскольку PCR4 включает хэши всех загруженных исполняемых файлов .efi, это означает, что вам потребуется ключ восстановления каждый раз, когда вы обновляете Shim.efi или rEFInd.efi, так как это сделает старую привязку недействительной.

    — user1686
    15 часов назад

  • Думаю, я наконец понял Зачем это ограничение от BitLocker необходимо. Если бы его не было, и если бы вы использовали привязку PCR7 вместе, например, с Shim + rEFInd, тогда была бы возможность загрузиться в другую ОС (возможно, предоставленную злоумышленником) способом, который по-прежнему приводит к тому же событию PCR7. log и предоставляет доступ к разделу Windows, зашифрованному с помощью BitLocker.

    — user1686
    15 часов назад

У меня ноутбук с двойной загрузкой, UEFI с безопасной загрузкой, Ubuntu с LUKS и Windows 10 Pro с Bitlocker. Обратной стороной моей установки является то, что я не использую модуль TPM и мне приходится вводить пароль для разблокировки битлокера. Я не помню точных шагов, я полагаю, что выполнил стандартную процедуру двойной загрузки без Bitlocker, а затем включил Bitlocker. Понятия не имею, что такое привязка PCR7. Я использую Grub2 как менеджер загрузки.

  • Почему вы отключили TPM? У вас возникли проблемы?

    — Роберт Кушньер
    16 часов назад

  • Я не специалист по битлокерам Windows или TPM. Я настраивал битлокер всего несколько раз. Что я помню, так это то, что для битлокера требуется полное шифрование диска, если я прав, а это невозможно при двойной загрузке, если, конечно, у вас нет двух внутренних дисков. Но здесь я могу ошибаться.

    — СПРБРН
    16 часов назад

  • Я думаю, BitLocker не ограничивается шифрованием всего диска. В настоящее время у меня есть один диск, на котором есть разделы Windows и Linux. я может зашифровать раздел Windows с помощью BitLocker, если я загружаю Windows непосредственно из UEFI (без использования rEFInd).

    — Роберт Кушньер
    16 часов назад

  • Можно ли использовать два раздела UEFI? Любопытный вопрос! Я не знаю, работает ли это, просто предложение. Конечно, у вас может быть несколько разделов UEFI, но сработает ли переключение загрузки с одного на другой и обратно?

    — СПРБРН
    16 часов назад

  • Кажется, у вас может быть несколько разделов UEFI. Я где-то читал, что это на самом деле то, что ты нужно делать, если вы хотите загрузить несколько версий Windows на одном компьютере. Но моей проблеме это не нужно. Я действительно могу без проблем загрузить Windows из меню прошивки. Просто я хочу улучшить UX и загрузить его из rEFInd. В основном потому, что я думаю, что в этом нет ничего плохого, и это должно быть выполнимо.

    — Роберт Кушньер
    16 часов назад

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *