adaptive isolation for...

30
Adaptive Isolation for Security Patrick Schaumont Virginia Tech Dagstuhl Seminar 16441 1 November 2016 1

Upload: others

Post on 29-Sep-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

Adaptive Isolationfor Security

Patrick SchaumontVirginia Tech

Dagstuhl Seminar 164411 November 2016

1

Page 2: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

Objective

1. Contemporary Secure ComputingAn Example: Trusted Medical Applications

2. Building Blocks of Secure Computing- Attacker Models- Trust

3. Isolation for Security in Practice- Lightweight Isolation using SANCUS- Server-class Isolation using SGX

4. Open Issues

2

Page 3: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

Implantable/Wearable Medical Devices

3

Hearing Implant

Pacemaker

Insulin Pump

Neuro Stimulator

Activity Tracker

Fall Detector

Blood Pressure

Sensing Actuation Control

Insulin Pump Glucose Level Insulin Open-loop

(programmer)

Defibrillator Heart Rate Shock Closed-loop

External

Internal

dd

Ref. [2]

Page 4: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

Implantable/Wearable Medical Devices

4

Hearing Implant

Pacemaker

Insulin Pump

Neuro Stimulator

Activity Tracker

Fall Detector

Blood Pressure

Body Area Network

Inductive (200 KHz)MICS (401 MHz)

Bluetooth (2.4 GHz)Zigbee (2.4 GHz)

PAN (2.4 GHz)

Gateway

“The Cloud”

Internet

Doctor

Patient Patient Record StoragePatient Record Analysis

Real Time MonitoringReal Time Control

Page 5: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

Computers Everywhere!

5

8-bit AVR100KHz8KB/2KB

16-bit MSP4302MHz24KB/4KB

32-bit ARM Cortex M200MHz1MB/64K

64-bit ARM Cortex A53Quad Core800MHz2GB

Intel Skylake6x Quad Core3GHz24GB Main16TB Secondary

HeartbeatAnomaly

Data bits have a uniform privacy/security concern

Page 6: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

Medical Data and IMD Concerns

6

Security

Safety

Privacy

• Data confidentialitystorage + transmission

• Data access authorization• Data origin authentication• Data integrity• Data & device availability

• Device access• Device update

• Device existence, type, ID• Link patient identity, device data• Device tracking, fingerprinting

Ref. [1]

Page 7: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

Isolation

7

Payroll

PatientPatient

Patient

DDR

D$

Core

MedicApp

Yahoo Finance

Facebook

IsolatedData Stream

(~confidentiality)

UnlinkableRecords

(~privacy)

IsolatedStorage

IsolatedExecution

Web Devel

Page 8: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

Two (or more...) worlds of secure computing

8

Simple Architecture Extremely Complex

Statically-stored Secrets Ephemeral Secrets

Architecture Isolation is add-on Architecture Isolation is built-in

Computation (Crypto) is slow Computation (Crypto) is fast

Microcontrollers Servers

Page 9: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

Objective

1. Contemporary Secure ComputingAn Example: Trusted Medical Applications

2. Building Blocks of Secure Computing- Attacker Models- Trust

3. Isolation for Security in Practice- Lightweight Isolation using SANCUS- Server-class Isolation using SGX

4. Open Issues

9

Page 10: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

Trust

10

TrustedUntrustedTrust Boundary

Trusted = to behave as expectedUntrusted = we don’t know what will happen

Page 11: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

Attacker Models

An Attacker Model describes how the Adversary may breach trust boundary

11

OS

Hardware

I/O

TaskSecure

Task Task

I/O Attacker Model• Manipulate or Control all I/O

to secure task

Machine Code Attacker Model• Interact, directly or indirectly,

with memory image of secure task

Hardware Attacker Model• Observe or influence task

implementation effects

Ref. [3]

Page 12: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

Countermeasures anticipate Attack Models

12

Attack Model Countermeasure

Machine Code Task Isolation• Virtual Machines• Sandboxing• Protected Module Architectures

Hardware • Masking/TI• Fault Tolerance• Secure Scan/Debug

I/O Memory Safety• Stack Canaries• Data Execution Prevention• Address Space Layout Randomization

Countermeasures always come with overhead on performance and/or implementation cost.

Security is never free.

Page 13: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

Trust and Isolation

13

Assuming an Attacker Model implies choosingwhat you trust and what you do not trust

Abstraction Achieving Trust Example

Information and Data Information Security Encryption & DecryptionSigning & Verification

Programs Trusted Computing Base Isolated Execution

Physical Implementation Physical Security Side-channel Countermeas.

TrustedUntrustedTrust Boundary

Isolation is one (but not the only) way to achieve trust

Page 14: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

InfoSec = Isolation + Interaction

How does isolation help in achieving security?

• Isolation is a central concept to achieve confidentiality guarantees in a secure implementation

• But completely isolated architectures have no useful security policy (Alice is lonely without Bob)

14

Key KeyKey Exchange

Encrypt Decrypt

Isolation for EncryptionIsolation for Key StorageCommunication for Key Exchange

Protocol Level (multi-architecture)

Page 15: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

Objective

1. Contemporary Secure ComputingAn Example: Trusted Medical Applications

2. Building Blocks of Secure Computing- Attacker Models- Trust

3. Isolation for Security in Practice- Lightweight Isolation using SANCUS- Server-class Isolation using SGX

4. Open Issues

15

Page 16: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

Two (or more...) worlds of isolation

16

Microcontrollers Servers

Driving Example:SANCUS

Driving Example:SGX

Measuring Integrity -> Remote or Local Attestation

Page 17: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

Integrity

• Symmetric Setting

17Ref. [5]

Page 18: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

Integrity

• Asymmetric Setting

18Ref. [5]

Alice’sCertificate

CertificateAuthority

Page 19: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

Freshness

19Ref. [5]

Page 20: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

Attestation

20Ref. [5]

Data Owner’s Computer gets assurance that it is talking to a Secure Container with specific Code, Data

Page 21: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

SANCUS: Secure System Model

21Ref. [4]

• Infrastructure Provider IPmanages Micro-Controller Node N

• Software Provider SPdeploy Software SM

• Adversary can control all software

• Adversary can control all communications

• Hardware is Trusted

Page 22: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

SANCUS: Security Properties

22Ref. [4]

1. (HW Enforced) Isolation of SM + designated entry points

2. Remote Attestationfor SM to SP

3. Secure CommunicationAuth, Integrity, Freshness between SM to SP

4. SM on same node can securely communicate

Page 23: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

SANCUS: Isolation

23

SM Text

SM Data

text end

text start

data end

data start

Module Identity M

MSP430 Memory Map • A secure module SM• code section with entry points• data section

• Hardware-enforcedmemory access control

1. protected code access hasprotected data

2. protected code has controlled entry point

• Dedicated Instructions

protect SP, layout

unprotect

Page 24: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

SANCUS: Privileged Communications

24

SM Text

SM Data

Node Key KN

text end

text start

data end

data start

Provider Key KN,SP = kdf(KN, SP)

Module Key KN,SP,M = kdf(KN, SP, M)

Module Identity M

HardwareRoot of Trust

MSP430 Memory Map

• Dedicated InstructionMAC-seal start, length, result

• Remote Attestation• SP sends nonce• SM replies MAC using KN,SP,M

• Integrity• SM self-MAC using KN,SP,M

• SM MAC over result using KN,SP,M

Page 25: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

SGX: Secure System Model

25

Untrusted: bios, drivers, kernel, hypervisor

Trusted:Hardware (Intel CPU)Enclave (SW App)

Ref. [5]

Page 26: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

SGX Enclave

• Integrity, Confidentiality on Code and Data

• Controlled Entry Points

• Handling of Faults, Interrupts, Syscalls

• Support Multiple Processors, threads

• Access control on Physical Memory pages allocated to Enclaves

• Encryption of Swapped Pages

26

Virtual Memory Map

Enclave

Process

Code, Data+ SECS

Page 27: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

SGX Enclave Application Scenario

27Ref. [6]

1. Launch and Measurement2. Attestation of Platform, Enclave3. Provisioning Sensitive Data4. Sealing of Data5. Software Upgrade

Lifecycle

Page 28: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

Objective

1. Contemporary Secure ComputingAn Example: Trusted Medical Applications

2. Building Blocks of Secure Computing- Attacker Models- Trust

3. Isolation for Security in Practice- Lightweight Isolation using SANCUS- Server-class Isolation using SGX

4. Open Issues

28

Page 29: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

Open Challenges

• While performance can quantified (MB/s, MIPS, ...), security is hardly quantified

• Security Level, FIPS-140 Level

• What is the meaning of resource overhead for a secure architecture?

• What are good metrics for secure computing?

• Formal proofs and properties?

• Performance of primitive secure operations?

• What are the orthogonal properties of secure computing?

• If isolation is property #1, what are the others?

• Can we classify secure computer architectures?29

Page 30: Adaptive Isolation for Securitymaterials.dagstuhl.de/files/16/16441/16441.PatrickSchaumont.Slides… · MedicApp Yahoo Finance Facebook Isolated Data Stream (~confidentiality) Unlinkable

References

1. Michael Rushanan, Aviel D. Rubin, Denis Foo Kune, Colleen M. Swanson: SoK: Security and Privacy in Implantable Medical Devices and Body Area Networks. IEEE Symposium on Security and Privacy 2014: 524-539.

2. Wayne Burleson, Shane S. Clark, Benjamin Ransford, Kevin Fu: Design challenges for secure implantable medical devices. DAC 2012: 12-17.

3. Frank Piessens, Ingrid Verbauwhede: Software security: Vulnerabilities and countermeasures for two attacker models. DATE 2016: 990-999.

4. Job Noorman, Pieter Agten, Wilfried Daniels, Raoul Strackx, Anthony Van Herrewege, Christophe Huygens, Bart Preneel, Ingrid Verbauwhede, Frank Piessens: Sancus: Low-cost Trustworthy Extensible Networked Devices with a Zero-software Trusted Computing Base. USENIX Security Symposium 2013: 479-494.

5. Victor Costan, Srinivas Devadas: Intel SGX Explained. IACR Cryptology ePrint Archive 2016: 86 (2016).

6. Ittai Anati, Shay Gueron, Simon Johnson, Vincent Scarlata: Innovative Technology for CPU Based Attestation and Sealing. Proceedings of the 2nd International Workshop on Hardware and Architectural Support for Security and Privacy, HASP 2013.

30