FMC-CEE: A Collaborative Execution Environment with Flash Memory Controllers in IoT

Published: 01 Jan 2024, Last Modified: 12 May 2024PerCom Workshops 2024EveryoneRevisionsBibTeXCC BY-SA 4.0
Abstract: Applications running on an Internet of Things (IoT) device are usually deployed in an untrusted environment. This introduces risks of vulnerability to malware, and loss of intellectual property associated with security sensitive code. Trusted execution environments (TEEs) and TEE-based applications have been widely adopted to run security sensitive workloads and protect the security of applications. However, existing approaches require specialized CPU support or hardware peripherals equipped with co-processors, precluding widely deployment on low-cost IoT devices. In this paper, we propose a flash memory controller-based collaborative execution environment (FMC-CEE), a lightweight security solution constructed on the target flash device to provide code confidentiality and basic security primitives for low-cost IoT devices and embedded devices. FMC-CEE leverages the microprocessor of the target flash device as a co-processor that executes security-sensitive workloads collaboratively with the target system. We implemented a prototype of FMC-CEE on a Trans-Flash (TF) card and executed security-sensitive tasks of the target host. The experimental results show that FMC-CEE takes $590.748 \mu \mathrm{s}$ to execute the remote code (512 bytes), thus incurring very little overhead on the host system.
Loading