KISS: “Key it Simple and Secure” Corporate Key Management Zongwei Zhou, Jun Han, Yue-‐Hsun Lin, Adrian Perrig, Virgil Gligor ECE Department and CyLab, Carnegie Mellon University June 2013
MoUvaUon • Deployment of cryptographic systems and protocols (e.g., HTTPS) has grown rapidly
2
MoUvaUon • Key management is a fundamental building block of all cryptosystems • Even experts fall prey to inadequate key management mechanisms – DigiNotar CA: keys are misused to issue cerUficates which enabled HTTPS man-‐in-‐the-‐ middle a[acks – Stuxnet: rogue device drivers were digitally signed by keys stolen from two high-‐tech companies 3
Challenges • Fine-‐grained Key-‐Usage Control – Does an applicaUon executed by a user have permission to access a certain key?
• Secure System AdministraUon – CommunicaUon between administrators and the Key Management System (KMS) must be authenUcated – Stealing authenUcaUon credenUals ? – Insider a[acks? 4
ExisUng SoluUons • Hardware Security Module (HSMs) – Limited control of key usage Tamper-‐proof physical protecUon
ApplicaUons
Computer
OperaUng System
HSM 5
ExisUng SoluUons • Hardware Security Module (HSMs) – Limited control of key usage – Large TCB for system administraUon UI Dev UI Dev
Mgmt Client
Admin Device
Mgmt Client UI Dev
Computer
OperaUng System
Management Module
HSM 6
ExisUng SoluUons SoHware-‐only SoluJons • Deployment of KMS so_ware on commodity servers • Large TCB – Key protecUon, usage control and administraUon all rely on untrustworthy operaJng system services (e.g., process isolaUon, file system permissions) 7
System Goals • Small and Simple TCB dedicated to KSM • Cost-‐effecUve • Secure System Bootstrap • Secure System AdministraUon • Fine-‐grained Key Usage Control
8
A[acker Model • Malware and Malicious Administrators a[empt to leak, compromise, or misuse cryptographic keys. Malicious Admins
9
System Design KISS Client
KISS Server
ApplicaJons
Server Bootstrap
Key Usage Control
Remote AdministraUon Client Bootstrap KISS Manager Trusted Admin Devices (TADs) 10
Micro-‐Hypervisor Architecture • Unified for server, client and manager App App Untrusted Commodity OS
KISS So_ware
KISS ApplicaUon
KISS Hypervisor TAD Other KISS machines
USB NIC
Trusted Path Trusted HW
11
DisUnct Features • Secure System Bootstrap • Secure System AdministraUon • Fine-‐grained Key Usage Control
12
System Bootstrap • Server bootstrap
Public Key
Private Key
TAD Extended Remote ARestaJon Protocol
Server SoHware
KISS Server
TPM
TAD
TAD 13
Extended Remote A[estaUon • TPM Quote includes KISS hypervisor, server so_ware, server public key, TAD public key list • Each TAD verifies: – Its own key is in the received TAD public key list – Length of the key list = # of TADs
• Minimum administrator effort – Checks that all TADs display success messages
• Security Analysis (e.g., Sybil a[acks) 14
System AdministraUon • e.g., remote verificaUon of server output (1) OUTPUT & Sig(OUTPUT) from KISS server
Sig(OUTPUT) Hash(OUTPUT) Manager So_ware
Untrusted Commodity OS
Hash(OUTPUT)
Hypervisor
Display
(3) TAD verifies Sig(OUTPUT) using server public key, and display Hash(OUTPUT)
TAD KISS Manager
(2) Manager display OUTPUT and Hash(OUTPUT) via trusted path
(4) Admin uses TAD to remotely a[est to KISS manager so_ware and hyprevisor (5) Admin confirms that two Hash(OUTPUT) match 15
System AdministraUon • Small and Simple TAD – So_ware: a[estaUon, msg auth and bootstrap – Hardware: bu[ons, display … – Usability: hash comparison – Used for local/remote and input/output
16
Key Usage Control (2) KISS app is protected and verified by Hypervisor
KISS ApplicaUon
Client So_ware
Untrusted Commodity OS
Hypervisor Display
(1) User selects the KISS applicaUon to execute (4) User remotely a[ests to the Client So_ware and Hypervisor
UserV
Auth Dev
Client (3) Client So_ware displays app informaUon via trusted path for user confirmaUon
(5) User authenUcates to Client so_ware
17
Key Usage Control • UserV helps defend against subtle a[acks – e.g., stealing authenUcaUon credenUals, or sensiUve user input
• UserV is much simpler than TAD – Only performs remote a[estaUon – Does not store any secrets
18
Conclusion • A key management system architecture leveraging trusted compuJng techniques on commodity computers • Small TCB: Micro-‐hypervisor-‐based design and lightweight administrator devices. • Secure system bootstrap and administraUon, fine-‐grained key usage control – Defend against malware and insider a[acks 19
Thanks!
[email protected]
20