Skip to main content
QUICK REVIEW

[论文解读] ScaRR: Scalable Runtime Remote Attestation for Complex Systems

Flavio Toffalini, Eleonora Losiouk|arXiv (Cornell University)|Jul 20, 2018
Security and Verification in Computing参考文献 52被引用 4
一句话总结

ScaRR 是首个针对复杂系统(如基于云的虚拟机)的可扩展运行时远程证明方案,通过一种新颖的基于分段的控制流模型,实现细粒度、中间阶段的控制流完整性验证。其平均性能达到每秒 200 万个控制流事件,显著优于以往方案,同时支持多线程和动态运行时分析。

ABSTRACT

The introduction of remote attestation (RA) schemes has allowed academia and industry to enhance the security of their systems. The commercial products currently available enable only the validation of static properties, such as applications fingerprint, and do not handle runtime properties, such as control-flow correctness. This limitation pushed researchers towards the identification of new approaches, called runtime RA. However, those mainly work on embedded devices, which share very few common features with complex systems, such as virtual machines in a cloud. A naive deployment of runtime RA schemes for embedded devices on complex systems faces scalability problems, such as the representation of complex control-flows or slow verification phase. In this work, we present ScaRR: the first Scalable Runtime Remote attestation schema for complex systems. Thanks to its novel control-flow model, ScaRR enables the deployment of runtime RA on any application regardless of its complexity, by also achieving good performance. We implemented ScaRR and tested it on the benchmark suite SPEC CPU 2017. We show that ScaRR can validate on average 2M control-flow events per second, definitely outperforming existing solutions.

研究动机与目标

  • 为解决现有面向嵌入式设备的远程证明(RA)方案无法充分支持复杂系统(如云虚拟机)的可扩展运行时远程证明方案缺失的问题。
  • 实现在不中断程序执行的前提下,对控制流完整性进行运行时验证,支持动态和中间阶段的验证。
  • 克服以往依赖单体路径哈希或符号执行的 RA 方案在复杂软件中不可行的可扩展性限制。
  • 通过允许验证者以极低延迟分析部分执行报告,实现细粒度的攻击检测。
  • 设计一种与现代系统特性(如多线程)兼容的解决方案,同时支持标准安全机制(如 ASLR 和栈保护)。

提出的方法

  • ScaRR 引入一种新颖的控制流模型,将完整执行路径分割为有意义的子路径,支持部分报告。
  • 证明者在运行时生成并发送中间部分报告,每份报告代表一段控制流执行。
  • 验证者通过静态分析与影子执行相结合的方式,对每个部分报告执行轻量级、可靠验证,确保正确性。
  • 系统通过 LLVM 编译器插桩,在应用源码中插入监控代码,实现运行时控制流事件收集。
  • ScaRR 使用可信锚点确保报告的真实性与完整性,同时依赖标准操作系统级保护机制(如 W^X、ASLR)实现运行时防御。
  • 该架构通过独立追踪和报告每个线程的控制流事件,支持多线程执行。

实验结果

研究问题

  • RQ1能否设计一种可扩展的运行时远程证明方案,有效适用于复杂系统(如基于云的虚拟机)?
  • RQ2如何实现实时控制流完整性验证,而无需依赖单体路径哈希或昂贵的符号执行?
  • RQ3能否在不中断程序执行的前提下实现执行路径的中间阶段验证,从而支持细粒度攻击检测?
  • RQ4在复杂工作负载下,运行时 RA 方案在证明与验证速度方面的性能上限是什么?
  • RQ5所提出的控制流表示模型在安全性与可扩展性方面,与现有方法(如 C-FLAT 或 DIAT)相比如何?

主要发现

  • ScaRR 平均达到每秒 200 万个控制流事件的证明速度,显著优于以往仅能处理数百至数千个事件/秒的方案。
  • 验证阶段效率极高,得益于对部分报告的轻量级检查,实现无性能瓶颈的实时验证。
  • ScaRR 产生的网络流量极少,因为部分报告体积紧凑,且每个周期仅传输部分控制流事件。
  • 基于路径分段的控制流模型可在不引起表示大小指数级增长的前提下,准确表示复杂控制流图。
  • ScaRR 支持多线程应用,并在用户空间完全被攻陷的威胁模型下仍能维持安全保证。
  • 由于采用影子执行进行可靠验证,该方法对 COOP 等攻击(利用多集合模型中执行顺序丢失的漏洞)具有抗性。

更好的研究,从现在开始

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

无需绑定信用卡

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