Search papers, labs, and topics across Lattice.
This paper introduces HPCCFA, a novel Control Flow Attestation (CFA) mechanism for Trusted Execution Environments (TEEs) that leverages Hardware Performance Counters (HPCs) on commodity CPUs to enable hardware-backed trace generation. HPCCFA aims to detect runtime attacks exploiting vulnerabilities within the TEE by monitoring control flow and identifying deviations. The authors demonstrate a proof-of-concept implementation on Keystone for RISC-V, evaluating the trade-off between detection reliability and performance overhead based on the number of measurement points.
Commodity CPUs can now perform hardware-backed control flow attestation using hardware performance counters, enabling runtime attack detection in TEEs.
Trusted Execution Environments (TEEs) allow the secure execution of code on remote systems without the need to trust their operators. They use static attestation as a central mechanism for establishing trust, allowing remote parties to verify that their code is executed unmodified in an isolated environment. However, this form of attestation does not cover runtime attacks, where an attacker exploits vulnerabilities in the software inside the TEE. Control Flow Attestation (CFA), a form of runtime attestation, is designed to detect such attacks. In this work, we present a method to extend TEEs with CFA and discuss how it can prevent exploitation in the event of detected control flow violations. Furthermore, we introduce HPCCFA, a mechanism that uses HPCs for CFA purposes, enabling hardware-backed trace generation on commodity CPUs. We demonstrate the feasibility of HPCCFA on a proof-of-concept implementation for Keystone on RISC-V. Our evaluation investigates the interplay of the number of measurement points and runtime protection, and reveals a trade-off between detection reliability and performance overhead.