16
presented by Evolving Hardware-Based Security: Firmware Transition to TPM 2.0 UEFI Summerfest – July 15-19, 2013 Dick Wilkins, Ph.D. Phoenix Technologies, Ltd. UEFI Summerfest July 2013 www.uefi.org 1 Updated 2011-06-01

Evolving Hardware-Based Security: Firmware Transition to TPM 2 · PDF filepresented by Evolving Hardware-Based Security: Firmware Transition to TPM 2.0 UEFI Summerfest –July 15-19,

Embed Size (px)

Citation preview

Page 1: Evolving Hardware-Based Security: Firmware Transition to TPM 2 · PDF filepresented by Evolving Hardware-Based Security: Firmware Transition to TPM 2.0 UEFI Summerfest –July 15-19,

presented by

Evolving Hardware-Based Security: Firmware Transition to TPM 2.0

UEFI Summerfest – July 15-19, 2013Dick Wilkins, Ph.D.

Phoenix Technologies, Ltd.

UEFI Summerfest – July 2013 www.uefi.org 1

Updated 2011-06-01

Page 2: Evolving Hardware-Based Security: Firmware Transition to TPM 2 · PDF filepresented by Evolving Hardware-Based Security: Firmware Transition to TPM 2.0 UEFI Summerfest –July 15-19,

Agenda

• Introduction

• Background

• Why TPM 1.2 to 2.0

• Differences

• Phoenix’s model

• Wrap-up & Questions

UEFI Summerfest – July 2013 www.uefi.org 2

Page 3: Evolving Hardware-Based Security: Firmware Transition to TPM 2 · PDF filepresented by Evolving Hardware-Based Security: Firmware Transition to TPM 2.0 UEFI Summerfest –July 15-19,

Introduction

• The Trusted Computing Group upgraded their Trusted Platform Module spec from 1.2 to 2.0. We’re going to talk about:– Briefly, what is a TPM?– What’s different in 2.0– What does this mean to firmware (BIOS)?

• Note: UEFI does not require TPM and only mentions TPM/TCG as an “FYI” external reference in the UEFI spec– So why do we care?

UEFI Summerfest – July 2013 www.uefi.org 3

Page 4: Evolving Hardware-Based Security: Firmware Transition to TPM 2 · PDF filepresented by Evolving Hardware-Based Security: Firmware Transition to TPM 2.0 UEFI Summerfest –July 15-19,

Background

• A TPM is:

– Tamper-resistant functionality, state and operations (hardware and/or software)

–Protected storage for keys and certificates

–Platform Configuration Registers (PCRs)

–Cryptographic engine

–And more

UEFI Plugfest – February

2012www.uefi.org 4

Page 5: Evolving Hardware-Based Security: Firmware Transition to TPM 2 · PDF filepresented by Evolving Hardware-Based Security: Firmware Transition to TPM 2.0 UEFI Summerfest –July 15-19,

PCRs

• Cannot be written directly– extend(i, v) := pcr[i] ← hash(pcr[i], v)

• Extending PCRs with hashes of code and data during boot can be compared to previous boots

• Firmware created log entries allow detection of “where things went wrong”

• This approach allows “measured” and “authenticated” boot

• This is not the same as “secure boot” as enabled by the UEFI spec

UEFI Plugfest – February

2012www.uefi.org 5

Page 6: Evolving Hardware-Based Security: Firmware Transition to TPM 2 · PDF filepresented by Evolving Hardware-Based Security: Firmware Transition to TPM 2.0 UEFI Summerfest –July 15-19,

Sealed Storage

• Sealing uses TPM cryptographic support with PCRs to provide secure storage– “sealing” provides a key, a set of PCR values

and some data

– The result of sealing is a “blob” of data• That can only be unsealed by the TPM that

sealed it

• Can only be unsealed if the current PCRs match those used to seal the data

UEFI Plugfest – February

2012www.uefi.org 6

Page 7: Evolving Hardware-Based Security: Firmware Transition to TPM 2 · PDF filepresented by Evolving Hardware-Based Security: Firmware Transition to TPM 2.0 UEFI Summerfest –July 15-19,

TPM 2.0 algorithm flexibility

TPM 1.2

• Support for three algorithms– SHA1 – hash

– RSA – asymmetric

– XOR – symmetric

– AES is allowed in limited cases

TPM 2.0

• Support for:– Any hash algorithm with a

fixed digest size

– Any asymmetric algorithm that has a public and private portion

– Any symmetric algorithm

UEFI Summerfest – July 2013 www.uefi.org 7

Page 8: Evolving Hardware-Based Security: Firmware Transition to TPM 2 · PDF filepresented by Evolving Hardware-Based Security: Firmware Transition to TPM 2.0 UEFI Summerfest –July 15-19,

Why is this important?

• SHA1 is considered unsuitable for future use

• Just changing to another hash algorithm was not a long term solution

• Regional differences require that a single asymmetric solution was not acceptable– USA – Suite B

– China – ‘Suite C’ (SM3, SMS4, 256-bit ECC curve)

– Russia – GOST

– Germany – Brainpool

– expect this list to grow

UEFI Plugfest – February

2012www.uefi.org 8

Page 9: Evolving Hardware-Based Security: Firmware Transition to TPM 2 · PDF filepresented by Evolving Hardware-Based Security: Firmware Transition to TPM 2.0 UEFI Summerfest –July 15-19,

What else?

• A long list of additional functionality requested by users

• A list of little used and deprecated functionality to be removed

• Resolved confusing TPM enablement, activation and ownership (solved largely with later client interface specs)

UEFI Plugfest – February

2012www.uefi.org 9

Page 10: Evolving Hardware-Based Security: Firmware Transition to TPM 2 · PDF filepresented by Evolving Hardware-Based Security: Firmware Transition to TPM 2.0 UEFI Summerfest –July 15-19,

Relatively Easy Transition

• Same command/response paradigm

• Very similar command format

• 1 to 1 relationship between many old and new commands

TPM_* ~= TPM2_*

UEFI Plugfest – February

2012www.uefi.org 10

Page 11: Evolving Hardware-Based Security: Firmware Transition to TPM 2 · PDF filepresented by Evolving Hardware-Based Security: Firmware Transition to TPM 2.0 UEFI Summerfest –July 15-19,

Simplifies Usage

• Removed the confusing enabled/activated/disabled/deactivated states– It’s either there or not there (ACPI table)

– If present, it can be used by firmware even if not exposed to the OS

• The end user meets fewer prompts–Only required to authorize TPM clear

UEFI Plugfest – February

2012www.uefi.org 11

Page 12: Evolving Hardware-Based Security: Firmware Transition to TPM 2 · PDF filepresented by Evolving Hardware-Based Security: Firmware Transition to TPM 2.0 UEFI Summerfest –July 15-19,

Differences examples

• With removal of enabled/activated states– The TPM no longer tracks Physical Presence

states internally that firmware must manage

• TPM clear is implemented – with appropriate Physical Presence – by:– a TPM2_ClearControl command

–And then TPM2_Clear

UEFI Plugfest – February

2012www.uefi.org 12

Page 13: Evolving Hardware-Based Security: Firmware Transition to TPM 2 · PDF filepresented by Evolving Hardware-Based Security: Firmware Transition to TPM 2.0 UEFI Summerfest –July 15-19,

Second example

• Extend difference

– For TPM 1.2, a PCR Extend includes only the hash digest value

– For TPM 2.0, an Extend includes a list of one or more hash digests with algorithm identifiers

• Intended to allow Extends of more than one bank of PCRs

UEFI Plugfest – February

2012www.uefi.org 13

Page 14: Evolving Hardware-Based Security: Firmware Transition to TPM 2 · PDF filepresented by Evolving Hardware-Based Security: Firmware Transition to TPM 2.0 UEFI Summerfest –July 15-19,

Phoenix’s Implementation

• One driver supports 1.2 and 2.0 TPMs– If 2.0 is not detected, fall back to 1.2

• A low-level communication protocol abstracts the device–Hardware or firmware TPMs appear

identical to the driver

• Our understanding is Windows 8 has a similar TPM abstraction for applications

UEFI Plugfest – February

2012www.uefi.org 14

Page 15: Evolving Hardware-Based Security: Firmware Transition to TPM 2 · PDF filepresented by Evolving Hardware-Based Security: Firmware Transition to TPM 2.0 UEFI Summerfest –July 15-19,

Closing Remarks

Questions?

UEFI Plugfest – February

2012www.uefi.org 15

Page 16: Evolving Hardware-Based Security: Firmware Transition to TPM 2 · PDF filepresented by Evolving Hardware-Based Security: Firmware Transition to TPM 2.0 UEFI Summerfest –July 15-19,

Thanks for attending the UEFI Summerfest 2013

For more information on the Unified EFI Forum and UEFI Specifications, visit http://www.uefi.org

presented by

UEFI Summerfest – July 2013 www.uefi.org 16