[论文解读] Beyond Full Abstraction: Formalizing the Security Guarantees of Low-Level Compartmentalization
本文引入了安全分段化(secure compartmentalization),这是一种形式化的安全属性,用于刻画在最小权限和明确定义接口的系统中,底层分段化机制所提供的安全保障。通过扩展完全抽象编译以解决三个关键局限性,作者证明了在一种不安全的命令式语言及其编译器生成的分段化抽象机之间,安全分段化属性的有效性,采用的是既有的证明技术。
Compartmentalization is widely regarded as good security-engineering practice: if we break up a large software system into mutually distrustful components that run with minimal privileges, restricting their interactions to conform to well-defined interfaces, we can limit the damage caused by lowlevel attacks such as control-flow hijacking. But the formal guarantees provided by such low-level compartmentalization have seen surprisingly little investigation. We propose a new property, secure compartmentalization, that formally characterizes the security guarantees provided by lowlevel compartmentalization and clarifies its attacker model. We rationally reconstruct the secure compartmentalization property starting from the well-established notion of fully abstract compilation, by identifying and lifting three important limitations that make standard full abstraction unsuitable for compartmentalization. The connection to full abstraction allows us to prove secure compartmentalization for language implementations by adapting established proof techniques; we illustrate this for a simple unsafe imperative language with procedures and a compiler from this language to a compartmentalized abstract machine.
研究动机与目标
- 正式刻画在最小权限和组件隔离的系统中,底层分段化所提供的安全保障。
- 识别并解决标准完全抽象在直接应用于分段化时存在的三个关键局限性。
- 基于完全抽象的成熟原则,理性重构一种新的安全属性——安全分段化。
- 展示在真实低级语言及其编译栈中,使用既有的证明技术证明安全分段化属性的可行性。
- 澄清分段化所依赖的攻击者模型,尤其在控制流劫持和权限提升攻击的背景下。
提出的方法
- 通过识别并提升标准完全抽象的三个局限性,对安全分段化进行理性重构:(1) 缺乏对特权分离的支持,(2) 缺少明确的攻击者模型,(3) 对低层级侧信道交互处理不足。
- 将既有的完全抽象编译证明技术适配到一种包含过程的简单不安全命令式语言中,以证明安全分段化属性。
- 设计一种强制执行组件间隔离与最小权限的分段化抽象机器。
- 形式化从高层命令式语言到该抽象机器的编译过程,确保安全分段化属性在编译过程中得以保留。
- 使用逻辑关系和步长索引逻辑关系,对编译各层之间的安全保证进行建模与验证。
- 整合一个精确的攻击者模型,以捕捉诸如控制流劫持和侧信道泄露等低层级威胁。
实验结果
研究问题
- RQ1如何扩展完全抽象的概念,以正式捕捉底层分段化的安全保证?
- RQ2当应用于具有特权分离组件的系统时,标准完全抽象存在哪些关键局限性?
- RQ3能否在真实低级语言及其编译到分段化机器的过程中,正式证明安全分段化属性?
- RQ4适用于捕捉分段化系统中如控制流劫持等现实威胁的攻击者模型应如何定义?
- RQ5如何将既有的完全抽象证明技术适配以验证安全分段化属性?
主要发现
- 本文成功将安全分段化定义为一种正式属性,准确捕捉了底层分段化机制的预期安全保证。
- 标准完全抽象的三个关键局限性——缺乏特权建模、攻击者建模薄弱、对侧信道交互处理不足——被正式识别并加以解决。
- 安全分段化属性在一种包含过程的简单不安全命令式语言及其编译到分段化抽象机器的过程中被证明是可靠的。
- 证明技术利用了完全抽象的成熟方法,表明安全分段化可被现有验证框架所支持。
- 攻击者模型被明确化,包含控制流劫持等低层级威胁,确保该属性能反映真实世界威胁场景。
- 结果表明,安全分段化为在实践中推理分段化系统的安全性提供了正式基础。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。