中文

Mon CH\'ERI:基于条件能力的未初始化内存访问缓解方案

密码学与安全 2025-10-14 v3

摘要

类 C 和 C++ 等语言的内存安全漏洞中最多有 10% 由于未初始化变量导致。本工作针对未初始化内存问题的广泛存在以及缺乏足够软件缓解措施的现状,提出在硬件中实现架构层面的保护。基于能力的寻址方式,如伦敦大学剑桥的 CHERI,能够在架构层面缓解许多内存缺陷,包括空间和时间安全违规。然而,CHERI 并未处理未初始化变量导致的未定义行为。我们将 CHERI 能力模型扩展以包含"条件能力" (conditional capabilities),通过基于 prior 操作的内存访问策略来实现内存访问控制。这使得可以强制执行满足内存安全目标的策略,例如"在至少一次写入后禁止读取内存" (Write-before-Read)。我们提出了该架构扩展、编译器支持方案,以及在 QEMU 完整系统模拟器和修改后的 FPGA 基于 CHERI-RISCV 软核上进行的详细评估。我们的评估表明,条件能力是实用的,检测准确率高,同时仅增加约 3.5% 的开销,这与基础 CHERI 能力的成本相当。

关键词

引用

@article{arxiv.2407.08663,
  title  = {Mon CH\'ERI: Mitigating Uninitialized Memory Access with Conditional Capabilities},
  author = {Merve Gülmez and Håkan Englund and Jan Tobias Mühlberg and Thomas Nyman},
  journal= {arXiv preprint arXiv:2407.08663},
  year   = {2025}
}

备注

Author's version of manuscript in 46th IEEE Symposium on Security and Privacy (IEEE S&P '25)