Lightweight and Persistent Remote Attestation: Leveraging a Continuous Chain of Trust in Software Integrity Measurements
摘要
A key challenge in Internet of Things deployments is ensuring that devices run legitimate software, free from malware. Remote attestation addresses this challenge by enabling a third party, the verifier, to check the integrity of a remote device, the prover. Existing solutions typically establish a chain of trust in the prover’s software during boot. At its root are security properties provided by the prover’s hardware, such as an immutable bootloader and secure key storage. Despite being the de facto standard, this method has drawbacks, like the need for secure hardware and the difficulty in detecting advanced self-erasing malware. We present a novel attestation approach that utilizes a continuous trust chain in software integrity measurements. While existing solutions establish a new trust chain at each boot, we propose maintaining the trust chain over reboots of the prover. This provides two main benefits. First, unlike existing approaches, provers no longer need to provide secure hardware key storage. Second, it enables detection of sophisticated attacks, in which malware attempts to evade detection by erasing itself and triggering a reboot of the prover. We also explore disadvantages of our approach, namely, issues in recovering a compromised trust chain as well as an increased attestation overhead. Finally, we present extensions to address both disadvantages and show the security of our solution.