-
Notifications
You must be signed in to change notification settings - Fork 17
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #347 from chrisccoulson/preinstall-detect-empty-pc…
…r-banks preinstall: Add explicit checks for empty PCR banks. Whilst this has no consequence for FDE because we seal against a good bank, it breaks measured boot as required by remote verifiers, as an empty PCR bank provides a means for an adversary to spoof any host platform of their choosing. We reject systems with empty PCR banks by default, but with an opt-in to permit it. Permitting it is fine for now, but when we get to the point of a fully verified and attestable runtime in the future, this will not be permitted. We will need to take some action here, such as capping PCRs 0-7 with an EV_SEPARATOR type event that indicates an error occurred in those banks. Whilst an empty PCR bank is considered a firmware bug and we shouldn't be seeing it on newer devices, it's not that uncommon to see this on devices from the era when TPM2 devices started introducing SHA384 before the firmware was ready to use it. We may want to see if we can design a scheme where we can provide proof that a PCR bank was populated by the firmware and not by an adversary.
- Loading branch information
Showing
5 changed files
with
226 additions
and
17 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.