mirror of
https://github.com/MicrosoftDocs/windows-itpro-docs.git
synced 2025-05-12 21:37:22 +00:00
Merge pull request #10038 from paolomatarazzo/pm-20240718-bitlocker-pcr
[BitLocker] Addition of PCR 4
This commit is contained in:
commit
fac7b4c7a8
@ -92,9 +92,23 @@ Therefore, organizations that use BitLocker might want to use Hibernate instead
|
||||
|
||||
### Tricking BitLocker to pass the key to a rogue operating system
|
||||
|
||||
An attacker might modify the boot manager configuration database (BCD), which is stored on a nonencrypted partition and add an entry point to a rogue operating system on a different partition. During the boot process, BitLocker code makes sure that the operating system that the encryption key obtained from the TPM is given to, is cryptographically verified to be the intended recipient. Because this strong cryptographic verification already exists, we don't recommend storing a hash of a disk partition table in Platform Configuration Register (PCR) 5.
|
||||
An attacker might modify the boot manager configuration database (BCD), which is stored on a nonencrypted partition and add an entry point to a rogue operating system on a different partition. During the boot process, BitLocker code makes sure that the operating system that the encryption key obtained from the TPM is given to, is cryptographically verified to be the intended recipient. Because this strong cryptographic verification already exists, we don't recommend storing a hash of a disk partition table in PCR 5.
|
||||
|
||||
An attacker might also replace the entire operating system disk while preserving the platform hardware and firmware and could then extract a protected BitLocker key blob from the metadata of the victim OS partition. The attacker could then attempt to unseal that BitLocker key blob by calling the TPM API from an operating system under their control. This can't succeed because when Windows seals the BitLocker key to the TPM, it does it with a PCR 11 value of 0. To successfully unseal the blob, PCR 11 in the TPM must have a value of 0. However, when the boot manager passes the control to any boot loader (legitimate or rogue) it always changes PCR 11 to a value of 1. Since the PCR 11 value is guaranteed to be different after exiting the boot manager, the attacker can't unlock the BitLocker key.
|
||||
An attacker might also replace the entire operating system disk while preserving the platform hardware and firmware, and could then extract a protected BitLocker key blob from the metadata of the victim OS partition. The attacker could then attempt to unseal that BitLocker key blob by calling the TPM API from an operating system under their control. This can't succeed because when Windows seals the BitLocker key to the TPM, it does it with a PCR 11 value of 0. To successfully unseal the blob, PCR 11 in the TPM must have a value of 0. However, when the boot manager passes the control to any boot loader (legitimate or rogue), it always changes PCR 11 to a value of 1. Since the PCR 11 value is guaranteed to be different after exiting the boot manager, the attacker can't unlock the BitLocker key.
|
||||
|
||||
To prevent boot manger roll-back attacks, Windows updates released on and after July 2024 changed the default PCR Validation Profile for **UEFI with Secure Boot** from `7, 11` to `4, 7, 11`.
|
||||
|
||||
The PCR values map to:
|
||||
|
||||
- `PCR 4: Boot Manager`
|
||||
- `PCR 7: Secure Boot State`
|
||||
- `PCR 11: BitLocker access control`
|
||||
|
||||
> [!TIP]
|
||||
> To check what PCRs are in use, execute the following command:
|
||||
> ```cmd
|
||||
> manage-bde.exe -protectors -get c:
|
||||
> ```
|
||||
|
||||
## Attacker countermeasures
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
---
|
||||
author: paolomatarazzo
|
||||
ms.author: paoloma
|
||||
ms.date: 10/30/2023
|
||||
ms.date: 07/18/2024
|
||||
ms.topic: include
|
||||
---
|
||||
|
||||
@ -26,3 +26,6 @@ When this policy is enabled and the hardware is capable of using Secure Boot for
|
||||
|--|--|
|
||||
| **CSP** | Not available |
|
||||
| **GPO** | **Computer Configuration** > **Administrative Templates** > **Windows Components** > **BitLocker Drive Encryption** > **Operating System Drives** |
|
||||
|
||||
> [!NOTE]
|
||||
> To prevent boot manger roll-back attacks, Windows updates released on and after July 2024 changed the default PCR Validation Profile for **UEFI with Secure Boot** from `7, 11` to `4, 7, 11`.
|
||||
|
@ -26,6 +26,8 @@ A platform validation profile consists of a set of PCR indices ranging from 0 to
|
||||
|
||||
> [!NOTE]
|
||||
> When Secure Boot State (PCR7) support is available, the default platform validation profile secures the encryption key using Secure Boot State (PCR 7) and the BitLocker access control (PCR 11).
|
||||
>
|
||||
> To prevent boot manger roll-back attacks, Windows updates released on and after July 2024 changed the default PCR Validation Profile for **UEFI with Secure Boot** from `7, 11` to `4, 7, 11`.
|
||||
|
||||
The following list identifies all of the available PCRs:
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user