#cheri

共收录 6 条相关安全情报。

← 返回所有主题
推荐 3.6
Conf: 50%
👥 作者: Dapeng Gao, John Baldwin, Jessica Clarke, Nicholas C. Connolly, Brooks Davis, Franz A. Fuchs, Alfredo Mazzinghi, Daniel Moghimi, Peter Rugg, Domagoj Stolfa, Konrad Witaszczyk, Simon W. Moore, Robert N. M. Watson

该论文研究在 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 上的进程内细粒度隔离可把漏洞影响面限制在单个库或组件内,显著提高攻击者横向移动与利用链构造的门槛。对浏览器、操作系统、托管语言运行时的沙箱架构设计具有直接参考价值。

🎯 建议动作: 研究跟进

排序因子: 来自 arXiv 其他板块 (+2) | Community 数据源 (+1) | LLM 评分加成 (+0.6)
👥 作者: Shixin Song, Davide Davoli, Elias Storme, Marton Bognar, Dominique Devriese, Frank Piessens, Tamara Rezk

基于能力(capability)的架构如 CHERI 为软件组件的架构级隔离提供了强支持:能力指针同时携带边界与权限,使硬件能够阻止越权访问。然而攻击者还可利用微架构侧信道窃取机密,因此敏感代码通常需以常量时间(constant-time)方式编写,即消除依赖机密数据的分支与访存模式。现代处理器普遍依赖推测执行,而推测执行可能破坏常量时间保证,使被隔离的机密通过瞬态执行被泄漏,即 Spectre 类问题。本文首先指出:为 CHERI 提供安全推测并非易事,已有方案无法保持机密性保证。为此作者构建了一个形式化框架,能够联合推理能力安全(capability safety)、推测执行与信息流安全,并用该框架展示潜在泄漏的存在。随后论文提出 SCHERI——一种在该框架内设计的新型处理器方案,并形式化证明其对常量时间策略提供端到端的安全推测保证。该工作为构建未来基于能力、且对常量时间程序具备 Spectre 抵御能力的处理器提供了形式化基础与实践指导,适合硬件安全、处理器微架构与形式化验证方向的研究者与安全工程师阅读。

💡 推荐理由: CHERI 等能力架构被视为隔离不可信组件的重要硬件基础,但若推测执行破坏常量时间保证,架构隔离仍会被瞬态泄漏绕过。本文说明已有安全推测方案对 CHERI 不成立,并给出可证明安全的设计与形式化方法,对硬件安全与机密计算方向的安全工程师具有直接参考价值。

🎯 建议动作: 研究跟进;建议将该形式化框架与安全推测评估思路纳入对 CHERI 及能力架构处理器的内部评估清单。

排序因子: 来自 arXiv 其他板块 (+2) | Community 数据源 (+1) | LLM 评分加成 (+0.5)
👥 作者: Yuecheng Wang, Jonathan Woodruff, Simon W. Moore

本文提出 CHERI-D Reincarnate(简称 Reinc),一种面向 CHERI 能力架构的时序内存安全(temporal memory safety)硬件扩展,目标是以可扩展、低开销的方式缓解释放后使用(use-after-free, UAF)问题。背景上,此前工作 CHERI-D 为每个分配对象关联一个有限位宽的 generation ID,并存放在固定位置;当该 ID 被耗尽(回绕)时,为避免不同生命周期对象共用同一 ID 而产生误判,必须把该对象所在的整个内存槽位隔离(quarantine),待清扫(sweep)后才能复用。这带来两个代价:一是清扫频率高,二是高分配率场景下隔离区会占用大量内存。 Reinc 的核心思想是“分配重生”(allocation reincarnation):当某个槽位当前 ID 耗尽时,不再隔离内存,而是为该槽位动态分配一个新的 ID;被耗尽的 ID 本身进入隔离并延后回收,而底层物理内存可立即重新分配给新对象。也就是说,隔离的对象由“内存”变为“ID”,使常见情况下内存可连续复用,从而显著降低清扫频率与隔离区内存开销。Reinc 在保持完全去中心化 ID 组织的同时引入一致性 ID 缓存(coherent ID caching),时序元数据仍与其所保护的内存同址存放,既保留局部性又避免集中式元数据结构。针对多核执行,Reinc 通过轻量级反向映射(reverse-map)与过滤机制,把物理一致性事件与按虚拟地址索引的 ObjID buffer 关联起来,以跨核维护一致的 ID 视图。 作者以软硬件协同设计方式实现了 Reinc,覆盖 CHERI-Toooba(超标量 FPGA 软核)、QEMU、LLVM/Clang 与 CheriBSD 全栈,并进行了评测。结果显示,在所选负载上 Reinc 大幅降低了内存清扫频率与隔离内存占用,同时仅引入较低的性能开销与硬件开销。该工作对体系结构、硬件安全、内存安全及操作系统方向的研究者具有参考价值。

💡 推荐理由: UAF 是内存安全漏洞的主要类型之一,CHERI 是当前主流的能力式防御路线,但既有 generation ID 方案在 ID 耗尽时必须隔离内存,代价高昂。Reinc 把被隔离对象从内存换成 ID,为 CHERI 平台提供更低开销的时序安全实现路径,且覆盖硬件、编译器和 OS 全栈,落地参考价值较高。

🎯 建议动作: 研究跟进

排序因子: 来自 arXiv 其他板块 (+2) | Community 数据源 (+1) | LLM 评分加成 (+0.5)
👥 作者: Merve Gülmez, Adam Caulfield, Hakan Englund, N. Asokan, Thomas Nyman

本文提出 PRISM,一种基于 CHERI 的轻量级可信执行环境(TEE)架构,旨在解决现有 CHERI TEE 方案的多个关键缺陷。CHERI 能力(capabilities)可以在对象级别提供空间内存安全,但先前基于 CHERI 构建 TEE 的尝试面临能力吊销(capability revocation)开销大、过度依赖宿主操作系统(OS)进行溯源跟踪和物理内存保护、域切换成本高以及缺乏远程证明支持等问题。PRISM 引入“棱镜能力”(prismatic capabilities),将 enclave 的“色调”(hue)标识绑定到物理内存访问控制上,从而实现 O(1) 复杂度的所有权建立,无需扫描内存即可完成能力吊销或所有权转移。同时,PRISM 支持高效的域切换,能够原子地激活和停用棱镜能力。此外,PRISM 还为其 enclave 提供了远程证明机制。实验表明,在 PRISM 中运行用户态 enclave 的开销适中(不超过 15%),相比 Intel SGX 在相同工作负载下表现有显著改善。该研究的核心贡献在于:利用棱镜能力将内存隔离与安全标识符绑定,简化了 TEE 的构建,降低了对宿主 OS 的信任依赖,并提升了性能。适合对 TEE 设计、CHERI 能力安全、轻量级内存隔离感兴趣的安全研究人员和系统开发者阅读。

💡 推荐理由: PRISM 为 TEE 设计提供了新的轻量级方案,降低了 CHERI 能力的吊销与域切换开销,并支持远程证明。对依赖可信执行环境的安全架构师而言,这是提升隔离性能与减少对 OS 信任的重要进展。

🎯 建议动作: 研究跟进

排序因子: 来自 arXiv 其他板块 (+2) | Community 数据源 (+1) | LLM 评分加成 (+0.5)
👥 作者: Merve Gülmez, Nils Jordan, Jialun Zhang, Hossam ElAtali, Gang Tan, N. Asokan, Thomas Nyman

CHERI 架构通过硬件强制的能力机机制提供空间内存安全,但时间内存安全(即释放后使用类漏洞)尚未被完整覆盖。此前工作主要针对堆上的 use-after-free,而栈上的 use-after-return 一直缺乏系统性的硬件/软件协同防御。已有的编译器分析只能可靠捕获作为函数返回值逃逸的栈引用,动态插桩工具则因性能开销过大难以在生产环境部署。针对这一空白,本文提出 FRESCO 机制,其核心原则是:栈能力(stack capability)的生存期不得超过创建它的栈帧。FRESCO 为每次函数调用生成独立的能力"颜色"(provenance identifier),任何从该栈指针派生的能力都会继承该生命周期,并在函数退出时由硬件立即失效——无论该引用以何种方式、逃逸到何处。由于栈帧的回收频率远高于堆分配,FRESCO 设计了两种机制来管理颜色资源:1)Color Saver,一种基于静态能力分析的逃逸分析,仅对确实需要着色的函数限定染色范围,其核心算法在 Rocq 证明助手中完成机械化验证;2)能力-颜色分段,将内存划分为不连续的段,各段拥有独立的颜色命名空间,从而让栈时间安全和堆时间安全在同一系统上共存。FRESCO 是首个为 CHERI 应用处理器提供完整、可扩展时间内存安全的软硬件协同设计。实现基于 CHERI-RISC-V QEMU 全系统模拟器和乱序执行的 CHERI-Toooba FPGA 软核,软件栈采用 CHERI 版 Clang/LLVM 编译器和 CheriBSD 操作系统。实验表明,FRESCO 在 NIST Juliet 测试套件和 CVE 样本上系统性地阻止了 use-after-return、use-after-free 和 double-free,SPEC CPU 性能开销约 4%,SQLite 和 PostgreSQL 开销为 10-14%。本文适合从事内存安全、硬件安全、编译优化及形式化验证的研究人员阅读。

💡 推荐理由: 这是首次统一解决栈与堆时间内存安全的软硬件协同设计,为 CHERI 架构走向生产提供了关键拼图,也为其他安全架构(如 ARM MTE)提供借鉴。

🎯 建议动作: 研究跟进

排序因子: 来自 arXiv 其他板块 (+2) | Community 数据源 (+1) | LLM 评分加成 (+0.7)
推荐 3.5
Conf: 50%
👥 作者: Yuecheng Wang, Jonathan Woodruff, Alfredo Mazzinghi, Peter Rugg, Alexandre Joannou, Samuel W. Stark, Robert N. M. Watson, Simon W. Moore

本文提出 PoisonCap,一种为 CHERI(Capability Hardware Enhanced RISC Instructions)系统设计的层次化时间安全机制。CHERI 是一种领先的硬件/软件系统,通过 capabilities(能力)提供原生空间安全以及时间安全的基础。当前最先进的 CHERI 时间安全解决方案 Cornucopia Reloaded 只能提供 use-after-reallocation 安全,而非更严格的 use-after-free 安全,且无法强制初始化安全。PoisonCap 引入了一种新的“毒化”(poison)能力格式,能够强制严格的 use-after-free 和初始化安全,并通过向微架构传达内存状态来有效管理隔离内存的缓存。该方法利用能力界限优雅地委派内存毒化权限,允许嵌套分配器在不干扰上游分配器的情况下对其消费者实施安全。PoisonCap 可以替代 Cornucopia 的影子位图,并在重分配时自动清零内存,或可选地在读取前写入时触发陷阱以强制初始化安全。实验表明,与在重分配前清零的 Cornucopia 基线相比,PoisonCap 在强化 CHERI 时间安全的同时没有引入根本性的性能开销。该工作适合硬件安全、系统安全、编程语言安全领域的研究者和工程师关注,特别是对 CHERI 生态或内存安全机制感兴趣的人群。

💡 推荐理由: PoisonCap 在保持性能的前提下,为 CHERI 系统带来了更严格的时间安全保证(use-after-free 和初始化安全),弥补了现有方案的不足,对推动硬件辅助内存安全落地有重要意义。

🎯 建议动作: 研究跟进

排序因子: 来自 arXiv 其他板块 (+2) | Community 数据源 (+1) | LLM 评分加成 (+0.5)