• No results found

Cloud Computing: Some Implications for Key Management

N/A
N/A
Protected

Academic year: 2021

Share "Cloud Computing: Some Implications for Key Management"

Copied!
11
0
0

Loading.... (view fulltext now)

Full text

(1)

Cloud Computing: Some

Implications for Key Management

June 8, 2009

Lee Badger

For those viewing via webcast, please submit questions for this

presentation to [email protected]

Information Technology Laboratory

NIST

National Institute of

Computer Security Division Standards and Technology

Cloud Computing: Still Being Defined

Computers in a network, providing

service.

Users with network access.

Convenient remote computer

rental.

In any quantity.

. . .

“Feels” local.

A technical or business innovation?

(2)

NIST Working Cloud Definition (1 of 3)

5 Key Characteristics

1

On-demand self service

4

Elasticity

$

×

Jan Feb Mar …… Dec

)

$(

=

renting takes minutes

×

Jan

$(

)

2

Ubiquitous network access

rent it in any quantity

5

Resource pooling

anywhere / any device

3

Metered use

off off on

=

conserve resources reduces cost

Some controversy

Information Technology Laboratory

NIST

National Institute of

Computer Security Division Standards and Technology

NIST Working Cloud Definition (2 of 3)

3 Deployment Models

Cloud Provider

Cloud Customer

Admin control Application e.g., mail Limited Admin control

1

Software

Middleware e.g., .Net

as a Service

Total control Operating System No control

(SaaS)

Hardware

Application

2

Platform

Admin control Limited programmability Middleware

as a Service

Operating System

No control

(PaaS)

Total control

Hardware

Application

3

Infrastructure

Total control

No control Middleware

as a Service

Operating System

(IaaS)

Hypervisor No control Admin control Hardware

Information Technology Laboratory

NIST

National Institute of

(3)

National Institute of Standards and Technology

Information Technology Laboratory

Computer Security Division

NIST

NIST Working Cloud Definition (3 of 3)

4 Delivery Models

Internal

1

Community

2

Public

3

Cloud Provider Infrastructure

Cloud Customer Data Center

Hybrid

4

management

some controversy

some controversy

A few more Cloud Aspects

1

There are two basic kinds of clouds:

Storage Clouds

Processing Clouds

Maybe keep data encrypted.

Need plaintext, keys, or both

interoperation

2

3

Both

require

extremely

fast

&

reliable

&

secure

&

low-cost

networking

.

Clouds are a good fit for very large scale processing/storage, using new algorithms:

Map Reduce

Bigtable

Google File System

(4)

Why Care?

1

2 3

Clouds capture economies of scale.

In 2006, large data center cost advantage: 5.7 to 7.1 times. Credit: [Ham], summarized in [Arm].

Clouds can locate computing close to low-cost power, land.

Clouds make it easier to provision for actual (fluctuating) loads.

Provide the illusion of infinite resources (to customers). If there is demand diversity.

Clouds enable rapid, low commitment, infrastructure for short term (or new) projects.

Customer 1 Resource demand: Customer 2 Resource demand: time time Cloud data center fixed capacity: time 4 National Institute of Standards and Technology

Information Technology Laboratory

Computer Security Division

NIST

Who Cares?

• Amazon

• Open Cloud

• Microsoft

Consortium

• Google App Engine

• Vivek Kundra, fed CIO

• Salesforce

• Distributed

• IBM blue cloud

Management Task

Force

• Vmware

• Sun/Oracle

And more.

• Force.com

• …

Credit: http://www.johnmwillis.com/cloud-computing/cloud-vendors-a-to-z-revised/ National Institute of Standards and Technology

Information Technology Laboratory

Computer Security Division

(5)

Sample Cloud Interface (Amazon EC2)

43 customer-callable functions:

Operate your own cloud resources.

(SOAP, Query, command-line)

All operations digitally signed.

Amazon Machine Image: 4

Availability Zones/Regions: 2

Block Store Management: 8

(snapshot)

IP Addresses management: 5

Images: 2

Instances: 4

Key Pairs: 3

Monitoring: 2

Reserved Instances: 3

Security Groups: 5

MS Windows specific: 3

Credit: aws.amazon.com

(not an endorsement)

National Institute of Standards and Technology

Information Technology Laboratory

Computer Security Division

NIST

Information Technology Laboratory

NIST

A Quick Trip Through the (simplified) API

RegisterImage

aws.amazon.com

create account

set password

email confirmation

PEM-encoded

RSA private key

x.509 cert

TLS

CreateKeyPair

Setting up:

Use to talk with new VMs

Configure

storage

Configure

IP addresses

(routable)

Manage

keypairs

Manage

Instances:

run

reboot

terminate

query

DeregisterImage

Steady state (simplified)

Every operation digitally signed.

Every key pair public key stored in the cloud infrastructure.

Credit: [Sos], aws.amazon.com
(6)

Sessi on ke y Priv ate keys Encrypte d chan nel

Key Management

Key Management:

Generating keys

Using keys

Storing keys

Distributing keys

Revoking keys

. . .

Verifying keys

Destroying keys

Bold assertion: there are two basic scenarios:

1

Key management conducted by the cloud infrastructure itself.

2

Key management conducted by computations that have been

entrusted to run in the cloud infrastructure

Information Technology Laboratory

NIST

National Institute of

Computer Security Division Standards and Technology

Speculation: How Keys Might Get Managed

by

a Cloud Infrastructure

Data center

?

Cloud Manager Center

Encrypted channel (possibly distributed)

Generating

Session key (and key distribution center)

Using

User 1 public key

Storing

User 2 public key

Distributing

Encrypted channel Session key

….

User N public key

Revoking

Verifying

Destroying

Data center

Public keys

Large scale driving possibly many data centers.

Dynamic allocation forcing key injection into VMs.

VMVM

VMVM

A big cloud can have centralized certificates.

VM

Credit: [Nur] for inspiration via the Eucalyptus system, and aws.amazon.com.

Information Technology Laboratory

NIST

National Institute of

(7)

Execution Environments for Cloud-Hosted Key

Management

National Institute of Standards and Technology

Information Technology Laboratory

Computer Security Division

NIST

Software

as a Service

(SaaS)

1 Hardware Operating System Application e.g., mail

Platform

as a Service

(PaaS)

2

Infrastructure

as a Service

(IaaS)

3 Middleware Hardware Operating System Application Middleware Hypervisor Operating System Application Middleware Hardware e.g., .Net

Hardware Virtualization

applications

applications

. . .

OS, e.g., Linux OS, e.g., Win32

VM

VM

VMM

hardware

• A simple picture!

• But implementation is complex.

• Virtual Machines (VMs) can be:

• suspended/copied/moved/lost/recovered.

(8)

ring 0 ring 1 ring 2 ring 3 CPU mode x86 ring 0 ring 1 ring 3 ring 0 ring 3

Issue:

Deprivileging

2

Hardware Virtualization

(Simple View)

Terminology

Guest OS : runs only on VMM Host OS : runs only on HW Domain : virtual machine on VMM Hypervisor : virtual machine monitor

1 A A Guest OS (kernel) A A Guest OS (kernel) VMM

In 2000, the Pentium had 250 instructions, 18 that were not virtualizable.

Binary translation, however, could virtualization them anyway.

National Institute of Standards and Technology

Information Technology Laboratory

Computer Security Division

NIST

Making x86 Virtualizable

Using Extra Hardware

Information Technology Laboratory

Computer Security Division

contains ~

595 instructions

.

Data transfer 32 Arithmetic 18 Logical 4 Shift/rotate 9 Bit/byte 23 Control transfer 31 String 18 I/O 8 Enter/leave 2 Flag control 11 Segment register 5 Misc 6

General Purpose

167

Floating Point

94

SIMD

277

System

34

64-bit mode

10

VT-x Extensions

12

Safe mode

1

Data 17 Arithmetic 26 Compare 14 Transcendental 8 Constants 7 Control 20 State management 2 MMX 47 SSE 62 SSE2 69 SSE3 13 SSSE3 32 SSE4 54

Hardware extensions

make the instruction set

virtualizable

Intel version of

x86-64

Intel 64

National Institute of Standards and Technology

(9)

A A Host OS A A Host OS A A Host OS A A Host OS A A Host OS National Institute of Standards and Technology

Information Technology Laboratory

Computer Security Division

NIST

Intel Virtual Machine Extensions

(VMX)

Ring 0

VMXON VMXOFF ring 0 ring 1 ring 2 ring 3 CPU mode

CPU

State

transitions

VMX root

VMM

VMXLAUNCH VMXRESUME VMXCALL “side effects”

VMX non-root

A A Host OS

ring 0

ring 3

Original structure

Legacy software runs in the expected rings, hopefully unaware.

“there is no software-visible bit…indicates…VMX non-root operation”, Intel 64 manual.

Deprivileged (very configurable).

• Many instructions cause fault-like VM exits:

– interrupts – I/O events

– page table management – privileged instructions, etc.

• VMM handles faults • VM exit rate determines

performance

• Address translation is complex

How Complex is Virtualization?

legend

Source Lines Operating system

Of Code

55,000,000

35,000,000

20,000,000

15,000,000

3,000,000

1,000,000

60,000

Debian Linux Virtualization system Windows 2k Windows NT

Red Hat Linux

Windows 95 Windows 3.1 Bochs Kaffe Xen Qemu VirtualBox

1990

2000

2008

VMM code counts generated using David A. Wheeler's “SLOCCount” tool. Windows estimate from Bruce Schneier

Linux estimates from Gonzalez-Barahona et al., and David Wheeler

(10)

VMM Implementation Quality

Should Not be Assumed

In 2007, Tavis Ormandy subjected 6 virtualization systems to guided random

testing of their invalid instruction handling and I/O emulation.

Bochs

QEMU

VMWare

Xen

Anonymous 1

Anonymous 2

178k SLOC 373k SLOC 910k SLOC

All of the systems failed the tests, most with “arbitrary execution” failures.

Device emulation was a particular area of vulnerability.

For details, see: taviso.decsystem.org/virtsec.pdf

Reference: “An Empirical Study into the Security Exposures to Host of Hostile Virtualized Environments,” by Travis Ormandy. taviso.decsystem.org/virtsec.pdf

Code counts generated using David A. Wheeler's “SLOCCount” tool.

Information Technology Laboratory

NIST

National Institute of

Computer Security Division Standards and Technology

Some Cloud Implications

For the cloud infrastructure itself:

Cloud infrastructures can centralize certificate hierarchies, at scale.

Time-based customer eviction may assist with key revocation, destruction.

Within a cloud: one scheme, one owner, one codebase.

Clouds can manage/control (e.g., not lose) VMs.

For computations run in the cloud:

Keys need a safe harbor in the cloud.

Trusted Platform Module (TPM) hard to virtualize.

Remote attestation may not work.

But users may be able to leverage the cloud infrastructure as a trusted party.

E.g., to rely on VM sanitization if promised.

Information Technology Laboratory

NIST

National Institute of

(11)

References

[Arm] M. Armbrust, A. Fox, R. Griffith, A. Joseph, R. Katz, A. Konwinsi, G. Lee, D. Patterson, A. Rabkin, I. Stoica, and M. Zaharia. Above the Clouds: A Berkeley View of Cloud Computing.

www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-28.html [aws] Amazon Web Services, aws.amazon.com.

[Ham] J. Hamilton. Internet-Scale Service Efficiency. N Large-Scale Distributed Systems and Middleware Workshop (Sept. 2008). See also: http://perspectives.mvdirona.com/2008/09/16/InternetScaleServiceEfficiency.aspx [Sos] Robert Sosinski. Starting Amazon EC2 with Mac OS X. http://www.robertsosinski.com/2008/01/26

/starting-amazon-ec2-with-mac-os-x/

[Nur] D. Nurmi, R. Wolski, C. Grzegorczyk, G. Obertelli, S. Soman, L. Youseff, and D. Zagorodnov. The Eucalyptus Open-source Cloud-computing System. open.eucalyptus.com/documents/

nurmi_et_al eucalyptus_open_source_cloud _computing_system-cca_2008.pdf [Wil] http://www.johnmwillis.com/cloud-computing/cloud-vendors-a-to-z-revised/ [Sch] B. Schneier. Applied Cryptography. ISBN 0-471-59756-2. 1993. http://www.dmtf.org/about/cloud-incubator

http://commons.wikimedia.org/wiki/Main_Page. Images.

[Orm] Tavis Ormandy. “An Empirical Study into the Security Exposures to Host of Hostile Virtualized Environments,” taviso.decsystem.org/virtsec.pdf

[Gon] Gonzalez-Barahona et al. “Counting Potatos: The Size of Debian 2.2”. People.debian.org/~jgb/debian-counting. [Whe] David Wheeler. More than a Gigabuck: Estimating GNU/Linux’s Size. http://www.dwheeler.com/sloc/redhat71-v1/redhat71sloc.html

Intel 64 reference manual. http://www.intel.com/products/processor/manuals/

Information Technology Laboratory

NIST

National Institute of

it: http://www.johnmwillis.com/cloud-computing/cloud-vendors-a-to-z-revised www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-28.html : http://perspectives.mvdirona.com/2008/09/16/InternetScaleServiceEfficiency.aspx http://www.robertsosinski.com/2008/01/26 http://www.dmtf.org/about/cloud-incubator http://commons.wikimedia.org/wiki/Main_Page. e. http://www.dwheeler.com/sloc/redhat71 anual. http://www.intel.com/products/processor/manuals

References

Related documents

15 Covariates include the (predetermined) log level of financial assets in 1988, household characteristics in 1994, changes in the current and potential financial circumstances

that prior to scheduling the framing inspection the project architect or residential designer, or another architect or residential design professional, shall provide an

The chain parameter matrix of linear layers is obtained by expressing the electric and magnetic fields by power series expansion.. The validity of the proposed method was verified using

We are requesting 60 hours per week of Instructional Specialist time to further decrease wait time, allow for expansion of the MLC program in Marina, and ensure adequate access

Timothy Richards and Paul Patterson (Arizona State University) investigated supermarket retailer behavior in the selling and buying of Washington apples, California oranges,

must be factored in and considered from scratch, resulting in includ- ing Big Data Analytics as a mode of processing personal data collected as part of the informa- tion provided

In order to address this further, the BIC project are examining how the combination of their International Advisory Group and supporting working groups could