"CloudSafetyNet: End-to-end application security in the cloud" will explore the use of Information Flow Control to achieve greater security in cloud computing.
EPSRC grant EP/K011510/1: January 2013 - December 2015
with Imperial College EP/K008129/1
Cloud computing promises to revolutionise how companies, research institutions and government organisations, including the National Health Service (NHS), offer applications and services to users in the digital economy. By consolidating many services as part of a shared ICT infrastructure operated by cloud providers, cloud computing can reduce management costs, shorten the deployment cycle of new services and improve energy efficiency. For example, the UK government's G-Cloud initiative aims to create a cloud ecosystem that will enable government organisations to deploy new applications rapidly, and to share and reuse existing services. Citizens will benefit from increased access to services, while public-sector ICT costs will be reduced.
Security considerations, however, are a major issue holding back the widespread adoption of cloud computing: many organisations are concerned about the confidentiality and integrity of their users' data when hosted in third-party public clouds. Today's cloud providers struggle to give strong security guarantees that user data belonging to cloud tenants will be protected "end-to-end", i.e. across the entire workflow of a complex cloud-hosted distributed application. This is a challenging problem because data protection policies associated with applications usually require the strict isolation of certain data while permitting the sharing of other data. As an example, consider a local council with two applications on the G-Cloud: one for calculating unemployment benefits and one for receiving parking ticket fines, with both applications relying on a shared electoral roll database. How can the local council guarantee that data related to unemployment benefits will never be exposed to the parking fine application, even though both applications share a database and the cloud platform?
The focus of the CloudSafetNet project is to rethink fundamentally how platform-as-a-service (PaaS) clouds should handle security requirements of applications. The overall goal is to provide the CloudSafetyNet middleware, a novel PaaS platform that acts as a "safety net", protecting against security violations caused by implementation flaws in applications ("intra-tenant security") or vulnerabilities in the cloud platform itself ("inter-tenant security"). CloudSafetyNet follows a "data-centric" security model: the integrity and confidentiality of application data is protected according to data flow policies -- agreements between cloud tenants and the provider specifying the permitted and prohibited exchanges of data between application components. It will enforce data flow policies through multiple levels of security mechanisms following a "defence-in-depth" strategy: based on policies, it creates "data compartments" that contain one or more components and isolate user data. A small privileged kernel, which is part of the middleware and constitutes a trusted computing base (TCB), tracks the flow of data between compartments and prevents flows that would violate policies. Previously such information flow control (IFC) models have been used successfully to enhance programming language, operating system and web application security.
To make such a secure PaaS platform a reality, we plan to overcome a set of research challenges. We will explore how cloud application developers can express data-centric security policies that can be translated automatically into a set of data flow constraints in a distributed system. An open problem is how these constraints can be tied in with trusted enforcement mechanisms that exist in today's PaaS clouds. Addressing this will involve research into new lightweight isolation and sand-boxing techniques that allow the controlled execution of software components. In addition, we will advance software engineering methodology for secure cloud applications by developing new software architectures and design patterns that are compatible with compartmentalised data flow enforcement.
The importance of cloud computing for future services and applications has been recognised widely. A recent report by IBISWorld predicts that the UK cloud computing market will grow at an annual rate of 15.8% from £5.2 billion in 2011/2012 to reach £11 billion by 2016/2017. As well as decreasing capital and operational expenditure through outsourcing ICT infrastructure, cloud computing potentially reduces time-to-market. This creates numerous opportunities for SMEs and public organisations, thus engaging with providers of public, private or community clouds.
Cloud security is of particular concern to organisations that require compliance with strict confidentiality and integrity policies. These include organisations in finance, defence and healthcare. For example, cloud security is especially important in e-government where the UK government establishes the G-Cloud as a standardised way for public bodies to deploy cloud-based applications and reuse existing services. As described in the attached letter of support by Andy Nelson, the UK Government Chief Information Officer (CIO), who is overseeing the G-Cloud programme, this puts pressure on companies participating in the G-Cloud initiative to show new capabilities in relation to cloud security. Over the course of CloudSafetyNet, we will stay aligned with the goals of the G-Cloud and form close links with CESG, the UK Government's National Technical Authority for Information Assurance.
In addition to the G-Cloud programme, we regard the NHS cancer record service, NHS ECRIC, as a major non-academic collaborator (see attached support letter). We will also interact with the local government shared service venture (LGSS), which provides IT services across Cambridgeshire and Northamptonshire County Councils regarding a cloud deployment based on our open-source CloudSafetyNet middleware (see attached support letter).
The Advanced Technology Centre of BAE Systems plans to apply data flow approaches as part of the Minisy of Defence's Project Solomon and their Detica business unit. As stated in the attached support letter, they commit to regular half-day meetings and participation in the CloudSafetyNet impact workshop. Nexor, an SME based in Nottingham providing security solutions for clouds, are an official supplier to the G-Cloud initiative and have committed to interact closely with the CloudSafetyNet project (see attached support letter).
Citrix Systems R&D and Xen.org, as providers of cloud computing technologies, have both expressed strong support for our research. Citrix's XenServer product is based on the open-source Xen hypervisor software. Citrix are interested in using our data flow policy language to express which network flows are allowed/denied, and in compiling to Open vSwitch rules, to update per-host flow tables to enforce this policy as the virtual environment changes (see attached support letters).
A high level of security is a sine qua non for cloud use by the financial sector and the military. Morgan Stanley, for example, will suggest security policies relevant to them, as part of ongoing interaction (see attached support letter by their Chief Operating Officer, Technology and Data). We intend to use these interactions as a basis for case studies and small experiments, in addition to the ECRIC deployment and evaluation.
Overall we see the broad range of support letters that we received as evidence for the technical quality, the timeliness and the potential for impact of the CloudSafetyNet project.
- University of Cambridge, United Kingdom (Research Organisation)
- Imperial College London, United Kingdom (Research Organisation)
- Eastern Cancer Reg and Info Centre, United Kingdom
now English Cancer Registry, Public Health, England (Project Partner)
- Nexor Limited, Nottinghamshire, United Kingdom (Project Partner)
- New Zealand eScience Infrastructure, New Zealand (Project Partner)
- The Cabinet Office, United Kingdom (Project Partner)
- BAE Systems, Essex, United Kingdom (Project Partner)
- Eastern Cancer Reg and Info Centre, United Kingdom (Project Partner)
- Citrix Systems, United Kingdom (Project Partner)
- Cambridgeshire County Council, Cambridgeshire, United Kingdom (Project Partner)
- Morgan Stanley, NY 10036, United States (Project Partner)
- Jean Bacon, Cambridge PI
- Jatinder Singh, Cambridge postdoc RA
- Thomas Pasquier, Cambridge RA
- Ronny (Hajoon) Koh, Cambridge PhD
- Peter Pietzuch, Imperial PI
- Dan O'Keeffe, Imperial postdoc RA
- Divya Muthukumaran, Imperial postdoc RA
- David Eyers, Visiting Research Fellow, Otago University, New Zealand
- Brian Shand, CL VRF and English Cancer Registry, Public Health, England
Publications for CSN and our related previous grant SmartFlow can be found under opera publications
Recent publicatins are:
"Information Flow Control for Secure Cloud Computing"
Jean Bacon, David Eyers, Thomas F. J.-M. Pasquier, Jatinder Singh, Ioannis Papagiannis, and Peter Pietzuch
IEEE TNSM, Transactions on Networks and Service Management, special issue on Cloud Services, March 2014.
This paper discusses the potential for IFC in cloud service provision and application deployment. Related work is described, including our own under SmartFlow. We look at IFC provision in languages, libraries and systems. For the cloud, we consider IFC at application level only, provided independently of the cloud and within the levels of the cloud software stack.
"FlowR: Aspect Oriented Programming for Information Flow Control in Ruby"
Thomas F. J.-M. Pasquier, Jean Bacon and Brian Shand
ACM Modularity 2014
The paper shows how IFC can be added, using Aspect Oriented programming, as a language library to Ruby using the AOP library Aquarium. This achieves IFC without the need to change the application (IFC can be added as a separate phase), or the underlying implementation, e.g. in a cloud deployment. Assumptions are that the application developer is benevolent and the cloud deployment can be trusted.
"FlowK: Information Flow Control for the Cloud"
Thomas F. J.-M. Pasquier, Jean Bacon, and David Eyers.
In 6th International Conference on Cloud Computing Technology and Science (CloudCom). IEEE, Dec 2014.
We argue that IFC provision at the OS/middleware level of PaaS and SaaS clouds is most appropriate. FlowK is a proof-of-concept implementation of IFC as an importable kernel module for Linux. To show the kernel module working with applications, a web service framework has been adapted to run using IFC above FlowK. The FlowK design minimises the reengineering required by applications to run with IFC.
Several other submitted publications (under review at October 2014) describe aspects of our CSN work.
"Running Untrusted Applications on a Trusted Platform using Information Flow Control"
"Integrating Messaging Middleware and Information Flow Control"
"An Enhanced IFC Label Model to meet Application Policy Requirements"