Intel CSME Deep Dive: When the Root of Trust Itself Is Untrustworthy
> From the CVE-2019-0090 IOMMU race condition to the complete compromise of the Fuse Encryption Key (FEK) in 2025 — Intel's six-year-old "hardware isolation" security model has been shattered by a fundamental design paradox: you hid the key inside a safe, then wrote the safe's combination on the safe's door.
---
1. The Vulnerability Wasn't a Coding Mistake — It Was Baked Into the Hardware Design
On March 20, 2025, Positive Technologies published a hard-hitting report titled *"Last barrier destroyed, or compromise of Fuse Encryption Key for Intel Security Fuses."* This was not yet another buffer overflow — it was an announcement that the last line of defense of Intel's CSME security architecture has been pierced by a physical-level design flaw.
To understand why this conclusion is so serious, we need to go back to 2019.
CVE-2019-0090: A Race Condition Window That Opened Pandora's Box
Intel CSME (Converged Security and Management Engine), as the platform's Root of Trust, rests on a core security assumption: CSME's SRAM and memory regions are invisible to the host CPU and other IP blocks. This isolation is enforced by the IOMMU.
But CVE-2019-0090 revealed a fatal fact:
> When CSME exits reset, the IOMMU is disabled by default. IOMMU protection is only enabled after the CSME ROM executes.
This means there is a time window — the microsecond gap between CSME exiting reset and the ROM enabling the IOMMU — during which any IP block with RS1 (Root Space 1) DMA capability can directly read and write CSME SRAM.
Positive Technologies successfully exploited this on the Cannon Lake platform:
1. Implant malicious firmware: load attacker-controlled firmware on the Integrated Sensor Hub (ISH) 2. Trigger a CSME reset: via a manufactured command or by waiting for CSME to resume from a low-power state 3. DMA attack window: read CSME SRAM via RS1 DMA transactions before the IOMMU is enabled 4. ROP chain execution: use the exfiltrated data to build a ROP attack and hijack CSME ROM execution flow
Intel's mitigation was blunt: on newer platforms (Ice Lake, Comet Lake, Tiger Lake, etc.), the IOMMU is enabled by default. But older platforms cannot be fixed in hardware and rely on firmware patches — which cannot eliminate a hardware-level race condition.
But CVE-2019-0090 Was Only Level One
Positive Technologies originally believed CVE-2019-0090 could only bypass the first level of CSME's security model. Encrypted Security Fuses could be read, but the Fuse Encryption Key (FEK) resides in the Secure Key Storage (SKS) hardware module, whose plaintext CSME firmware cannot directly access.
SKS's design philosophy: keys are generated and used in hardware, but their plaintext is never exposed to CSME SRAM. This resembles a hardware security module (HSM) — you can use the key for cryptographic operations, but never obtain the key itself.
If this design worked, CVE-2019-0090 would have been a "limited impact" vulnerability.
But the 2025 research proved: SKS itself has an architectural defect that allows the FEK to be extracted in full.
---
2. The FEK Break: From "Inaccessible" to "Known-Plaintext Attack"
SKS's Dual-Mode Disaster
Intel's Secure Key Storage supports two key modes:
- Secure Mode: the key activates SKS protection; CSME cannot read the plaintext and can only use the key for cryptographic operations
- Non-Secure Mode: the key does not activate SKS protection, allowing CSME to read the results of cryptographic operations
- Decrypt the Chipset Key
- Extract EPID private keys (used to prove platform authenticity)
- Forge CSME firmware signatures
- Bypass Boot Guard, PTT/TPM, and all other CSME-based security mechanisms
- Hardware isolation (dedicated processor, SRAM, IOMMU)
- Chain of trust (ROM → RBE → kernel, with staged signature verification)
- Key hierarchy (FEK → Chipset Key → Wrapping Key → per-module keys)
- Anti-rollback (SVN version control against firmware downgrade)
- Embedded devices
- Industrial control
- IoT gateways
- Low-end laptops
- Positive Technologies: "Last barrier destroyed, or compromise of Fuse Encryption Key for Intel Security Fuses" (2025-03-20)
- Intel Security Announcement 2025-04-03-001
- Intel CSME Security White Paper 14.0/15.0/16.0
- INTEL-SA-00213 (CVE-2019-0090)
Non-Secure Mode was intended to support SHA/HMAC operations, whose results must be readable by CSME firmware. The problem: keys in Non-Secure Mode can be overwritten, and the crypto engine does not protect the original key.
FEK Has Secure Mode = 0
Positive Technologies found that the FEK's Secure Mode attribute is set to 0, i.e., Non-Secure Mode.
This is explicitly documented in Intel's official materials. Intel's justification: the FEK must decrypt the EPID private key (an ECDSA private key), and the OCS (Offload and Crypto Subsystem) hardware does not support ECDSA — so the EPID private key must be implemented in software inside CSME memory. Therefore the FEK cannot be locked in Secure Mode.
But this explanation masks the real problem: the AES engines (AES_A, AES_P) actually support reading result data in Secure Mode. The FEK could have been set to Secure Mode while still allowing decrypted output to be read. Intel's firmware developers and hardware engineers suffered a serious coordination failure.
Known-Plaintext Attack: 256 × 32 Attempts to Extract a 32-Byte Key
Since the FEK is in Non-Secure Mode, an attacker can:
1. Control the input plaintext: send arbitrary plaintext to the AES engine for encryption 2. Observe the output ciphertext: compare encryption results before and after key bytes are overwritten 3. Brute-force byte by byte: for the 32-byte AES key, try each byte (256 possibilities), checking whether the ciphertext changes 4. Full extraction: at most 256 × 32 = 8,192 attempts recovers the entire 32-byte FEK
Positive Technologies demonstrated this on Apollo Lake and Gemini Lake platforms, and published the FEK values for both platforms directly in the report.
The Most Fatal Point: The FEK Is Not Unique
> The FEK is identical for all processors of the same microarchitecture.
An attacker only needs to crack one Apollo Lake device to obtain the FEK for all Apollo Lake devices; the same applies to Gemini Lake/Refresh.
Once the FEK leaks, encrypted Security Fuses are no longer safe. An attacker can:
Intel's security model relies on SVN (Security Version Number) for TCB recovery — when a vulnerability is found, the firmware version number is bumped, old keys are revoked, and new keys distributed. But if the FEK leaks, an attacker can recompute all derived keys for any SVN. TCB recovery is completely broken.
---
3. The Fundamental Paradox of Hardware Security Models
Intel CSME embodies the ideal of "Defense-in-Depth":
But the 2025 research exposes a fatal weakness: the root key itself cannot be upgraded.
The FEK is burned into hardware fuses and cannot be changed after manufacture. If the FEK leaks, the root of the entire trust chain is pulled out — like telling everyone your house's foundation password and then discovering the foundation itself cannot be replaced.
Why Intel Cannot Fix It
Intel's April 3, 2025 security advisory states:
> "All reported vulnerabilities have been mitigated. Systems with all firmware updates applied... are not susceptible."
Positive Technologies immediately countered:
> "This is a hardware design problem and cannot be fixed by modifying CSME firmware."
Intel's "mitigation" actually reduces exploitability rather than eliminating the vulnerability:
1. End of Manufacturing (EOM): system manufacturers must enable Flash Descriptor write protection and disable CSME manufacturing APIs 2. Firmware updates: patch the CVE-2019-0090 exploitation chain 3. Physical access requirement: emphasizing that the attack requires physical contact
None of this changes one fact: the affected platforms' FEK has already leaked and can never be rotated. With the FEK and the encrypted Security Fuses (extractable via voltage fault injection), an attacker can fully compromise the platform.
---
4. Impact Assessment: Who Should Worry?
Directly Affected Scope
Positive Technologies' research targeted Atom platforms such as Apollo Lake and Gemini Lake/Refresh, widely used in:
But the threat model extends further.
While FEK extraction has only been confirmed on Atom platforms, Positive Technologies notes:
> "The insecure FEK problem exists at the hardware level and is an architectural problem."
If Intel applied the same SKS/OCS design philosophy on Core and Xeon platforms, similar flaws may exist. There is no public evidence yet that Core platform FEKs have been extracted, but the design-level risk cannot be ignored.
Realistic Attack Scenarios
1. Supply chain attacks: an attacker obtains a device at the factory or in logistics, extracts the FEK, and implants undetectable malicious CSME firmware 2. Second-hand device risk: a "new" device may already be compromised, with no software tool able to detect it 3. Enterprise environments: if vPro/AMT remote management is hijacked, attackers can bypass all OS-level security monitoring 4. DRM/content protection: mechanisms relying on EPID private keys for platform authenticity — HDCP, SGX — fail
---
5. Mitigation Reality: What Can Users Do?
Immediate Actions
1. Check your platform: Apollo Lake / Gemini Lake / Gemini Lake Refresh means highest risk 2. Update BIOS/ME firmware: while it cannot fix the FEK leak, it closes the CVE-2019-0090 exploitation chain 3. Verify EOM completion: check whether the Flash Descriptor is locked and CSME manufacturing APIs are disabled 4. Physical security: prevent unauthorized physical contact — FEK extraction requires physical access
Longer-Term Options
1. Neutralize with me_cleaner: on non-vPro devices, remove AMT and networking features to sharply reduce attack surface 2. Platform migration: consider AMD (smaller PSP attack surface, though also closed-source) or ARM platforms 3. Watch open alternatives: RISC-V plus open firmware (coreboot, Oreboot) — immature ecosystems, but far more transparent
---
6. Conclusion: When the "Root of Trust" Itself Must Be Trusted
The Intel CSME story reveals a deep paradox about security:
> You built a perfect safe to protect a key — but the combination protecting the safe was designed to be un-rotatable and extractable.
CVE-2019-0090 opened the first door — the IOMMU race condition let attackers read encrypted Security Fuses. The 2025 FEK break proved that even with that door closed, the safe's own design was flawed.
This is not a code bug — it is an architecture-level design failure:
1. The FEK should never have been in Non-Secure Mode 2. Non-Secure Mode should not permit key overwriting and extraction 3. The root key should be unique and rotatable, or at least different across platforms
Six years of Intel's "Below-OS" security fortress was dismantled by a 32-byte AES key and a race condition window. This is not because attackers got stronger — it is because defenders never truly grasped the non-negotiability of "root" when designing root-of-trust mechanisms.
For ordinary users: your device may carry a permanently unfixable vulnerability at a hardware level you can neither see nor control.
For security researchers: hardware security assessment can no longer stop at "isolation equals safety" — it must dig into key lifecycle management, architectural threat modeling, and above all, the irrevocability of root keys.
For Intel: closed-source + unauditable + unrotatable root key = systemic risk.
---
References: