Skip to main content
QUICK REVIEW

[论文解读] Reins to the Cloud: Compromising Cloud Systems via the Data Plane

Kashyap Thimmaraju, Bhargava Shastry|arXiv (Cornell University)|Oct 27, 2016
Security and Verification in Computing参考文献 39被引用 5
一句话总结

本文表明,云环境中虚拟交换机(特别是 Open vSwitch,OvS)由于存在错误的安全假设和协议解析器缺陷,其数据平面存在远程代码执行的漏洞。通过仅模糊测试 OvS 代码库的 2%,作者在不到 100 秒内、使用极少资源,便完全攻破了包括 OpenStack 在内的云系统,揭示了即使能力有限的攻击者,也能通过数据平面完全颠覆整个云基础设施。

ABSTRACT

Virtual switches have become popular among cloud operating systems to interconnect virtual machines in a more flexible manner. However, this paper demonstrates that virtual switches introduce new attack surfaces in cloud setups, whose effects can be disastrous. Our analysis shows that these vulnerabilities are caused by: (1) inappropriate security assumptions (privileged virtual switch execution in kernel and user space), (2) the logical centralization of such networks (e.g., OpenStack or SDN), (3) the presence of bi-directional communication channels between data plane systems and the centralized controller, and (4) non-standard protocol parsers. Our work highlights the need to accommodate the data plane(s) in our threat models. In particular, it forces us to revisit today's assumption that the data plane can only be compromised by a sophisticated attacker: we show that compromising the data plane of modern computer networks can actually be performed by a very simple attacker with limited resources only and at low cost (i.e., at the cost of renting a virtual machine in the Cloud). As a case study, we fuzzed only 2\% of the code-base of a production quality virtual switch's packet processor (namely OvS), identifying serious vulnerabilities leading to unauthenticated remote code execution. In particular, we present the "rein worm" which allows us to fully compromise test-setups in less than 100 seconds. We also evaluate the performance overhead of existing mitigations such as ASLR, PIEs, and unconditional stack canaries on OvS. We find that while applying these countermeasures in kernel-space incurs a significant overhead, in user-space the performance overhead is negligible.

研究动机与目标

  • 调查虚拟交换机在云和 SDN 环境中引入的安全风险,特别是其数据平面的安全风险。
  • 挑战当前普遍认为只有高级攻击者才能攻破数据平面的假设。
  • 评估在广泛使用的虚拟交换机(如 Open vSwitch,OvS)中利用漏洞的可行性。
  • 评估常见软件加固技术(如 ASLR、PIE、栈溢出保护)在用户空间与内核空间中的性能开销。
  • 倡导重新思考威胁模型,将数据平面作为云安全中的一等攻击面。

提出的方法

  • 作者针对四个关键因素进行威胁模型分析:权限隔离不当、SDN 中的逻辑集中化、控制器与交换机之间的双向通信,以及非标准协议解析器。
  • 对 Open vSwitch(OvS)的数据包处理组件应用黑盒模糊测试技术,仅针对其代码库的 2% 来识别漏洞。
  • 开发了一种自定义利用工具,命名为 'rein worm',以实现在 OvS 上的未认证远程代码执行,从而实现对云测试环境的完全控制。
  • 在用户空间和内核空间环境中,对 ASLR、PIE 和无条件栈溢出保护等安全对策的性能影响进行了实证评估。
  • 通过真实世界的云部署(OpenStack)验证利用的有效性,并评估其对系统可用性和隔离性的影响。

实验结果

研究问题

  • RQ1低资源攻击者是否可以通过仅针对虚拟交换机的数据平面,来攻破云系统?
  • RQ2虚拟交换机(如 Open vSwitch)在架构和实现层面存在哪些关键缺陷,导致此类攻击成为可能?
  • RQ3常见软件加固技术在最小化性能开销的同时,提升虚拟交换机数据平面安全性方面有多有效?
  • RQ4SDN 的逻辑集中化和双向控制器通信在多大程度上加剧了数据平面的攻击面?
  • RQ5对生产级虚拟交换机的极小部分代码进行模糊测试,是否足以导致整个系统的完全沦陷?

主要发现

  • 仅需简单且低资源的攻击者,可在 100 秒内通过利用 OvS 数据平面中的漏洞,完全攻破整个 OpenStack 云部署。
  • 仅对 OvS 代码库的 2% 进行模糊测试,便发现了导致未认证远程代码执行的关键漏洞,证明了数据平面组件的极高可利用性。
  • 'rein worm' 利用工具通过利用协议解析器中的缓冲区溢出漏洞,成功实现对整个系统的完全控制,绕过了隔离机制。
  • 在用户空间中应用 ASLR、PIE 和栈溢出保护等软件加固技术,性能开销可忽略不计,因此适用于生产环境。
  • 相比之下,在内核空间中应用相同对策会导致显著的性能下降,凸显了部署策略需谨慎权衡。
  • 本研究揭示,当前威胁模型对数据平面的重视严重不足,而虚拟交换机在现代云架构中是关键且保护不足的攻击面。

更好的研究,从现在开始

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

无需绑定信用卡

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