The toolbox and it's components/tools listed below represent the major developments and outcome within the entire SUPERCLOUD project period. As shown, the main developments are linked to WP1, 2, 3 and 4. The developed components and tools below are explained in detail and some of them are available for download as well (direct download link or components access on request). However, due to confidentiality not all components/tools could be listed here.
Expand all | Collapse all
By using MotOrBAC you will be able to express dynamic security policies. Actually in an OrBAC policy, each rule is associated with a context which specifies its activation condition. For example a rule may be activated depending on the current time or a subject's position. The OrBAC API provides some facilities to interface the context evaluation module with the outside world so you can easily interface a policy with your information system. Several languages can be used to specify the contextual conditions. Among them are Java and prolog. Java expressions are compiled at runtime using the javassist library, thus no performance penalty is introduced.
Two versions of MotOrBAC are available. The first version is open source and distributed under the GPL licence. The second version is much more recent and functionnal, is currently actively developped and is partially open source (distributed under a mozilla licence). Unlike the first version, MotOrBAC v2 is entirely written in pure java. It uses the OrBAC API, which as been developped to easily integrate an OrBAC policy interpreter into existing software or into software under developpement. This API is not open source.
The security orchestrator coordinates the configuration, deployment and management of security services across planes. This is achieved through the interpretation and exploitation of Security Service Level Agreements. The Security Orchestrator is of mixed nature, since the component is also linked to WP2.
The access to the Security Orchestrator component is provided on request.
Orbits (ORchestration for Beyond InTer-cloud Security) is a Infrastructure-as-Code (IaC) overlay for inter-cloud orchestration and virtualization providing simultaneously flexible application provisioning across multiple providers with a homogeneous service abstraction enforced at IaaS level. This approach enables to instantiate distributed user-centric clouds. IaC-based deployment and management of a generic IaaS multi-cloud requires the ability to flexibly inject or remove non-functional services (e.g., for security or reliability), which is possible adopting an aspect-oriented approach.Mantus is a IaC-based multi-cloud builder following Orbits principles. Mantus features an aspect-oriented Domain-Specifc Language called TOSCA Manipulation Language (TML) and a corresponding aspect weaver to inject flexibly non-functional services in TOSCA infrastructure templates.
The paper below presents the Mantus IaC-based multi-cloud builder and its features for virtualization and orchestration. It notably enables instantiation and deployment of a distributed multi-cloud, and selective weaving of security services in different parts of the architecture to build U-Clouds spanning multiple providers.
Download detailed tool description (.pdf, 653 KB) from Zenodo: [DOWNLOAD]
Introducing modularity at hypervisor-level overcomes flexibility and large TCB limitations of monolithic virtualization platforms. On-demand security thus becomes deeply rooted in the infrastructure by adding user-selected services. This is precisely the aim of the micro-hypervisor component of the SUPERCLOUD computing framework. This component enables to instantiate U-Clouds in a private cloud, with cross-layer system control over for U-Cloud security, deep in the virtualization infrastructure. This modular hypervisor extends the NOVA/Genode micro-hypervisor to provide basic U-Cloud features for a private cloud such as instantiating a U-Cloud, deploying a user-specific configuration, and dynamically modifying this configuration without interrupting execution of the L2 VMs.
U-Clouds should not only run on top of virtualization infrastructures under full provider control (e.g., public clouds running general-purpose hypervisors), but also on infrastructures where users can share control with the provider. This is typically the case of private clouds adopting the SUPERCLOUD virtualization architecture, combining nested virtualization and micro-hypervisor designs, presented briefly in the paper below, with more details in Deliverables D2.1, D2.2, and D2.3.
Download detailed tool description (.pdf, 238 KB) from Zenodo: [DOWNLOAD]
Intel SGX Execution Environment
The goal of this framework is to provide an execution environment which allows applications to run either in a globally trusted environment, like a private cloud, or in an trusted execution environment, like an Intel SGX enclave. The application can run unmodified in both scenarios, while still facilitating the functionalities of the different environments. To achieve this goal the execution environment is abstracted through the use of an interpreter. In particular, a Python interpreter is modified such that it can execute arbitrary Python scripts inside an SGX enclave. This way the scripts can be run in both environments, a private cloud and an SGX enclave.
Further materials/documentations are provided with the SUPERCLOUD Deliverable D2.3: SUPERCLOUD Deliverable D2.3. The access to the Intel SGX EE component is provided on request.
The security monitoring component performs automatic detection and mitigation of threats to the computing infrastructure, enabling self-protection of U-Cloud computing resources. This Python framework may also be composed with other SUPERCLOUD security services to enable rich security threat response. Its different components may then flexibly embedded in the virtualization infrastructure at deployment time. It covers both: (1) cross-layer defense to orchestrate layer-level security monitoring in user- or provider-controlled parts of the virtualized infrastructure, also integrating monitoring information and countermeasures from the cloud provider; and (2) cross-provider defense to composes different distributed monitoring and reaction infrastructure elements to reach an overall vision of the distributed security infrastructure status and react consistently to threats.
There is no access provided to the Monitoring component.
The Authorization component serves within the Security Self-Management Infrastructure as a Policy Decision Point (PDP). The PDP ensures both Access and Usage Control function within the SUPERCLOUD framework. The service encapsulates the OrBAC API and makes it accessible using standard HTTP GET requests. The OrBAC Application Programing Interface is a Java library which has been developed to programmatically manipulate OrBAC policies. It implements almost all the OrBAC concepts developed in the research papers. The service is Open Source but the OrBAC API is not. The API is provided as Freeware.
The access to the Authorization component is provided on request.
This component automates part of the Security Service Level Agreement Lifecycle. The component takes as input the requirements of the clients and the constraints (offers) of the providers and tries to derive a contracts that convers both Quality of Service (QoS) and Quality of Protection (QoP) Service Level Objectives.
There is no access provided to the SLA Management component.
The module is able to negotiate SSLA over multiple clouds in responses to business and/or security requirements.
The access to the Software Trust component is provided on request.
Data Anonymization Tool
Data anonymization techniques open the possibility of releasing personal and sensitive data, while preserving individual's privacy. The Data Anonymization Tool in this context is among others based on k-anonymity, whereby the focus is put on the irreversibility of the released data. The tool aims to calculate the best solution for the given data in terms of cost-efficiency. This is done by means of so-called cost metric calculation as well as the Optimal Lattice Anonymization (OLA) algorithm. A detailed explanation of the OLA algorithm as well as of all including components of the tool can be found in the Deliverable D3.2 of SUPERCLOUD released in the second project period.
The video below demonstrates shortly the functionality of the Data Anonymization Tool on the basis of medical data samples. The main focus lies on the handling of the tool as well as the explanation of the required steps in order to anonymize plain data.
SUPERCLOUD-ABE is a Scala cryptographic library which implements an Attribute Based Encryption (ABE) scheme, in which the encryption and decryption phases are based on some user's attributes. More precisely, in such a system, each end user possesses some characteristic attributes. When uploading a new data, the depositary chooses an access control policy, based on such attributes, and encrypts the data according to it. Then, only users having the set of attributes verifying the defined access control policy will be able to decrypt and read the stored data. The library permits a fine-grained access control based on any disjunctive normal form.
Further materials/documentations as well as component access are available on request due to confidentiality.
Sirius is the first multi-cloud network virtualization platform. Contrary to existing network hypervisors, Sirius enriches the network substrate with resources from both public clouds and private data centers, and enriches virtual networks with security and dependability.
Further materials/documentations are available on Zenodo: https://zenodo.org/record/582884
Dynamic Security Policy Management
This component is a sub-module of the Network security self management. It permits to manage and deploy network security policies automatically. It will interact with the security monitoring tool that will provide alerts and statistics about the SDN networks.
There is no access provided to the Dynamic Security Policy Management component.