Critical Vulnerabilities Found in Intel, AMD Trusted Execution Environments with TEE.fail Attack

TEE.fail Attack Exposes Critical Vulnerabilities in Intel and AMD Trusted Execution Environments

A significant security vulnerability has been identified, posing a substantial threat to the integrity of modern Trusted Execution Environments (TEEs) utilized in Intel and AMD server platforms. Researchers from Georgia Tech, Purdue University, and van Schaik LLC have introduced TEE.fail, an advanced attack technique that exploits weaknesses in DDR5 memory bus interposition to extract sensitive cryptographic keys from environments previously considered secure.

This breakthrough marks the first successful execution of memory bus interposition attacks on DDR5-based systems, impacting Intel’s Software Guard Extensions (SGX), Trust Domain Extensions (TDX), and AMD’s Secure Encrypted Virtualization-Secure Nested Paging (SEV-SNP) implementations operating on the latest server hardware.

Evolution of Trusted Execution Environments

The TEE.fail attack capitalizes on a pivotal shift in TEE design. Historically, TEEs in client-oriented hardware incorporated robust integrity protections, such as Merkle tree-based verification and replay defenses. However, to enhance performance and scalability, manufacturers have transitioned to server-grade implementations employing deterministic AES-XTS memory encryption. This change supports extensive protected memory capacities and reduces latency but inadvertently introduces vulnerabilities that TEE.fail exploits through physical memory bus monitoring.

Execution of the TEE.fail Attack

The researchers demonstrated that the TEE.fail attack can be conducted with equipment costing under $1,000, sourced from secondhand markets. They successfully extracted cryptographic keys from machines maintaining Intel’s fully trusted UpToDate attestation status, indicating that even systems adhering to the highest security certifications are susceptible to this attack vector.

The implications are profound, as the researchers managed to extract Provisioning Certification Keys (PCK) from production systems and utilized them to forge arbitrary SGX and TDX attestations.

Memory Bus Interposition Technique

Central to the TEE.fail attack is the construction of a DDR5 memory interposition probe using components obtained from electronic equipment resellers. The researchers developed a custom interposer by modifying DDR5 RDIMM riser boards and integrating probe isolation networks salvaged from decommissioned test equipment. This isolation network, comprising carefully matched resistors, capacitors, and inductors, prevents electrical interference with the target system while enabling observation of memory bus traffic.

The attack exploits Intel’s use of deterministic AES-XTS encryption combined with precise control over enclave execution timing. By implementing controlled-channel attacks to pause enclave execution at specific points and utilizing cache thrashing techniques to force memory accesses, the researchers achieved synchronized data collection with their logic analyzer setup. The deterministic nature of the encryption allows correlation between observed ciphertexts and known plaintext values, facilitating cryptographic key recovery through ECDSA nonce extraction during signing operations performed by Intel’s Provisioning Certification Enclave.

Implications and Recommendations

The TEE.fail attack underscores the need for a reassessment of the security measures in place for Trusted Execution Environments, especially as they transition to server-grade implementations. Organizations relying on Intel SGX, TDX, and AMD SEV-SNP for secure data processing should be aware of these vulnerabilities and consider implementing additional security measures to mitigate potential risks.

As the landscape of cybersecurity threats continues to evolve, it is imperative for hardware manufacturers and organizations to stay vigilant and proactive in addressing emerging vulnerabilities to maintain the confidentiality and integrity of sensitive data.