Distributed data analytics platforms (i.e., Apache Spark, Hadoop) enable cost-effective storage and processing by distributing data and computation to multiple nodes. Since these frameworks' design was primarily motivated by performance and usability, most were assumed to operate in non-malicious settings. Hence, they allow users to execute arbitrary code to analyze the data. To make the situation worse, they do not support fine-grained access control inherently or offer any plugin mechanism to enable it - which makes them risky to be used in multi-tier organizational settings. There have been attempts to build "add-on" solutions to enable fine-grained access control for distributed data analytics platforms. In this paper, we show that by knowing the nature of the solution, an attacker can evade the access control by maliciously using the platform-provided APIs. Specifically, we crafted several attack vectors to evade such solutions. Next, we systematically analyze the threats and potentially risky APIs and propose a two-layered (i.e., proactive and reactive) defense to protect against those attacks. Our proactive security layer utilizes state-of-the-art program analysis to detect potentially malicious user code. The reactive security layer consists of binary integrity checking, instrumentation-based runtime checks, and sandboxed execution. Finally, Using this solution, we provide a secure implementation of a new framework-agnostic fine-grained attribute-based access control framework named SecureDL for Apache Spark. To the best of our knowledge, this is the first work that provides secure fine-grained attribute-based access control distributed data analytics platforms that allow arbitrary code execution. Performance evaluation showed that the overhead due to added security is low.
翻译:分布式数据分析平台( 即 Apache Spark, Hadoop) 能够通过向多个节点分发数据和计算数据,实现成本效益高的存储和处理。 由于这些框架的设计主要受性能和可用性驱动, 多数假设是在非恶意环境下操作。 因此, 它们允许用户执行任意代码来分析数据。 使情况恶化, 它们不支持微小的存取控制, 或者提供任何插件机制, 使其能够在多层组织环境中使用。 已经尝试建立“ 附加式” 解决方案, 以便能够对分布式数据分析平台进行精细的存取控制。 在本文中, 我们通过了解解决方案的性质, 攻击者可以逃避访问控制。 具体地说, 我们设计了几个攻击矢量的矢量控制工具, 从而可以系统分析威胁和潜在风险的 API, 并提议一个双层( 即主动和反应式) 防御这些攻击。 我们的运行式安全性数据平台 运行系统化的Sloverial- train 系统化操作系统化系统化系统化的系统化系统化的系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化的系统化的系统化系统化系统化系统化系统化系统化系统化的系统化系统化系统化系统化系统化的系统化的系统化的系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化的系统化的系统化系统化系统化的系统化系统化的系统化的系统化的系统化系统化系统化系统化系统化系统化的系统化的系统化系统化系统化系统化的系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化系统化