uBOX: A Lightweight and Hardware-Assisted Sandbox for Multicore Embedded Systems

Xia Zhou, Yujie Bu, Meng Xu, Yajin Zhou, Lei Wu · IEEE Transactions on Dependable and Secure Computing · 2024

Multicore embedded systems employ a big.LITTLE architecture to combine different cores into a single microcontroller (MCU). However, resources sharing among cores raises security challenges. Once LITTLE cores (which often receive external inputs) are compromised, the whole system will be affected. Existing hardware-assisted isolation approaches use privilege separation and code instrumentation to enforce memory isolation, which suffer from inefficiencies. This paper presentsuBOX, a lightweight sandbox for multicore embedded systems. The goal ofuBOXis to enforce memory isolation over untrusted software (on LITTLE cores) at the same privileged level. Specifically, it uses the Memory Protection Unit (MPU) to restrict memory access by untrusted software. To protect sandbox policies,uBOXdeprives the write capability of untrusted software towards MPU configurations by replacing its regular store instructions with unprivileged counterparts. Additionally, to protectuBOX's necessary regular store instructions from being abused,uBOX's memory is set to read-only and non-executable when running untrusted software. For the normal operation ofuBOX, we use an overlooked feature of the MPU and develop secure gates that quickly disable and re-enable the MPU, allowinguBOXto execute at a permissive memory view. Our evaluation demonstrates thatuBOXeffectively enforces isolation with average 1.27% runtime overhead, 0.83X Flash overhead, and 36.50X SRAM overhead.

Read the paper · More papers on PaperTik