论文标题

障碍:嵌入式系统的Cheri隔室化

CompartOS: CHERI Compartmentalization for Embedded Systems

论文作者

Almatary, Hesham, Dodson, Michael, Clarke, Jessica, Rugg, Peter, Gomes, Ivan, Podhradsky, Michal, Neumann, Peter G., Moore, Simon W., Watson, Robert N. M.

论文摘要

现有的高端嵌入式系统面临频繁的安全攻击。软件隔间化是一种将攻击效果限制在受损隔间而不是整个系统的技术。不幸的是,现有的最新嵌入式硬件软件解决方案无法很好地为高端嵌入式系统强制执行软件分区化。 MPU不是细粒度的,并且遭受了显着的可伸缩性限制,因为它们只能保护少量和固定数量的存储区域。另一方面,MMU遭受了非确定性和粗粒度的保护。本文将僵局作为一种基于轻质链接的隔离模型,用于高端,复杂,主流嵌入式系统。 Cormantos建立在基于功能的硬件体系结构Cheri上,可满足可扩展性,可用性,兼容性和细粒度的安全目标。 Microbenchs表明,僵局的保护域交叉点比基于MPU的IPC快95%。我们竭尽全力地将僵局模型应用于复杂的现有系统,包括TCP服务器和安全至关重要的汽车演示。 Compartos不仅捕获了13个Freertos-TCP出版的漏洞中的10个,这些漏洞(例如,Uvisor)无法捕获,而且还可以从中恢复。此外,我们的TCP吞吐量评估表明,与基于MPU的隔室化模型(例如ACES)相比,我们的僵局原型的速度比相关的MPU隔室化模型快52%,与未受保护的系统相比,开销为15%。这是FPGA的LUTS开销为10.4%,以支持Cheri的基线RISC-V处理器,而支持MPU为7.6%,而Cheri仅占登记册面积的1.3%,而MPU为2%。

Existing high-end embedded systems face frequent security attacks. Software compartmentalization is one technique to limit the attacks' effects to the compromised compartment and not the entire system. Unfortunately, the existing state-of-the-art embedded hardware-software solutions do not work well to enforce software compartmentalization for high-end embedded systems. MPUs are not fine-grained and suffer from significant scalability limitations as they can only protect a small and fixed number of memory regions. On the other hand, MMUs suffer from non-determinism and coarse-grained protection. This paper introduces CompartOS as a lightweight linkage-based compartmentalization model for high-end, complex, mainstream embedded systems. CompartOS builds on CHERI, a capability-based hardware architecture, to meet scalability, availability, compatibility, and fine-grained security goals. Microbenchmarks show that CompartOS' protection-domain crossing is 95% faster than MPU-based IPC. We applied the CompartOS model, with low effort, to complex existing systems, including TCP servers and a safety-critical automotive demo. CompartOS not only catches 10 out of 13 FreeRTOS-TCP published vulnerabilities that MPU-based protection (e.g., uVisor) cannot catch but can also recover from them. Further, our TCP throughput evaluations show that our CompartOS prototype is 52% faster than relevant MPU-based compartmentalization models (e.g., ACES), with a 15% overhead compared to an unprotected system. This comes at an FPGA's LUTs overhead of 10.4% to support CHERI for an unprotected baseline RISC-V processor, compared to 7.6% to support MPU, while CHERI only incurs 1.3% of the registers area overhead compared to 2% for MPU.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源