Skip to main content
QUICK REVIEW

[论文解读] Enclave-Aware Compartmentalization and Secure Sharing with Sirius

Zahra Tarkhani, Anil Madhavapeddy|arXiv (Cornell University)|Sep 3, 2020
Security and Verification in Computing参考文献 70被引用 4
一句话总结

Sirius 是一种新型的分段化框架,通过在可信执行环境(TEE)的正常世界和安全世界中,对内核对象(如线程、文件、套接字)之间的数据流进行控制,实现了对 TEE 辅助应用的强隔离与安全共享。它通过强制实施细粒度访问控制,消除了 TEE 中的语义间隙,减少了攻击面,并仅带来平均 10.8% 的性能开销,同时在现有 TEE 应用中实现了 0.05%–5.6% 的性能提升。

ABSTRACT

Hardware-assisted trusted execution environments (TEEs) are critical building blocks of many modern applications. However, they have a one-way isolation model that introduces a semantic gap between a TEE and its outside world. This lack of information causes an ever-increasing set of attacks on TEE-enabled applications that exploit various insecure interactions with the host OSs, applications, or other enclaves. We introduce Sirius, the first compartmentalization framework that achieves strong isolation and secure sharing in TEE-assisted applications by controlling the dataflows within primary kernel objects (e.g. threads, processes, address spaces, files, sockets, pipes) in both the secure and normal worlds. Sirius replaces ad-hoc interactions in current TEE systems with a principled approach that adds strong inter- and intra-address space isolation and effectively eliminates a wide range of attacks. We evaluate Sirius on ARM platforms and find that it is lightweight ($\approx 15K$ LoC) and only adds $\approx 10.8\%$ overhead to enable TEE support on applications such as httpd, and improves the performance of existing TEE-enabled applications such as the Darknet ML framework and ARM's LibDDSSec by $0.05\%-5.6\%$.

研究动机与目标

  • 解决可信执行环境(TEEs)与其不受信任的主机环境之间的语义间隙,从而防止通过不安全交互引发的广泛攻击。
  • 消除 TEE 应用中常见的漏洞,如不安全的线程使用、内存损坏以及通过操作系统设施进行的权限提升攻击。
  • 为安全世界与正常世界之间提供一种原则性、可组合的安全共享与强隔离机制。
  • 通过在内核对象级别强制实施访问控制,减少对 TEE 接口的临时性、易出错的安全加固的依赖。
  • 在对性能影响最小且广泛兼容各类 TEE 平台的前提下,支持安全的多线程 TEE 应用。

提出的方法

  • Sirius 引入了一种模块间控制(Inter-Module Control, IMC)机制,用于在正常世界和安全世界中对线程、内存区域、文件和套接字等内核对象强制实施访问控制策略。
  • 它扩展了内核的 mm_struct 和 task_struct,加入 IMC 元数据,包括操作位图(读取、写入、执行、分配)以及每类对象的状态追踪。
  • 该框架通过在每次系统调用或特权切换时检查 IMC 权限,强制实施数据流控制,确保仅允许授权操作。
  • 它利用现有的 TEE 硬件隔离机制(如 ARM TrustZone、Intel SGX),同时在系统资源上增加强制访问控制层。
  • Sirius 通过基于策略的共享机制,支持安全的跨信封和跨进程通信,实现共享内存、RPC 和 IPC 的安全共享。
  • 该系统设计轻量化,仅约 15K 行代码,且可移植至 ARM 和 x86-64 等各类 TEE 平台。

实验结果

研究问题

  • RQ1如何通过消除 TEE 与其主机环境之间的语义间隙,防止因不安全交互引发的攻击?
  • RQ2哪些机制能够实现在安全世界与正常世界中对内核对象的强隔离与细粒度安全共享?
  • RQ3一种原则性、可组合的访问控制框架是否能在不带来显著性能开销的前提下,减少 TEE 应用的攻击面?
  • RQ4基于 IMC 的访问控制模型在缓解真实世界中的 TEE 漏洞(如 TOCTTOU、ROP 和 BOOMERANG 攻击)方面效果如何?
  • RQ5Sirius 在多大程度上可被集成到现有 TEE 架构中,且仅需极少修改?

主要发现

  • Sirius 通过在内核对象(如线程、文件和共享内存)上强制实施强制访问控制,显著减少了 TEE 应用的攻击面。
  • 在为 httpd 等应用启用 TEE 支持时,该框架平均仅引入约 10.8% 的性能开销,对系统级性能影响极小。
  • 现有 TEE 应用(如 Darknet 和 LibDDSSec)因攻击面减少和数据流控制优化,性能提升了 0.05% 至 5.6%。
  • 该系统轻量化,仅约 15K 行代码,且可轻松扩展至其他 TEE 平台(如 Intel SGX 和 RISC-V Keystone)。
  • Sirius 通过在内核对象级别强制实施严格隔离与访问控制,有效缓解了已知攻击类别,包括 TOCTTOU、ROP、BOOMERANG 和 HPE 攻击。
  • 该框架与现代 CPU 特性(如内存标记和硬件能力,如 CHERI)兼容,支持未来安全增强功能的扩展。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。