21
Secure Data Management in Trusted Computing Ulrich K¨ uhn Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU Leuven) Stefan Lucks (U Mannheim) Ahmad-Reza Sadeghi (RU Bochum) Christian St¨ uble (RU Bochum) CHES 2005 1

Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

Secure Data Management inTrusted Computing

Ulrich KuhnDeutsche Telekom Laboratories, TU Berlin

Klaus Kursawe (KU Leuven)Stefan Lucks (U Mannheim)

Ahmad-Reza Sadeghi (RU Bochum)Christian Stuble (RU Bochum)

CHES 2005

1

Page 2: Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

Roadmap

Introduction

Problems with Sealed Data

Platform Updates

Hardware Migration

Conclusion

2

Page 3: Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

TCG’s Proposal for Trusted Computing

Trusted Computing Group: Industry consortium to devolopspecifications to

[...] protect and strengthen the computing platformagainst software-based attacks.

Key Idea: Base Trusted Computing Base on small pieceof secure hardware.

Recent developments: TNC

Our Motivation: TCG hardware widely deployed→ Combine with secure operating systems to increase securityHere: Address problems and propose solutions.

3

Page 4: Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

Trusted Platform Module

Main components:

I Cryptographic engine

I Non-volatile tamper resistant storageI Storage Root Key SRK → virtual shielded storage

I Endorsement Key

I Platform Configuration Registers PCRI write access only via Extend operation

Needs support by Trusted Software inside TCB.

4

Page 5: Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

Main TCG Mechanisms

I Integrity measurementI Establish platform configuration at boot time

I AttestationI Attest platform configuration to remote partyI (Subset of) PCRs signed with Attestation Identity Key

I SealingI Exclusive availability of information for certain

configurationsI TPM-enforced

I Maintenance for hardware migration

5

Page 6: Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

Integrity & Boot Process

Establish Chain of Trust for TCB:

I Start from the Core Root of Trust

I Measure: c ← SHA1(next software chunk)

I Extend PCR: PCR i ← SHA1(PCR i , c)

I Execute software chunkI might enter another measure-extend-execute cycle

Results:

I PCRs specific for current platform configuration

I Link between PCRs and software / security properties?

I Changed software not blocked but detected

6

Page 7: Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

Architecture of Trustworthy Platforms

Use TCB comprised of hardware and software:

OS OS OS

Trusted Software Layer

Hardware Layer

Ap

p 1

Ap

p 2

Ap

p 3

Ap

p 4

Ap

p 5

Ap

p 6

TPM

I TPM

I Trusted software

I OS runs on top

7

Page 8: Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

Sealing

Places data in encrypted blob:

I Availability of data depends on predefined PCR values

I TPM delivers data only if those PCRs are present

I otherwise data remains encrypted

Usage Scenarios:

I Cryptographic keys for accessing networks

I Documents, Media files, etc.

Key question:What happens to sealed data when patching the TCB?

8

Page 9: Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

Roadmap

Introduction

Problems with Sealed DataPlatform UpdatesHardware Migration

Platform Updates

Hardware Migration

Conclusion

9

Page 10: Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

Sealed Data & Platform Updates

Consequences of integrity measurement:

I Changing software in TCB changes hashes

I Results in changed PCR values

I Unseal does not release sealed data

I Intended for malicious / non-trustworthy “TCB”

I What about patches?I Typically preserve security propertiesI Should close security holes

Cannot distinguish good and bad changes!

10

Page 11: Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

Sealed Data & Hardware Migration

Maintenance procedure:

I Process is optional

I To our knowledge not implemented in existing TPMs

I Works only for TPMs of same vendor

I Needs interaction with vendorI Vendor out of business?I Price?

Availability of sealed data when HW breaks?

11

Page 12: Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

Roadmap

Introduction

Problems with Sealed Data

Platform UpdatesSoftware-Supported UpdatesTPM-Supported UpdatesProperty-Based Sealing

Hardware Migration

Conclusion

12

Page 13: Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

Platform Updates

Requirements for a patched TCB:

I Security: Remote party wants that new platformconfiguration still adheres to security policy.

I Availability: Owner / User wants information availableafter patch.

Our solutions:

I Software-supported

I TPM-supported

I Property-based sealing

13

Page 14: Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

Software-Supported Updates

TCB component “Update Manager”:

OS OS OS

Trusted Software Layer

Hardware Layer

Ap

p 1

Ap

p 2

Ap

p 3

Ap

p 4

Ap

p 5

Ap

p 6

TPM

I Keep record of sealed data blobs

I Know new PCR values

I Ensure adherence to security policyI Signature by Trusted Third Party → Key management

I Be fail-safe

Pros & Cons:

I Works with current TCG hardware

I Handles only data sealed for current configuration

I Requirements for TCB design

I Difficult for parallel OS instances, e.g. bootloader updates

14

Page 15: Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

TPM-Supported Updates

Key ideas:

OS OS OS

Trusted Software Layer

Hardware Layer

Ap

p 1

Ap

p 2

Ap

p 3

Ap

p 4

Ap

p 5

Ap

p 6

TPM

I New TPM command TPM UpdateSeal:I Data sealed for Si is resealed for Sj

I Delegate decision on equivalence of PCR values Si and Sj

I Trusted Third Party issues update certificate

certupdate = Sign(Si , Sj)

Pros & Cons:

I New TPM command, but should be easy to implement

I Avoids problems of software-only solution

15

Page 16: Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

Property-Based Sealing

Key Ideas:

OS OS OS

Trusted Software Layer

Hardware Layer

Ap

p 1

Ap

p 2

Ap

p 3

Ap

p 4

Ap

p 5

Ap

p 6

TPM

I Seal data for abstract propertiesI e.g. “Strong Process Isolation”

I Mapping between properties and binary measurements

Pros & Cons:

I Better model for security functionality

I Resolves problems with handling sealed data

I Hides concrete binary measurements → privacy

I To do: describe useful properties

16

Page 17: Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

Implementing Property-Based Sealing

Use TPM-support for property-based sealing:

I Describe properties by abstract configuration

I Data is sealed for abstract configurations only

I TPM UpdateSeal translates to binary measurements

I Update certificate states that configuration implementssecurity properties

Pros & Cons:

I Elegant solution for update problem

I Avoids discrimination of operating systems

17

Page 18: Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

Roadmap

Introduction

Problems with Sealed Data

Platform Updates

Hardware MigrationRequirementsMigration Protocol

Conclusion

18

Page 19: Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

Migrating to another Hardware Platform

Requirements for TPM migration:

I Completeness: Move secret state of source TPM todestination TPM; clear source afterwards.

I Security: Migration only if destination TPM at least assecure as source TPM.→ Delegate decision to trusted third party.

I Fairness: openly specified processI No need for interaction with vendor

19

Page 20: Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

Design of Migration Protocol

Key ideas:

I Secure export of non-volatile memory etc. under SRK

I Delegate decision on equivalent security of TPMsI Trusted TPM Migration Authority TMAI Migration certificate on TPM identities (endorsement

keys) EK s and EK d

certmig = Sign(Hash(EK s),Hash(EK d))

I Special export mode for source TPM that allows only:I Extract SRK s encrypted under EK d

I Clear TPM

20

Page 21: Secure Data Management in Trusted Computing · 2008-01-12 · Secure Data Management in Trusted Computing Ulrich Kuh¨ n Deutsche Telekom Laboratories, TU Berlin Klaus Kursawe (KU

Summary and Conclusion

I Update & migration problems with sealed data

I Proposed solutions for update issueI Software-onlyI TPM-supportedI Property-based sealingI Combining TPM-supported with property-based solution

I Proposed secure & fair migration protocolI Improves over currently optional maintenance feature

I Ongoing work: TC-project at RU Bochum implementsproperty-based sealing and attestation, see

www.emscb.org

21