Power-On of Untrusted Execution Core Before Enabling Fabric Access Control

Draft Base
Structure: Simple
Description

This vulnerability occurs when a system powers up hardware components containing untrusted firmware before establishing critical security controls for the system's internal communication pathways and memory.

Extended Description

When a System-on-Chip (SoC) first boots, trusted firmware must be the first to configure the hardware's security settings. These settings, known as fabric access controls, act as gatekeepers for the chip's internal data highways and memory regions. If untrusted components—like peripheral microcontrollers or third-party IP cores—are activated before these gatekeepers are in place, they gain unrestricted access to the system's internal bus. From this privileged position, the untrusted firmware can initiate unauthorized transactions. It can read from or write to sensitive memory areas, including those holding the boot firmware itself. This allows it to tamper with the boot process, compromise the trusted firmware, and ultimately take control of the system from the very start of its operation.

Common Consequences 1
Scope: Access Control

Impact: Bypass Protection Mechanism

An untrusted component can master transactions on the HW bus and target memory or other assets to compromise the SoC boot firmware.

Potential Mitigations 1
Phase: Architecture and Design
The boot sequence should enable fabric access controls and memory protections before enabling third-party hardware IPs and peripheral microcontrollers that use untrusted firmware.
References 2
Intel x86 Root of Trust: loss of trust
Mark Ermolov, Positive Technologies
05-03-2020
ID: REF-1130
Owned by an iPod
Maximillian Dornseif
2004
ID: REF-1042