WO2015084144A1 - A system and method to secure virtual machine images in cloud computing - Google Patents

A system and method to secure virtual machine images in cloud computing Download PDF

Info

Publication number
WO2015084144A1
WO2015084144A1 PCT/MY2014/000158 MY2014000158W WO2015084144A1 WO 2015084144 A1 WO2015084144 A1 WO 2015084144A1 MY 2014000158 W MY2014000158 W MY 2014000158W WO 2015084144 A1 WO2015084144 A1 WO 2015084144A1
Authority
WO
WIPO (PCT)
Prior art keywords
module
virtual machine
key
trusted platform
tpm
Prior art date
Application number
PCT/MY2014/000158
Other languages
French (fr)
Inventor
Norazah ABD AZIZ
Aakula BHAGYALAXMI
Original Assignee
Mimos Berhad
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mimos Berhad filed Critical Mimos Berhad
Publication of WO2015084144A1 publication Critical patent/WO2015084144A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/127Trusted platform modules [TPM]

Definitions

  • the present invention relates to a system and method to secure virtual machine images in cloud computing.
  • the invention relates to a system and method which provides a system and method to protect virtual machine images from running in different cloud providers by utilizing new embedded module.
  • Cloud computing is a technology that utilizes the internet and central remote servers to maintain data and applications which further allows consumers and businesses to use applications without installation of the application and having access to their personal files at any computer. Cloud computing provides efficient computing with centralized data storage, processing and bandwidth.
  • Cloud virtualization technologies comprise virtual machine (VM) that can run on different cloud providers. Different organizations who lease VMs from the same cloud providers may compromise the virtualization layer of the cloud provider with the intention to obtain information regarding the other customer's VMs by extracting the unauthorized VM images.
  • VM virtual machine
  • remote attestation mechanism is utilize to verify integrity of the launched virtual machine and hypervisor through service provider; the service provider determines the level of trust for each virtual machines as compared to the present application which utilizes Integrity Measurement Architecture (IMA) to protect hypervisor integrity, launched virtual machine and modified kernel module to encrypt some of the static kernel object in virtual machine images for verification process during booting-up.
  • IMA Integrity Measurement Architecture
  • Another example which describes techniques for securely booting and executing a virtual machine (VM) image in an untrusted cloud infrastructure is disclosed in Untied States Patent Publication No. US 2011/0302400 A1 entitled "Secure Virtual Machine Bootstrap in Untrusted Cloud Infrastructures" (hereinafter referred to as the US' 400 Publication).
  • the present invention relates to a system and method to determine version of deployed package.
  • the invention relates to a system and method which provides for a version of a deployed package to be determined and verified against release packages stored in a versioning repository.
  • One aspect of the invention provides a system (100) to secure Virtual Machine images in cloud computing.
  • the system comprising at least one hypervisor with Integrity Measurement Architecture (IMA) (122) embedded with at least one Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with at least one Trusted Platform Module (160); at least one Cloud Manager (CM) module (120) configured with serial communication function; at least one trusted storage server (170) storing modified Virtual Machine images with sealed key indexed by Virtual Machine Universally Unique Identifier (UUID); at least one Serial Guest Control interface (130) embedded in kernel module configured with serial communication function and interface to said Cloud Manager (CM) module (120).
  • IMA Integrity Measurement Architecture
  • TPM Trusted Platform Module
  • TkM Trusted Platform Module
  • CM Cloud Manager
  • UUID Virtual Machine Universally Unique Identifier
  • UUID Virtual Machine Universally Unique Identifier
  • Serial Guest Control interface 130
  • kernel module configured with serial communication function and interface to said Cloud Manager (CM) module (120).
  • the at least one hypervisor with Integrity Measurement Architecture (IMA) (122) embedded with at least one Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with at least one Trusted Platform Module (160) further comprises static object encryption module which utilizes Trusted Platform Module (TPM) seal functionalities to retrieve key for encryption and decryption.
  • IMA Integrity Measurement Architecture
  • TPM Trusted Platform Module
  • TkM Key Manager
  • Another aspect of the invention provides a method (200) to secure Virtual Machine images in cloud computing.
  • the method comprising steps of configuring a server with at least one Cloud Manager (CM) module and at least one Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with at least one Trusted Platform Module (160) by creating new Virtual Machines in the cloud (202); generating Trusted Platform Module (TPM) Key for Virtual Machine (206); installing and compiling Virtual Machines with new module containing encrypted static object of kernel module with said symmetric key (208); sealing said symmetric key of the Virtual Machine associated with Trusted Platform Module (TPM) with Virtual Machine Universally Unique Identifier (UUID) (210, 212); storing said sealed key and modified Virtual Machine images indexed with Virtual Machine Universally Unique Identifier (UUID) into a trusted storage server (214); and accessing said Virtual Machines by decrypting said static object of kernel module using stored unseal symmetric key during booting process (216).
  • CM Cloud Manager
  • the step for accessing said Virtual Machines by decrypting said static object of kernel module using stored unseal symmetric key during booting process further comprises steps of communicating with trusted storage server to access Virtual Machine image and sealed Trusted Platform Module (TPM) key (402); establishing Virtual Machine image (404); receiving request from Virtual Machine during booting process requesting symmetric key from Serial Guest Control (SGC) of said Virtual Machine through serial communication (406); forwarding said request by Cloud Manager (CM) module to Trusted Platform Module (TPM) Key Manager (TkM) module to unseal said sealed key (408); and providing access to user by decrypting said static object (410a, 410b).
  • TPM Trusted Platform Module
  • Yet another aspect of the invention relates to the step for configuring a server with at least one Cloud Manager (CM) module and at least one Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with at least one Trusted Platform Module (160) by creating new Virtual Machines in the cloud (202).
  • CM Cloud Manager
  • TPM Trusted Platform Module
  • TkM Key Manager
  • the said step further comprises steps of connecting to the at least one Trusted Platform Module (TPM) Key Manager (TkM) module by the at least one Cloud Manager (CM) module to obtain a symmetric key (302, 304); inserting a new module into Virtual Machine image module by the at least one Cloud Manager (CM) module to boot the Virtual Machine (306); and communicating with said Trusted Platform Module (TPM) Key Manager (TkM) module by said Cloud Manager (CM) module to seal said symmetric key and storing said modified Virtual Machine image with sealed key by indexing with said Virtual Machine Universally Unique Identifier (UUID) into trusted storage server.
  • TPM Trusted Platform Module
  • TkM Trusted Platform Module
  • CM Cloud Manager
  • UUID Virtual Machine Universally Unique Identifier
  • the step for connecting to the at least one Trusted Platform Module (TPM) Key Manager (TkM) module by the at least one Cloud Manager (CM) module to obtain a symmetric key (302, 304) further comprises connecting said Trusted Platform Module (TPM) Key Manager (TkM) module to Trusted Platform Module (160) to generate symmetric key.
  • TPM Trusted Platform Module
  • TkM Trusted Platform Module
  • Still another aspect of the invention provides for the step for inserting a new module into Virtual Machine image module by the at least one Cloud Manager (CM) module to boot the Virtual Machine (306) which further comprises steps of encrypting static object of kernel module with said symmetric key to boot the Virtual Machine; and compiling Virtual Machine with new module, sending the signal to the Cloud Manager (CM) module and shuts off.
  • CM Cloud Manager
  • a further aspect of the invention provides for the step for establishing Virtual Machine image.
  • the said step further comprises steps of requesting Virtual Machine image and sealed key from trusted storage server (502); forwarding signal to Cloud Manager (CM) module through serial communication to enable said key to decrypt static object in new kernel module (504); requesting unseal Trusted Platform Module (TPM) Key (506) by communicating to Trusted Platform Module (TPM) to unseal said key and forwarding said symmetric key to Cloud Manager (CM) module (508); forwarding respond signal by Cloud Manager (CM) module through serial communication with Trusted Platform Module (TPM) symmetric key (510); and decrypting static object of new kernel module using symmetric key (512); opening said connection for access upon valid decryption of static object of kernel module; else halting said Virtual Machine by signaling from new kernel module decryption of static object is invalid.
  • CM Cloud Manager
  • TPM Trusted Platform Module
  • FIG. 1.0 illustrates the general architecture of the system of the present invention.
  • FIG. 2.0 is a flowchart illustrating the general methodology of the present invention to secure virtual machine images in cloud computing.
  • FIG. 3.0 is a flow diagram which illustrates the step for creating new Virtual Machines in the cloud.
  • FIG. 4.0 is a flow diagram which illustrates the step for accessing said Virtual Machines by decrypting said static object of kernel module using stored unseal symmetric key during booting process.
  • FIG. 5.0 is a flowchart illustrating the steps for establishing Virtual Machine image.
  • the present invention relates to a system and method to secure virtual machine images in cloud computing.
  • the invention relates to a system and method which provides a system and method to protect virtual machine images from running in different cloud providers by utilizing new embedded module.
  • the system comprising a hypervisor with Integrity Measurement Architecture (IMA) ( 22) embedded with a Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with a Trusted Platform Module (160); a Cloud Manager (CM) module (120) configured with serial communication function; a trusted storage server (170) storing modified Virtual Machine images with sealed key indexed by Virtual Machine Universally Unique Identifier (UUID); a Serial Guest Control interface (130) embedded in kernel module configured with serial communication function and interface to said Cloud Manager (CM) module (120).
  • IMA Integrity Measurement Architecture
  • TPM Trusted Platform Module
  • TkM Trusted Platform Module
  • CM Cloud Manager
  • UUID Virtual Machine Universally Unique Identifier
  • Serial Guest Control interface 130
  • kernel module configured with serial communication function and interface to said Cloud Manager (CM) module (120).
  • the hypervisor with Integrity Measurement Architecture (IMA) (122) is embedded with the Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with a Trusted Platform Module (160) further comprises static object encryption module which utilizes Trusted Platform Module (TPM) seal functionalities to retrieve key for encryption and decryption.
  • the sealed key as described is generated by the standard of trusted platform module (TPM) sealing process.
  • the hypervisor with Integrity Measurement Architecture (IMA) (122) embedded with the Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with the Trusted Platform Module (160) generates a Trusted Platform Module (TPM) Key; said TPM Key is a symmetric key.
  • FIG. 2.0 A general method (200) of an embodiment of the invention is illustrated in FIG. 2.0 wherein the method (200) to secure virtual machine images in cloud computing further comprising steps of configuring a server with at least one Cloud Manager (CM) module and at least one Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with at least one Trusted Platform Module (160) by creating new Virtual Machines in the cloud (202); generating Trusted Platform Module (TPM) Key for Virtual Machine (206); installing and compiling Virtual Machines with new module containing encrypted static object of kernel module with said symmetric key (208); sealing said symmetric key of the Virtual Machine associated with Trusted Platform Module (TPM) with Virtual Machine Universally Unique Identifier (UUID) (210, 212); storing said sealed key and modified Virtual Machine images indexed with Virtual Machine Universally Unique Identifier (UUID) into a trusted storage server (214); and accessing said Virtual Machines by decrypting said static object of kernel module using stored unseal symmetric key during booting process
  • FIG. 3.0 A detailed description of the steps to create new Virtual Machines in the cloud is illustrated in FIG 3.0.
  • Cloud Manager (CM) module connects to the Trusted Platform Module (TPM) Key Manager (TkM) module to obtain a symmetric key (302, 304).
  • a symmetric key is generated by connecting said Trusted Platform Module (TPM) Key Manager (TkM) module to Trusted Platform Module.
  • the Cloud Manager (CM) module boots the Virtual Machine by inserting a new module into Virtual Machine image module (306) by encrypting static object of kernel module with said symmetric key to boot the Virtual Machine; and compiling Virtual Machine with new module, sending the signal to the Cloud Manager (CM) module and shuts off.
  • CM Cloud Manager
  • TPM Trusted Platform Module
  • TkM Trusted Platform Module
  • UUID Virtual Machine Universally Unique Identifier
  • the Virtual Machine request for symmetric key from Serial Guest Control (SGC) of said Virtual Machine through serial communication (406).
  • the Cloud Manager (CM) module forwards said request to Trusted Platform Module (TPM) Key Manager (TkM) module to unseal said sealed key (408) and the Cloud Manager (CM) module will reforward the key to the Serial Guest Control (SGC).
  • TPM Trusted Platform Module
  • TkM Key Manager
  • SGC Serial Guest Control
  • the Virtual Machine (VM) will decrypt the new module static object and provide access to user (410a, 410b).
  • the present invention manages access of Virtual Machine (VM) images in a secure manner by preventing Virtual Machine (VMs) from running on other cloud providers and hypervisor.
  • VM Virtual Machine
  • the distinctiveness of the present invention lies in the utilization of embedded new module comprising static object encryption module and built-in serial communication in the kernel of Virtual Machine (VM) images.
  • the said encryption utilizes Trusted Platform Module (TPM) seal functionalities while the serial communication is for communication between the running Virtual Machine (VM) during booting process with Cloud Manager (CM) in order to retrieve the key for decryption process.
  • TPM Trusted Platform Module

Abstract

The system (100) of the present invention to secure Virtual Machine images in cloud computing comprising at least one hypervisor with Integrity Measurement Architecture (IMA) (122) embedded with at least one Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with at least one Trusted Platform Module (160); at least one Cloud Manager (CM) module (120) configured with serial communication function; at least one trusted storage server (170) storing modified Virtual Machine images with sealed key indexed by Virtual Machine Universally Unique Identifier (UUID); and at least one Serial Guest Control interface (130) embedded in kernel module configured with serial communication function and interface to said Cloud Manager (CM) module (120). The general methodology of the present invention comprises steps of configuring a server with at least one Cloud Manager (CM) module and at least one Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with at least one Trusted Platform Module (160) by creating new Virtual Machines in the cloud (202); generating Trusted Platform Module (TPM) Key for Virtual Machine (206); installing and compiling Virtual Machines with new module containing encrypted static object of kernel module with said symmetric key (208); sealing said symmetric key of the Virtual Machine associated with Trusted Platform Module (TPM) with Virtual Machine Universally Unique Identifier (UUID) (210, 212); storing said sealed key and modified Virtual Machine images indexed with Virtual Machine Universally Unique Identifier (UUID) into a trusted storage server (214); and accessing said Virtual Machines by decrypting said static object of kernel module using stored unseal symmetric key during booting process (216). The distinctiveness lies in the utilization of embedded new module comprising static object encryption module and built-in serial communication in the kernel of Virtual Machine (VM) images to provide a system and method to protect Virtual Machine (VM) images from running in different cloud providers.

Description

A SYSTEM AND METHOD TO SECURE VIRTUAL MACHINE IMAGES IN CLOUD
COMPUTING
FIELD OF INVENTION
The present invention relates to a system and method to secure virtual machine images in cloud computing. In particular, the invention relates to a system and method which provides a system and method to protect virtual machine images from running in different cloud providers by utilizing new embedded module.
BACKGROUND ART
Cloud computing is a technology that utilizes the internet and central remote servers to maintain data and applications which further allows consumers and businesses to use applications without installation of the application and having access to their personal files at any computer. Cloud computing provides efficient computing with centralized data storage, processing and bandwidth.
Despite the cloud's huge potential in reducing costs and improving productivity, security experts opines that security problems could restrain wide adoption in the cloud model. There are many open questions in regards to security of cloud computing which cannot be managed in traditional ways. Examples of the scenario are as listed below:
1) Cloud virtualization technologies comprise virtual machine (VM) that can run on different cloud providers. Different organizations who lease VMs from the same cloud providers may compromise the virtualization layer of the cloud provider with the intention to obtain information regarding the other customer's VMs by extracting the unauthorized VM images.
2) Different billing rates by different hypervisor/cloud providers encourage customers of the hypervisor/one cloud provider to take VM images and run them on another hypervisor/cloud provider which offer a lower cost. Consequently, the first cloud provider will lose some revenue.
The issue of the currently available deployed system drives to need of protecting virtual machine (VM) images from running in different hypervisor/cloud providers. One example of currently available method for generating a dedicated virtual machine image is disclosed in United States Patent Application Publication No. US 2009/0172781 A1 entitled "Trusted Virtual Machine as a Client" (hereinafter referred to as the US' 781 Publication). In the US' 781 Publication, storage of the encrypted virtual machine image is provided in a portable computing device as compared to the present application which stores modified virtual machine image and sealed key indexing with Universally Unique Identifier (UUID) in a trusted storage server. Further, in the US' 781 Publication, remote attestation mechanism is utilize to verify integrity of the launched virtual machine and hypervisor through service provider; the service provider determines the level of trust for each virtual machines as compared to the present application which utilizes Integrity Measurement Architecture (IMA) to protect hypervisor integrity, launched virtual machine and modified kernel module to encrypt some of the static kernel object in virtual machine images for verification process during booting-up. Another example which describes techniques for securely booting and executing a virtual machine (VM) image in an untrusted cloud infrastructure is disclosed in Untied States Patent Publication No. US 2011/0302400 A1 entitled "Secure Virtual Machine Bootstrap in Untrusted Cloud Infrastructures" (hereinafter referred to as the US' 400 Publication). In the US' 400 Publication, secure booting of a virtual machine image is provided in an untrusted cloud infrastructure. A trust anchor provision with public key pair that allows the multi-core CPU to authenticate itself which further securely booting and executing a virtual machine image in an untrusted cloud infrastructure is disclosed in the US' 400 Publication. In the US' 400 Publication, virtual machine image is encrypted by utilizing the key wrapped by the public key of service provider as compared to the present application which provides the kernel module embedded in virtual machine that is encrypted with key and is being sealed in TPM.
Another mechanism which provides secure, flexible and transparent security architecture for virtual disk images is disclosed in an IEEE paper (2008 IEEE) entitled "Secure Virtual Disk Images for Grid Computing" by Carl Gebhardt and Allan Tomlinson. In the said paper, virtual disks are secured by checking integrity using hash value of the whole image through driver. Splitting method is provided wherein the images are split into small chunks of a fixed length to avoid a constant rehashing of the virtual images as compared to the present invention which provides new kernel module with encryption key being embedded in virtual machines. Further, the said IEEE paper provides metafile to store the encryption key of the chunks and allow a restrictive rule-set to be imposed by the virtual disk image owner. It does not provide for a new kernel module embedded in virtual machine, encrypted with key and sealed in Trusted Platform Module (TPM) as provided in the present invention.
SUMMARY OF INVENTION
The present invention relates to a system and method to determine version of deployed package. In particular, the invention relates to a system and method which provides for a version of a deployed package to be determined and verified against release packages stored in a versioning repository.
One aspect of the invention provides a system (100) to secure Virtual Machine images in cloud computing. The system comprising at least one hypervisor with Integrity Measurement Architecture (IMA) (122) embedded with at least one Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with at least one Trusted Platform Module (160); at least one Cloud Manager (CM) module (120) configured with serial communication function; at least one trusted storage server (170) storing modified Virtual Machine images with sealed key indexed by Virtual Machine Universally Unique Identifier (UUID); at least one Serial Guest Control interface (130) embedded in kernel module configured with serial communication function and interface to said Cloud Manager (CM) module (120). The at least one hypervisor with Integrity Measurement Architecture (IMA) (122) embedded with at least one Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with at least one Trusted Platform Module (160) further comprises static object encryption module which utilizes Trusted Platform Module (TPM) seal functionalities to retrieve key for encryption and decryption.
Another aspect of the invention provides a method (200) to secure Virtual Machine images in cloud computing. The method comprising steps of configuring a server with at least one Cloud Manager (CM) module and at least one Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with at least one Trusted Platform Module (160) by creating new Virtual Machines in the cloud (202); generating Trusted Platform Module (TPM) Key for Virtual Machine (206); installing and compiling Virtual Machines with new module containing encrypted static object of kernel module with said symmetric key (208); sealing said symmetric key of the Virtual Machine associated with Trusted Platform Module (TPM) with Virtual Machine Universally Unique Identifier (UUID) (210, 212); storing said sealed key and modified Virtual Machine images indexed with Virtual Machine Universally Unique Identifier (UUID) into a trusted storage server (214); and accessing said Virtual Machines by decrypting said static object of kernel module using stored unseal symmetric key during booting process (216). The step for accessing said Virtual Machines by decrypting said static object of kernel module using stored unseal symmetric key during booting process (216) further comprises steps of communicating with trusted storage server to access Virtual Machine image and sealed Trusted Platform Module (TPM) key (402); establishing Virtual Machine image (404); receiving request from Virtual Machine during booting process requesting symmetric key from Serial Guest Control (SGC) of said Virtual Machine through serial communication (406); forwarding said request by Cloud Manager (CM) module to Trusted Platform Module (TPM) Key Manager (TkM) module to unseal said sealed key (408); and providing access to user by decrypting said static object (410a, 410b).
Yet another aspect of the invention relates to the step for configuring a server with at least one Cloud Manager (CM) module and at least one Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with at least one Trusted Platform Module (160) by creating new Virtual Machines in the cloud (202). The said step further comprises steps of connecting to the at least one Trusted Platform Module (TPM) Key Manager (TkM) module by the at least one Cloud Manager (CM) module to obtain a symmetric key (302, 304); inserting a new module into Virtual Machine image module by the at least one Cloud Manager (CM) module to boot the Virtual Machine (306); and communicating with said Trusted Platform Module (TPM) Key Manager (TkM) module by said Cloud Manager (CM) module to seal said symmetric key and storing said modified Virtual Machine image with sealed key by indexing with said Virtual Machine Universally Unique Identifier (UUID) into trusted storage server. The step for connecting to the at least one Trusted Platform Module (TPM) Key Manager (TkM) module by the at least one Cloud Manager (CM) module to obtain a symmetric key (302, 304) further comprises connecting said Trusted Platform Module (TPM) Key Manager (TkM) module to Trusted Platform Module (160) to generate symmetric key.
Still another aspect of the invention provides for the step for inserting a new module into Virtual Machine image module by the at least one Cloud Manager (CM) module to boot the Virtual Machine (306) which further comprises steps of encrypting static object of kernel module with said symmetric key to boot the Virtual Machine; and compiling Virtual Machine with new module, sending the signal to the Cloud Manager (CM) module and shuts off. A further aspect of the invention provides for the step for establishing Virtual Machine image. The said step further comprises steps of requesting Virtual Machine image and sealed key from trusted storage server (502); forwarding signal to Cloud Manager (CM) module through serial communication to enable said key to decrypt static object in new kernel module (504); requesting unseal Trusted Platform Module (TPM) Key (506) by communicating to Trusted Platform Module (TPM) to unseal said key and forwarding said symmetric key to Cloud Manager (CM) module (508); forwarding respond signal by Cloud Manager (CM) module through serial communication with Trusted Platform Module (TPM) symmetric key (510); and decrypting static object of new kernel module using symmetric key (512); opening said connection for access upon valid decryption of static object of kernel module; else halting said Virtual Machine by signaling from new kernel module decryption of static object is invalid.
The present invention consists of features and a combination of parts hereinafter fully described and illustrated in the accompanying drawings, it being understood that various changes in the details may be made without departing from the scope of the invention or sacrificing any of the advantages of the present invention.
BRIEF DESCRIPTION OF ACCOMPANYING DRAWINGS
To further clarify various aspects of some embodiments of the present invention, a more particular description of the invention will be rendered by references to specific embodiments thereof, which are illustrated in the appended drawings. It is appreciated that these drawings depict only typical embodiments of the invention and are therefore not to be considered limiting of its scope. The invention will be described and explained with additional specificity and detail through the accompanying drawings in which: FIG. 1.0 illustrates the general architecture of the system of the present invention.
FIG. 2.0 is a flowchart illustrating the general methodology of the present invention to secure virtual machine images in cloud computing. FIG. 3.0 is a flow diagram which illustrates the step for creating new Virtual Machines in the cloud.
FIG. 4.0 is a flow diagram which illustrates the step for accessing said Virtual Machines by decrypting said static object of kernel module using stored unseal symmetric key during booting process.
FIG. 5.0 is a flowchart illustrating the steps for establishing Virtual Machine image.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
The present invention relates to a system and method to secure virtual machine images in cloud computing. In particular, the invention relates to a system and method which provides a system and method to protect virtual machine images from running in different cloud providers by utilizing new embedded module.
Hereinafter, this specification will describe the present invention according to the preferred embodiments. It is to be understood that limiting the description to the preferred embodiments of the invention is merely to facilitate discussion of the present invention and it is envisioned without departing from the scope of the appended claims.
Referring to FIG. 1.0, a system to secure virtual machine images in cloud computing is illustrated. As illustrated in FIG. 1.0, the system (100) comprising a hypervisor with Integrity Measurement Architecture (IMA) ( 22) embedded with a Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with a Trusted Platform Module (160); a Cloud Manager (CM) module (120) configured with serial communication function; a trusted storage server (170) storing modified Virtual Machine images with sealed key indexed by Virtual Machine Universally Unique Identifier (UUID); a Serial Guest Control interface (130) embedded in kernel module configured with serial communication function and interface to said Cloud Manager (CM) module (120). The hypervisor with Integrity Measurement Architecture (IMA) (122) is embedded with the Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with a Trusted Platform Module (160) further comprises static object encryption module which utilizes Trusted Platform Module (TPM) seal functionalities to retrieve key for encryption and decryption. The sealed key as described is generated by the standard of trusted platform module (TPM) sealing process. The hypervisor with Integrity Measurement Architecture (IMA) (122) embedded with the Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with the Trusted Platform Module (160) generates a Trusted Platform Module (TPM) Key; said TPM Key is a symmetric key.
A general method (200) of an embodiment of the invention is illustrated in FIG. 2.0 wherein the method (200) to secure virtual machine images in cloud computing further comprising steps of configuring a server with at least one Cloud Manager (CM) module and at least one Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with at least one Trusted Platform Module (160) by creating new Virtual Machines in the cloud (202); generating Trusted Platform Module (TPM) Key for Virtual Machine (206); installing and compiling Virtual Machines with new module containing encrypted static object of kernel module with said symmetric key (208); sealing said symmetric key of the Virtual Machine associated with Trusted Platform Module (TPM) with Virtual Machine Universally Unique Identifier (UUID) (210, 212); storing said sealed key and modified Virtual Machine images indexed with Virtual Machine Universally Unique Identifier (UUID) into a trusted storage server (214); and accessing said Virtual Machines by decrypting said static object of kernel module using stored unseal symmetric key during booting process (216). A detailed description of the steps to create new Virtual Machines in the cloud is illustrated in FIG 3.0. As illustrated in FIG. 3.0, Cloud Manager (CM) module connects to the Trusted Platform Module (TPM) Key Manager (TkM) module to obtain a symmetric key (302, 304). A symmetric key is generated by connecting said Trusted Platform Module (TPM) Key Manager (TkM) module to Trusted Platform Module. The Cloud Manager (CM) module boots the Virtual Machine by inserting a new module into Virtual Machine image module (306) by encrypting static object of kernel module with said symmetric key to boot the Virtual Machine; and compiling Virtual Machine with new module, sending the signal to the Cloud Manager (CM) module and shuts off. Thereafter, the Cloud Manager (CM) module communicates with the Trusted Platform Module (TPM) Key Manager (TkM) module to seal said symmetric key and store said modified Virtual Machine image with sealed key by indexing with said Virtual Machine Universally Unique Identifier (UUID) into trusted storage server. Referring to FIG. 4.0, the steps for accessing Virtual Machines by decrypting static object of kernel module using stored unseal symmetric key during booting process is illustrated. As illustrated in FIG. 4.0, Cloud Manager (CM) module communicates with trusted storage server to access Virtual Machine image and sealed Trusted Platform Module (TPM) key (402). Thereafter, the Cloud Manager (CM) module will establish the Virtual Machine image (404). During the booting process, the Virtual Machine request for symmetric key from Serial Guest Control (SGC) of said Virtual Machine through serial communication (406). The Cloud Manager (CM) module forwards said request to Trusted Platform Module (TPM) Key Manager (TkM) module to unseal said sealed key (408) and the Cloud Manager (CM) module will reforward the key to the Serial Guest Control (SGC). The Virtual Machine (VM) will decrypt the new module static object and provide access to user (410a, 410b).
The present invention manages access of Virtual Machine (VM) images in a secure manner by preventing Virtual Machine (VMs) from running on other cloud providers and hypervisor. The distinctiveness of the present invention lies in the utilization of embedded new module comprising static object encryption module and built-in serial communication in the kernel of Virtual Machine (VM) images. The said encryption utilizes Trusted Platform Module (TPM) seal functionalities while the serial communication is for communication between the running Virtual Machine (VM) during booting process with Cloud Manager (CM) in order to retrieve the key for decryption process.
Unless the context requires otherwise or specifically stated to the contrary, integers, steps or elements of the invention recited herein as singular integers, steps or elements clearly encompass both singular and plural forms of the recited integers, steps or elements.
Throughout this specification, unless the context requires otherwise, the word "comprise", or variations such as "comprises" or "comprising", will be understood to imply the inclusion of a stated step or element or integer or group of steps or elements or integers, but not the exclusion of any other step or element or integer or group of steps, elements or integers. Thus, in the context of this specification, the term "comprising" is used in an inclusive sense and thus should be understood as meaning "including principally, but not necessarily solely". It will be appreciated that the foregoing description has been given by way of illustrative example of the invention and that all such modifications and variations thereto as would be apparent to persons of skill in the art are deemed to fall within the broad scope and ambit of the invention as herein set forth.

Claims

1. A system (100) to secure Virtual Machine images in cloud computing comprising:
at least one hypervisor with Integrity Measurement Architecture (IMA) (122) embedded with at least one Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with at least one Trusted Platform Module (160);
at least one Cloud Manager (CM) module (120) configured with serial communication function;
at least one trusted storage server (170) storing modified Virtual Machine images with sealed key indexed by Virtual Machine Universally Unique Identifier (UUID);
at least one Serial Guest Control interface (130) embedded in kernel module configured with serial communication function and interface to said Cloud Manager (CM) module (120)
characterized in that
the at least one hypervisor with Integrity Measurement
Architecture (IMA) (122) embedded with at least one Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with at least one Trusted Platform Module (160) further comprises static object encryption module which utilizes Trusted Platform Module (TPM) seal functionalities to retrieve key for encryption and decryption.
2. A system (100) according to Claim 1 , wherein the at least one hypervisor with Integrity Measurement Architecture (IMA) (122) embedded with at least one Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with at least one Trusted Platform Module (160) generates Trusted Platform Module (TPM) Key; said TPM Key is a symmetric key.
3. A method (200) to secure Virtual Machine images in cloud computing comprising steps of:
configuring a server with at least one Cloud Manager (CM) module and at least one Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with at least one Trusted Platfomn Module (160) by creating new Virtual Machines in the cloud (202);
generating Trusted Platform Module (TPM) Key for Virtual Machine (206); installing and compiling Virtual Machines with new module containing encrypted static object of kernel module with said symmetric key (208); sealing said symmetric key of the Virtual Machine associated with Trusted Platform Module (TPM) with Virtual Machine Universally Unique Identifier (UUID) (210, 212);
storing said sealed key and modified Virtual Machine images indexed with Virtual Machine Universally Unique Identifier (UUID) into a trusted storage server (214); and
accessing said Virtual Machines by decrypting said static object of kernel module using stored unseal symmetric key during booting process (216) characterized in that
accessing said Virtual Machines by decrypting said static object of kernel module using stored unseal symmetric key during booting process (216) further comprises steps of:
communicating with trusted storage server to access Virtual Machine image and sealed Trusted Platform Module (TPM) key (402);
establishing Virtual Machine image (404);
receiving request from Virtual Machine during booting process requesting symmetric key from Serial Guest Control (SGC) of said
Virtual Machine through serial communication (406); forwarding said request by Cloud Manager (CM) module to
Trusted Platform Module (TPM) Key Manager (TkM) module to unseal said sealed key (408); and
providing access to user by decrypting said static object (410a, 410b).
4. A method according to Claim 3, wherein configuring a server with at least one Cloud Manager (CM) module and at least one Trusted Platform Module (TPM) Key Manager (TkM) module (150) associated with at least one Trusted Platform Module (160) by creating new Virtual Machines in the cloud (202) further comprises steps of:
connecting to the at least one Trusted Platform Module (TPM) Key Manager (TkM) module by the at least one Cloud Manager (CM) module to obtain a symmetric key (302, 304);
inserting a new module into Virtual Machine image module by the at least one Cloud Manager (CM) module to boot the Virtual Machine (306); and communicating with said Trusted Platform Module (TPM) Key Manager (TkM) module by said Cloud Manager (CM) module to seal said symmetric key and storing said modified Virtual Machine image with sealed key by indexing with said Virtual Machine Universally Unique Identifier (UUID) into trusted storage server.
A method according to Claim 4, wherein connecting to the at least one Trusted Platform Module (TPM) Key Manager (TkM) module by the at least one Cloud Manager (CM) module to obtain a symmetric key (302, 304) further comprises connecting said Trusted Platform Module (TPM) Key Manager (TkM) module to Trusted Platform Module (160) to generate symmetric key.
A method according to Claim 4, wherein inserting a new module into Virtual Machine image module by the at least one Cloud Manager (CM) module to boot the Virtual Machine (306) further comprises steps of:
encrypting static object of kernel module with said symmetric key to boot the Virtual Machine; and
compiling Virtual Machine with new module , sending the signal to the Cloud Manager (CM) module and shuts off.
A method (500) according to Claim 3, wherein establishing Virtual Machine image further comprising steps of:
requesting Virtual Machine image and sealed key from trusted storage server (502);
forwarding signal to Cloud Manager (CM) module through serial communication to enable said key to decrypt static object in new kernel module (504); requesting unseal Trusted Platform Module (TPM) Key (506) by communicating to Trusted Platform Module (TPM) to unseal said key and forwarding said symmetric key to Cloud Manager (CM) module (508);
forwarding respond signal by Cloud Manager (CM) module through serial communication with Trusted Platform Module (TPM) symmetric key (510); and
decrypting static object of new kernel module using symmetric key (512); opening said connection for access upon valid decryption of static object of kernel module; else halting said Virtual Machine by signaling from new kernel module decryption of static object is invalid.
8. A method according to Claim 3, wherein said new module containing encrypted static object of kernel module with said symmetric key is embedded with Serial Guest Control (SGC).
PCT/MY2014/000158 2013-12-04 2014-06-04 A system and method to secure virtual machine images in cloud computing WO2015084144A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
MYPI2013004370 2013-12-04
MYPI2013004370A MY177609A (en) 2013-12-04 2013-12-04 A system and method to secure virtual machine images in cloud computing

Publications (1)

Publication Number Publication Date
WO2015084144A1 true WO2015084144A1 (en) 2015-06-11

Family

ID=51703363

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/MY2014/000158 WO2015084144A1 (en) 2013-12-04 2014-06-04 A system and method to secure virtual machine images in cloud computing

Country Status (2)

Country Link
MY (1) MY177609A (en)
WO (1) WO2015084144A1 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105718794A (en) * 2016-01-27 2016-06-29 华为技术有限公司 Safety protection method and system for virtual machine based on VTPM
WO2017139217A1 (en) * 2016-02-12 2017-08-17 Microsoft Technology Licensing, Llc Secure provisioning of operating systems
CN108509250A (en) * 2017-02-28 2018-09-07 英特尔公司 The safe public cloud of host computer control is verified with shielded guest machine
CN109144667A (en) * 2018-08-03 2019-01-04 北京东软望海科技有限公司 A kind of virtual machine creation method and virtual machine creating device
CN110321709A (en) * 2019-07-01 2019-10-11 电子科技大学 Policy configuration management tool based on MILS
CN113285816A (en) * 2020-02-19 2021-08-20 华为技术有限公司 Control request sending method, device and system based on key value configuration
US11144251B2 (en) 2018-10-17 2021-10-12 International Business Machines Corporation Providing a global unique identifier for a storage volume
US11323259B2 (en) 2016-09-22 2022-05-03 Telefonaktiebolaget Lm Ericsson (Publ) Version control for trusted computing
US11907375B2 (en) 2021-04-13 2024-02-20 Hewlett Packard Enterprise Development Lp System and method for signing and interlocking a boot information file to a host computing system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080244569A1 (en) * 2007-03-30 2008-10-02 David Carroll Challener System and Method for Reporting the Trusted State of a Virtual Machine
US20090172781A1 (en) 2007-12-20 2009-07-02 Fujitsu Limited Trusted virtual machine as a client
WO2011116459A1 (en) * 2010-03-25 2011-09-29 Enomaly Inc. System and method for secure cloud computing
US20110302400A1 (en) 2010-06-07 2011-12-08 Maino Fabio R Secure virtual machine bootstrap in untrusted cloud infrastructures

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080244569A1 (en) * 2007-03-30 2008-10-02 David Carroll Challener System and Method for Reporting the Trusted State of a Virtual Machine
US20090172781A1 (en) 2007-12-20 2009-07-02 Fujitsu Limited Trusted virtual machine as a client
WO2011116459A1 (en) * 2010-03-25 2011-09-29 Enomaly Inc. System and method for secure cloud computing
US20110302400A1 (en) 2010-06-07 2011-12-08 Maino Fabio R Secure virtual machine bootstrap in untrusted cloud infrastructures

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017128720A1 (en) * 2016-01-27 2017-08-03 华为技术有限公司 Vtpm-based method and system for virtual machine security and protection
CN105718794B (en) * 2016-01-27 2018-06-05 华为技术有限公司 The method and system of safeguard protection are carried out to virtual machine based on VTPM
CN105718794A (en) * 2016-01-27 2016-06-29 华为技术有限公司 Safety protection method and system for virtual machine based on VTPM
US10922117B2 (en) 2016-01-27 2021-02-16 Huawei Technologies Co., Ltd. VTPM-based virtual machine security protection method and system
US10425229B2 (en) 2016-02-12 2019-09-24 Microsoft Technology Licensing, Llc Secure provisioning of operating systems
WO2017139217A1 (en) * 2016-02-12 2017-08-17 Microsoft Technology Licensing, Llc Secure provisioning of operating systems
US11323259B2 (en) 2016-09-22 2022-05-03 Telefonaktiebolaget Lm Ericsson (Publ) Version control for trusted computing
CN108509250A (en) * 2017-02-28 2018-09-07 英特尔公司 The safe public cloud of host computer control is verified with shielded guest machine
CN108509250B (en) * 2017-02-28 2023-11-14 英特尔公司 Secure public cloud with protected guest authentication host control
CN109144667A (en) * 2018-08-03 2019-01-04 北京东软望海科技有限公司 A kind of virtual machine creation method and virtual machine creating device
US11144251B2 (en) 2018-10-17 2021-10-12 International Business Machines Corporation Providing a global unique identifier for a storage volume
US11797177B2 (en) 2018-10-17 2023-10-24 International Business Machines Corporation Providing a global unique identifier for a storage volume
CN110321709A (en) * 2019-07-01 2019-10-11 电子科技大学 Policy configuration management tool based on MILS
CN113285816A (en) * 2020-02-19 2021-08-20 华为技术有限公司 Control request sending method, device and system based on key value configuration
WO2021164330A1 (en) * 2020-02-19 2021-08-26 华为技术有限公司 Key value configuration-based control request sending method, apparatus and system
CN113285816B (en) * 2020-02-19 2022-10-28 华为技术有限公司 Control request sending method, device and system based on key value configuration
US11907375B2 (en) 2021-04-13 2024-02-20 Hewlett Packard Enterprise Development Lp System and method for signing and interlocking a boot information file to a host computing system

Also Published As

Publication number Publication date
MY177609A (en) 2020-09-22

Similar Documents

Publication Publication Date Title
CN107003866B (en) Secure creation of encrypted virtual machines from encrypted templates
US9703586B2 (en) Distribution control and tracking mechanism of virtual machine appliances
WO2015084144A1 (en) A system and method to secure virtual machine images in cloud computing
US8171301B2 (en) Method and system for integrated securing and managing of virtual machines and virtual appliances
JP4732513B2 (en) Method and apparatus for providing a software-based security coprocessor
US8856504B2 (en) Secure virtual machine bootstrap in untrusted cloud infrastructures
US7571312B2 (en) Methods and apparatus for generating endorsement credentials for software-based security coprocessors
US8074262B2 (en) Method and apparatus for migrating virtual trusted platform modules
US7613921B2 (en) Method and apparatus for remotely provisioning software-based security coprocessors
US7636442B2 (en) Method and apparatus for migrating software-based security coprocessors
Zhang et al. Security-preserving live migration of virtual machines in the cloud
US11714895B2 (en) Secure runtime systems and methods
Noubir et al. Trusted code execution on untrusted platforms using Intel SGX
US11928216B2 (en) Protecting an entire system disk by encrypting data stored in a portion of the system disk
Yu et al. A trust verification architecture with hardware root for secure clouds
Galanou et al. Matee: Multimodal attestation for trusted execution environments
De Benedictis et al. A novel architecture to virtualise a hardware-bound trusted platform module
US11886223B2 (en) Leveraging hardware-based attestation to grant workloads access to confidential data
US11799670B2 (en) Secure end-to-end deployment of workloads in a virtualized environment using hardware-based attestation
Wang et al. Towards a trusted launch mechanism for virtual machines in cloud computing
GB2604982A (en) Provisioning secure/encrypted virtual machines in a cloud infrastructure
Cases Hardware-Enabled Security

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14784115

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14784115

Country of ref document: EP

Kind code of ref document: A1