On-the-fly Firmware Verification Circuitry for Boot Security
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Firmware is susceptible to time-of-check to time-of-use (TOCTOU) attacks, where malicious code can be injected between firmware measurement and execution, evading detection despite existing security measures.
Innovation Solution
Implementing firmware verification circuitry within the processing unit to make on-the-fly measurements of executed instructions, eliminating the window for malicious code injection by generating cryptographic measurements at the point of execution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If firmware measurement is performed before execution, then security verification can be completed, but a time window exists for malicious code injection (TOCTOU attack)
Solution Approach 1:
The patent applies preliminary action by measuring the firmware in advance during the boot process before execution begins. The measurement is performed on the firmware image loaded into memory, creating a cryptographic hash value that is later compared against a stored reference value. This preliminary measurement establishes security verification before the vulnerable time window can be exploited.
Solution Approach 2:
The patent introduces an intermediary mechanism - a trusted measurement process that creates a cryptographic hash of the firmware and compares it against a reference value stored in secure memory. This intermediary verification layer acts as a mediator between the firmware loading process and execution, blocking malicious code injection by verifying integrity through the hash comparison before allowing execution to proceed.
2Reliability
If extensive memory verification is performed, then firmware security is enhanced, but boot process time increases
Solution Approach 1:
The patent extracts the essential security verification function from extensive memory checking by focusing only on measuring the firmware image's cryptographic hash value. Instead of verifying every byte of memory or performing comprehensive scans, the system extracts just the critical measurement - computing a hash of the firmware image and comparing it to a reference value. This selective approach maintains security while dramatically reducing verification time.
Solution Approach 2:
The patent changes the verification parameter from extensive memory scanning to cryptographic hash computation. By transforming the verification task into computing and comparing hash values (such as SHA-256), the system achieves robust security verification with minimal processing time. The parameter change from byte-by-byte checking to hash-based verification maintains reliability while improving boot speed.
Data Source
AI summary
Techniques for measuring firmware at the point and time of execution are described. Hardware logic can be implemented in a processing unit that is tasked with executing firmware code to make on-the-fly measurements of the instructions being executed by the processing unit. For example, an instruction register that stores instructions being executed by the processing unit can be monitored to obtain a set of instructions corresponding to the firmware being executed. Firmware verification circuitry can be implemented to compute a cryptographic measurement of the instructions being executed to verify the authenticity of the firmware.


