37
1 Privacy Enhancing Technologies Elaine Shi Lecture 5 Trusted Computing

Privacy Enhancing Technologies

  • Upload
    riona

  • View
    46

  • Download
    0

Embed Size (px)

DESCRIPTION

Privacy Enhancing Technologies. Lecture 5 Trusted Computing. Elaine Shi. Roadmap. Background on Trusted Computing Whole-system, load-time attestation Fine-grained, run-time attestation or verifiable program execution. Trusted Computing & TPM. Trusted Computing Group. - PowerPoint PPT Presentation

Citation preview

Page 1: Privacy Enhancing Technologies

1

Privacy Enhancing Technologies

Elaine Shi

Lecture 5 Trusted Computing

Page 2: Privacy Enhancing Technologies

2

Roadmap

• Background on Trusted Computing

• Whole-system, load-time attestation

• Fine-grained, run-time attestation or verifiable program execution

Page 3: Privacy Enhancing Technologies

3

Trusted Computing & TPM

Page 4: Privacy Enhancing Technologies

4

Trusted Computing Group

• Founded in 1999, evolved since then• Core members

– AMD, HP, IBM, Intel, Microsoft, Sun• Who’s Who of product vendors

– ARM, Dell, Phoenix, VeriSign, RSA, Texas Instruments, Maxtor, Seagate, National Semi, Toshiba, France Telecom, Fujitsu, Adaptec, Philips, Ricoh, Nvidia

• http://www.trustedcomputinggroup.org

Adapted from V. Shmatikov

Page 5: Privacy Enhancing Technologies

5

• Why do we want to do this?• Applications?

What code is running on a remote system?

How do you verifiably execute a program on a remote host?

Page 6: Privacy Enhancing Technologies

6

• To establish trust in a remote system• To establish a TCB on a remote system

What code is running on a remote system?

How do you verifiably execute a program on a remote host?

Page 7: Privacy Enhancing Technologies

7

• SETI@HOME• Enterprise network management• Platform for private data• Secure BGP routing• Secure cryptographic setup

What code is running on a remote system?

How do you verifiably execute a program on a remote host?

Page 8: Privacy Enhancing Technologies

8

Whole-system, Load-time attestation

IMA [Sailer et. al.]

Page 9: Privacy Enhancing Technologies

9

Page 10: Privacy Enhancing Technologies

10

Page 11: Privacy Enhancing Technologies

11

Page 12: Privacy Enhancing Technologies

12

Page 13: Privacy Enhancing Technologies

13

Pros and Cons

-Hash may be difficult to verify Heterogeneous software versions and configs Proprietary software

- System may be compromised at run-time

+ Load-time attestation can be used to verifiably load a small TCB

whose security can be formally verified

Page 14: Privacy Enhancing Technologies

14

Fine-Grained, Run-time Attestation (a.k.a. verified execution)

Flicker [McCune et. al.]TrustVisor [McCune et. al.]

Page 15: Privacy Enhancing Technologies

15

Problem Overview

OS

App App… SS

DMA Devices(Ex: Network, Disk, USB)

CPU, RAM,Chipset

Page 16: Privacy Enhancing Technologies

16

OS

App App…

DMA Devices(Ex: Network, Disk, USB)

CPU, RAM,Chipset

• Run arbitrary code with maximum privileges

• Subvert devices

• Perform limited hardware attacks– E.g., Power cycle the machine– Excludes physically monitoring CPU-

to-RAM communication

Problem Overview

S

Adversary Capabilities

Page 17: Privacy Enhancing Technologies

17

Previous Work: Persistent Security Layers

OS

App App… S

Security KernelVirtual Machine Monitor

Hardware

S

Hardware

[Gold et al. ‘84], [Shockley et al. ‘88], [Karger et al. ‘91], [England et al. ‘03], [Garfinkel et al. ‘03], …

Page 18: Privacy Enhancing Technologies

18

Previous Work: Persistent Security Layers

[Gold et al. ‘84], [Shockley et al. ‘88], [Karger et al. ‘91], [England et al. ‘03], [Garfinkel et al. ‘03], …

DMA Devices(Ex: Network, Disk, USB)

CPU, RAM,Chipset

OS

App App…

S

Virtual Machine Monitor

1. Performance reduction2. Increased attack exposure3. Additional complexity

Drawbacks:

Page 19: Privacy Enhancing Technologies

19

Hardware

OS

App App…

OS Hardware

App App…

Flicker

S

[IEEE S&P ‘07], [EuroSys ‘08], [ASPLOS ‘08]

Flicker Overview: On-Demand Security

Page 20: Privacy Enhancing Technologies

20

OS

• Full HW access• Full performance

Hardware

App1

App…

Flicker: An On-Demand Secure Environment[IEEE S&P ‘07], [EuroSys ‘08], [ASPLOS ‘08]

InsecureOS Hardware

App App…

Flicker

S

• Full secrecy• Full isolation• Minimal trust• Minimal

complexity

Secure

Page 21: Privacy Enhancing Technologies

21

CPURAM Flicker

OSModule

Secure Context Switching

RAM

App …

CPU

App

S

Allow?S

LateLaunch

App

Module

OS

App …

Module

App

CPULate

LaunchS

InputsSFlickerFlicker

S OutputsModule

1.Request Flicker

2.Late Launch

3.Application Code Execution

4.Resume OS

Steps:

Page 22: Privacy Enhancing Technologies

22

OS

App …

Module

App

CPURAM

Module

Page 23: Privacy Enhancing Technologies

23

Flicker

LateLaunch

S

Inputs

Outputs

Must be unforgeable

PreventsAdditions

Must be tamper-proof

How can we convey the log to Alice?

Page 24: Privacy Enhancing Technologies

24

Hardware-Supported Logging

• Provides integrity for append-only logs

• Can digitally sign logs• Equipped with a certificate

of authenticity• Can authenticate that a

Late Launch took place

Trusted Platform Module (TPM)

✓Late

Launch✓

JohnHancoc

k

LateLaunch

Page 25: Privacy Enhancing Technologies

25

Flicker

LateLaunch

S

Inputs

Outputs

Page 26: Privacy Enhancing Technologies

26

Attestation

random #

✓random #

JohnHancockJohn

Hancock

Guarantees freshness

Guarantees real TPM

Guarantees actual TPM logs

Trustworthy!

Page 27: Privacy Enhancing Technologies

27

Comparison With “Traditional” Attestation

Flicker

LateLaunch

S

InputOutput

FlickerTraditional

BIOS

OS

Bootloader

Drivers 1…NApp 1…N

Key Insight: Late Launch + Fine-Grained Attestations

Fine-Grained Attestations Improve Privacy

Fine-Grained Attestations Simplify Verification

[Gasser et al. ‘89], [Arbaugh et al. ‘97], [Sailer et al. ‘04], [Marchesini et al. ‘04]

Page 28: Privacy Enhancing Technologies

28

OS Hardware

App1

AppN…

Application: Verifiable Malware Scanning

JohnHancock

Run Detector

Flicker

D

Flicker

LateLaunch

D

Inputs

Outputs

JohnHancockOS

Hardware

App1

AppN…✓

Page 29: Privacy Enhancing Technologies

29

Additional Applications

• Improved SSH password handling

• Distributed computing

• Protected CA keys

Page 30: Privacy Enhancing Technologies

30

Pros and Cons?

-Current systems only support one Flicker session at a time TrustVisor addresses this

- Flicker environment is spartan (by design!)No system calls, no interrupts

- Flicker does not guarantee availability

-Flicker is vulnerable to sophisticated HW attacks

-Not scalable for frequent requests

Page 31: Privacy Enhancing Technologies

31

Additional reading: TrustVisor

• μTPM or “software virtual TPM”– Reduce number of calls to hardware TPM– Multiple applications/VMs share the same hardware TPM– Also in [vTPM] work

• Balance between TCB reduction and scalability

Page 32: Privacy Enhancing Technologies

32

Summary

• After 8 years the commercial impact of TCG technology has been negligible– Need killer applications (applications in the cloud?)– Fortunately, there is a vibrant and growing TC research

community

Page 33: Privacy Enhancing Technologies

33

Challenges

• Scalability– New hardware features to reduce virtualization-related overhead– TCB on top of a distributed infrastructure, e.g., Hadoop or

MapReduce?

• Broader goal– A security/privacy platform allowing programmers to easily

develop security/privacy applications?

Page 34: Privacy Enhancing Technologies

34

Limitations

• Physical attacks– Physical attacks are more difficult to launch, and do not scale

• Vulnerabilities in TCB

• Side-channel attacks

Page 35: Privacy Enhancing Technologies

35

Discussion

• Other applications?

• Alternative approaches?

Page 36: Privacy Enhancing Technologies

36

Homework

What do you think are the major challenges of deploying Trusted Computing/code attestation in the cloud?

What is the pros and cons of persistent trusted layer? (e.g. OS, hypervisor)

What is the pros and cons of on-demand secure environment?

Page 37: Privacy Enhancing Technologies

37

Reading list

[McCune et. al. ] Flicker: Minimal TCB Code Execution [Jonathan et. al. ] TrustVisor: Efficient TCB Reduction and Attestation. [Nuno Santos et. al. ] Policy-Sealed Data: A New Abstraction for Building Trusted Cloud Services [Parno et. al. ] Memoir: Practical State Continuity for Protected Modules [Elaine Shi et. al. ] BIND: A Fine-grained Attestation Service for Secure Distributed Systems. [Stefan Berger et.al. ] vTPM: Virtualizing the Trusted Platform Module. [Schiffman et. al. ] Seeding Clouds with Trust Anchors