Secure Boot Attacks and Defenses

Secure Boot is a security standard designed to ensure a device boots using only software that is trusted by the Original Equipment Manufacturer (OEM), thereby preventing malicious code like rootkits from loading during startup. Attacks against this mechanism often involve exploiting vulnerabilities in the UEFI firmware, using leaked or compromised signing keys to authorize malicious bootloaders, or physically accessing the hardware to disable or alter the boot configuration. Defenses rely on a layered strategy that includes regularly patching firmware, maintaining an updated database of revoked signatures (DBX) to block known-bad components, leveraging a Trusted Platform Module (TPM) for measured boot to attest to the integrity of the boot process, and securing the software supply chain to prevent key compromise.

  1. Fundamentals of Secure Boot
    1. Purpose and Goals of Secure Boot
      1. Preventing Pre-boot Malware
        1. Establishing Hardware Root of Trust
          1. Ensuring System Integrity
            1. Maintaining Chain of Trust
            2. Historical Context and Evolution
              1. Limitations of Legacy BIOS
                1. Evolution from BIOS to UEFI
                  1. Development of Secure Boot Standard
                    1. Industry Adoption Timeline
                    2. Core Concepts and Terminology
                      1. Root of Trust Definition
                        1. Trust Anchor Concept
                          1. Chain of Trust Principles
                            1. Cryptographic Foundations
                            2. Unified Extensible Firmware Interface (UEFI)
                              1. UEFI Architecture Overview
                                1. UEFI Boot Services
                                  1. UEFI Runtime Services
                                    1. UEFI System Table
                                      1. UEFI Boot Process Flow
                                      2. Secure Boot Standard Components
                                        1. UEFI Specification Requirements
                                          1. Platform Key Infrastructure
                                            1. Signature Database Architecture
                                              1. Authenticated Variables System