CHERIoT: Complete Memory Safety for Embedded Devices

Saar Amar,David Chisnall, Tony Chen, Nathaniel Wesley Filardo,Ben Laurie, Kunyan Liu,Robert Norton,Simon W. Moore, Yucong Tao,Robert N. M. Watson,Hongyan Xia

56TH IEEE/ACM INTERNATIONAL SYMPOSIUM ON MICROARCHITECTURE, MICRO 2023(2023)

引用 0|浏览7
暂无评分
摘要
The ubiquity of embedded devices is apparent. The desire for increased functionality and connectivity drives ever larger software stacks, with components from multiple vendors and entities. These stacks should be replete with isolation and memory safety technologies, but existing solutions impinge upon development, unit cost, power, scalability, and/or real-time constraints, limiting their adoption and production-grade deployments. As memory safety vulnerabilities mount, the situation is clearly not tenable and a new approach is needed. To slake this need, we present a novel adaptation of the CHERI capability architecture, co-designed with a green-field, securitycentric RTOS. It is scaled for embedded systems, is capable of fine-grained software compartmentalization, and provides affordances for full inter-compartment memory safety. We highlight central design decisions and offloads and summarize how our prototype RTOS uses these to enable memory-safe, compartmentalized applications. Unlike many state-of-the-art schemes, our solution deterministically (not probabilistically) eliminates memory safety vulnerabilities while maintaining source-level compatibility. We characterize the power, performance, and area microarchitectural impacts, run microbenchmarks of key facilities, and exhibit the practicality of an end-to-end IoT application. The implementation shows that full memory safety for compartmentalized embedded systems is achievable without violating resource constraints or realtime guarantees, and that hardware assists need not be expensive, intrusive, or power-hungry.
更多
查看译文
关键词
Memory Safety,Microarchitecture,Software Stack,Real-Time System,Spatial Memory,Global Data,Instruction Set Architecture,Separate Compartments,Hardware Accelerators,Embedded System,Written Back,Protective Memory,Mudline,Memory Allocation,Race Conditions,Code Size,Mutual Distrust,Attack Surface,Virtual Memory,Main Pipeline,JavaScript
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要