该论文研究在 CHERI 能力硬件内存安全基础上,如何高效实现进程内细粒度隔离(compartmentalization)。核心问题在于:现有隔离机制(如 Intel MPK)并发可用的保护域数量极其有限(最多 16 个),无法在大规模软件上按库边界做细粒度拆分;而细粒度隔离往往需要大量源码改造,难以推广。作者提出一种基于链接(linkage)的进程内隔离模型,利用 CHERI 的单地址空间与能力机制,对整个 UNIX 用户态进行细粒度划分,在桌面系统上可扩展到 1 万个以上隔离域。模型提供"按键式"(push-button)自动化隔离,沿现有库边界自动划分:在 Chromium 等大型应用上,每进程常规托管 500 个以上隔离域,远超其他机制的并发保护域上限;必要时还可通过自定义策略进一步细分库。作者在数千个 C/C++ 程序上验证兼容性,仅 V8 JavaScript 引擎需要源码级适配(不足 300 行改动,涉及垃圾回收与 JIT 编译)。实现层面,作者在 Armv8-A 与 RISC-V 的 CHERI 扩展版本上,通过编译器工具链和操作系统支持落地该模型。案例研究覆盖隔离域间内存的平滑委派、隔离域感知的调试与可视化,以及对复杂托管语言运行时的可扩展性,体现单地址空间模型在安全与工程上的优势。评估覆盖多种处理器,包括 Arm 超标量 Morello,以及首个商用 CHERI RISC-V 应用核心 Codasip 的 X730(顺序双发射)。总体贡献可归纳为:可扩展的链接级隔离抽象、自动化工具链/OS 支持、跨架构大规模实证评估,以及面向真实复杂工作负载的可行性验证。
💡 推荐理由: CHERI 上的进程内细粒度隔离可把漏洞影响面限制在单个库或组件内,显著提高攻击者横向移动与利用链构造的门槛。对浏览器、操作系统、托管语言运行时的沙箱架构设计具有直接参考价值。
🎯 建议动作: 研究跟进