Trusted Infrastructure

Slides:



Advertisements
Similar presentations
Confidential 1 Phoenix Security Architecture and DevID July 2005 Karen Zelenko Phoenix Technologies.
Advertisements

Copyright© 2006 Trusted Computing Group - Other names and brands are properties of their respective owners. Slide #1 Trusted Computing David Grawrock TPM.
Trusted Platform Module
Vpn-info.com.
1 Trusted Systems in Networking Infrastructure Rafael Mantilla Montalvo Cisco Systems June 2013.
 Alexandra Constantin  James Cook  Anindya De Computer Science, UC Berkeley.
Securing. Agenda  Hard Drive Encryption  User Account Permissions  Root Level Access  Firewall Protection  Malware Protection.
1 Bootstrapping Trust in a “Trusted” Platform Carnegie Mellon University November 11, 2008 Bryan Parno.
CMSC 414 Computer and Network Security Lecture 12 Jonathan Katz.
DESIGNING A PUBLIC KEY INFRASTRUCTURE
16.1 © 2004 Pearson Education, Inc. Exam Planning, Implementing, and Maintaining a Microsoft® Windows® Server 2003 Active Directory Infrastructure.
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 9: Planning and Managing Certificate Services.
Trusted Platform Modules: Building a Trusted Software Stack and Remote Attestation Dane Brandon, Hardeep Uppal CSE551 University of Washington.
Trusted Computing Initiative Beyond trustworthy. Trusted Computing  Five Key Concepts >Endorsement Key >Secure Input and Output >Memory Curtain / Protected.
SEC316: BitLocker™ Drive Encryption
Copyright © Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE USC CSci599 Trusted Computing Lecture Three.
Copyright © Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE USC CSci599 Trusted Computing Lecture notes.
Trusted Computing Platform Alliance – Introduction and Technical Overview – Joe Pato HP Labs MIT 6.805/ October 2002.
Digital Signature Xiaoyan Guo/ Xiaohang Luo/
X-Road (X-tee) A platform-independent secure standard interface between databases and information systems to connect databases and information systems.
Chapter 10: Authentication Guide to Computer Network Security.
Session Agenda Designed to address BIOS Limitations Needed for the larger server platforms (Intel-HP Itanium) First called Intel Boot Initiative.
Trusted Computing BY: Sam Ranjbari Billy J. Garcia.
Week #7 Objectives: Secure Windows 7 Desktop
Trusted Computing Platform Alliance
An approach to on the fly activation and deactivation of virtualization-based security systems Denis Efremov Pavel Iakovenko
Cosc 4765 Trusted Platform Module. What is TPM The TPM hardware along with its supporting software and firmware provides the platform root of trust. –It.
Computer Networking From LANs to WANs: Hardware, Software, and Security Chapter 13 FTP and Telnet.
An Introduction to Trusted Platform Technology Siani Pearson Hewlett Packard Laboratories, UK
Trusted Computing and the Trusted Platform Module Bruce Maggs (with some slides from Bryan Parno)
Trusted Infrastructure Xiaolong Wang, Xinming Ou Based on Dr. Andrew Martin’s slides from TIW 2013.
Security fundamentals Topic 5 Using a Public Key Infrastructure.
Creating and Managing Digital Certificates Chapter Eleven.
Trusted Computing and the Trusted Platform Module Bruce Maggs (with some slides from Bryan Parno)
1 Information Security – Theory vs. Reality , Winter Lecture 12: Trusted computing architecture (cont.), Eran Tromer Slides credit:
What is BitLocker and How Does It Work? Steve Lamb IT Pro Evangelist, Microsoft Ltd
SSL: Secure Socket Layer By: Mike Weissert. Overview Definition History & Background SSL Assurances SSL Session Problems Attacks & Defenses.
Computer Security module October 2008 Mark D. Ryan HP Labs, Bristol University of Birmingham Trusted Platform Module (TPM) introduction.
Pertemuan #12 Pretty Good Privacy (Pretty Good Privacy) Kuliah Pengaman Jaringan.
Computer Security module October 2009 Mark D. Ryan University of Birmingham Trusted Platform Module (TPM) introduction.
Trusted? 05/4/2016 Charles Sheehe, CCSDS Security Working Group GRC POC All information covered is from public sources 1.
Key management issues in PGP
Trusted? 05/4/2016 Charles Sheehe, CCSDS Security Working Group GRC POC All information covered is from public sources.
Web Applications Security Cryptography 1
Hardware-rooted Trust for Secure Key Management & Transient Trust
Trusted Computing and the Trusted Platform Module
Chapter Objectives In this chapter, you will learn:
Operating System Review
SSL Certificates for Secure Websites
Hardware security: The use of a Trusted Platform Module
Cryptography and Network Security
Trusted Computing and the Trusted Platform Module
Outline What does the OS protect? Authentication for operating systems
PV204 Security technologies
THE STEPS TO MANAGE THE GRID
S/MIME T ANANDHAN.
Outline What does the OS protect? Authentication for operating systems
Introduction to Computers
CS691 M2009 Semester Project PHILIP HUYNH
Operating System Review
TERRA Authored by: Garfinkel, Pfaff, Chow, Rosenblum, and Boneh
Building hardware-based security with a Trusted Platform Module (TPM)
CS691 M2009 Semester Project PHILIP HUYNH
Message Digest Cryptographic checksum One-way function Relevance
Lecture 4 - Cryptography
Intel Active Management Technology
TPM, UEFI, Trusted Boot, Secure Boot
Bruce Maggs (with some slides from Bryan Parno)
Bruce Maggs (with some slides from Bryan Parno)
Presentation transcript:

Trusted Infrastructure Xiaolong Wang, Xinming Ou Based on Dr. Andrew Martin’s slides from TIW 2013

Problem We use different devices (smartphone, laptop, tablet, Xbox, router…) and grant them with authority everyday (Gmail/Facebook account, credit card, personal info, etc.) How it can know if it really did what it said? By using it we have to explicitly or implicitly trust. But shall we trust it? Do we have the confidence to say we trust it?

Scenario Install the correct version of gcc package on Linux Verify md5 compare with md5sum on website Is this actually making an MD5 of the nominated file? verifying the package relies on the correct operation of the utility verifying the verifier relies on the correct operation of the shell ... and the OS verifying the correct operation of the OS relies on ... lower level stuff what am I really relying on? Am I executing /usr/bin/md5sum? Is the shell behaving as I expect?

What is Trust? According to RFC4949 “trusted” is TCG notion: A feeling of certainty (sometimes based on inconclusive evidence) either that the system will not fail or that system meets its specifications (the system does what it claims to do and does not perform unwanted functions). TCG notion: An entity can be trusted if it always behave in the expected manner for the intended purpose. Trust != Secure

Trustworthy System A system that not only is trusted, but also warrants that trust because the system’s behavior can be validated in some convincing way, such as through formal analysis or code review.

TCB Think of a system you use. What is the extent of its Trusted Computing Base (TCB)? Large parts of (or most, or all) of the operating system fall within TCB The operating system is inherently trusted – it is a great big root of trust.

PC Attack Surface Pre-boot (BIOS, UEFI) Firmware, option ROMs Management functions (SMM, SMI) OS kernel Kernel-mode drivers Application software and drivers Peripherals Etc.

Kinds of Solution

Building Trust in a System

Roots and Chains

Goal We want to achieve hardware-like trust characteristics in a software programmable system Implement hardware-based roots of trust Control secret keys Control platform identity Building chains of trust which indicate/manage what software is running Report platform state reliably And/or launch only white-listed software

Trusted Computing Group TCG is a non-profit organization (former TCPA) formed to address the concerns about the lack of security of personal computers connected to the Internet.

TCG Approach

Building a Record of Platform

Remarks This process gives us a measured boot process Any component in the chain can gain confidence about the components below/before it by querying the TPM – implies transitive trust in components

Architecture: Roots of Trust

Trusted Platform Module TPM is a computer chip that can securely store artifacts used to authenticate the platform. That’s all about theory part now is the reality

TPM Components TPM is not an active components, always a responder to a request and never initiates an interrupt

TPM Core Functionality Non-volatile storage: Endorsement key (EK) Storage root key (SRK) Monotonic counters Volatile storage: Other keys, authentication session, configuration registers Computational functions: Crypto, genuine random, key generation Shielded locations: An area where data is protected against interference from the outside exposure. Protected Capabilities: The set of commands with exclusive permission to access shielded location

Trusted Platform Module TPM is the component at the heart of the vision of Trusted Infrastructure Root of trust for storage Root of trust for reporting Root of trust for measurement* *(with BIOS or other chipset components)

Role of TPM in Measurement

Protected Storage TPM is a Root of Trust for Storage Does not store all secrets directly Store one secret used to protect other secrets

Protected storage (cont.)

TPM Keys Endorsement key (EK) Storage root key (SRK) Storage Keys Unique platform identity Created by manufacture in a secure environment Non-migratable, store inside chip, cannot be remove Storage root key (SRK) 2048 bit RSA key Top level element of TPM hierarchy Created during take ownership Non-migratable, store inside chip cannot be remove Storage Keys RSA keys used to encrypt other elements in the TPM key hierarchy Created during user initialization Signature Keys RSA keys used for signing operating A leaf in the TPM key hierarchy

Endorsement Key EK, an RSA key pair composed of a public key and private key The key TPM uses in its roles as Root of Trust for Reporting Critical: trust in all keys in the system come down to the trust in EK The EK is used to recognize a genuine TPM The EK is used to decrypt information sent to a TPM in the Privacy CA and DAA protocols, and during the installation of an owner in the TPM

Platform Identity and Endorsement The Endorsement key is held in TPM: Gives the platform a unique identity Asserts the platform credentials Root of Trust for Reporting is intended to substantiate claims Assurance that it contains a correctly-implemented TPM Evidence that the embedding of that TPM within the platform conforms to an evaluated design

Storage Root Key (SRK) The key that the TPM uses in its role as Root of Trust Storage Used to protect other key and data via encryption Can protect other storage keys: hierarchy or protection SRK generated and held in TPM when take ownership Key blobs can be encrypted for storage in untrusted locations All other key created by the TPM have their private halves encrypted by the SRK and are stored outside the TPM

Loading TPM Keys Load signing key into TPM to use it for signing operation Establish entire key chain up to SRK Decrypt private key of storage key using the private SRK Require SRK usage secret

Attestation Identity Key (AIK) Solution to privacy problem is to allow platform to have arbitrarily many attestation identity keys Process of signing these involves EK – so can check platform credential (typically a digital certificate) and a Privacy CA (trusted third party) In use the AIK has no reference to EK Each AIK is bound to platform and protected by root of trust for storage AIK is certified by a privacy CA

Privacy CA

Windows 8 Boot Process Source: Securing the Windows 8 Boot Process Firmware rootkits. These kits overwrite firmware of the PC’s basic input/output system or other hardware so the rootkit can start before Windows. Bootkits. These kits replace the operating system’s bootloader (the small piece of software that starts the operating system) so that the PC loads the bootkit before the operating system. Kernel rootkits. These kits replace a portion of the operating system kernel so the rootkit can start automatically when the operating system loads. Driver rootkits. These kits pretend to be one of the trusted drivers that Windows uses to communicate with the PC hardware. Source: Securing the Windows 8 Boot Process

Countermeasures Secure Boot. PC first verifies that the firmware is digital signed, the firmware examines the bootloader’s digital signature. Bootloader was signed using a trusted certificate or use has manually approved the bootloader’s digital signature Trusted Boot. The bootloader verifies the digital signature of the windows 8 kernel before loading it. And kernel in turn verifies every other component of windows startup process(boot drivers, startup files and ELAM) ELAM exam non-Microsoft boot drivers and determine whether it is on the list of trusted drivers. Source: Securing the Windows 8 Boot Process

Countermeasures (cont.) Measured Boot PC’s UEFI stores in the TPM a hash of the firmware, bootloader, boot drivers, and everything else 2. At the end of the startup process, Widows starts non-Microsoft remote attestation client. 3. TPM uses the server’s key to sign the log record Source: Securing the Windows 8 Boot Process

Source: Securing the Windows 8 Boot Process