Adaptive Isolation for Security Patrick Schaumont Virginia Tech - - PowerPoint PPT Presentation

adaptive isolation
SMART_READER_LITE
LIVE PREVIEW

Adaptive Isolation for Security Patrick Schaumont Virginia Tech - - PowerPoint PPT Presentation

Adaptive Isolation for Security Patrick Schaumont Virginia Tech Dagstuhl Seminar 16441 1 November 2016 1 Objective 1. Contemporary Secure Computing An Example: Trusted Medical Applications 2. Building Blocks of Secure Computing - Attacker


slide-1
SLIDE 1

Adaptive Isolation for Security

Patrick Schaumont Virginia Tech Dagstuhl Seminar 16441 1 November 2016

1

slide-2
SLIDE 2

Objective

  • 1. Contemporary Secure Computing

An 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

slide-3
SLIDE 3

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

d d

  • Ref. [2]
slide-4
SLIDE 4

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 Storage Patient Record Analysis Real Time Monitoring Real Time Control

slide-5
SLIDE 5

Computers Everywhere!

5

8-bit AVR 100KHz 8KB/2KB 16-bit MSP430 2MHz 24KB/4KB 32-bit ARM Cortex M 200MHz 1MB/64K 64-bit ARM Cortex A53 Quad Core 800MHz 2GB Intel Skylake 6x Quad Core 3GHz 24GB Main 16TB Secondary Heartbeat Anomaly Data bits have a uniform privacy/security concern

slide-6
SLIDE 6

Medical Data and IMD Concerns

6

Security Safety Privacy

  • Data confidentiality

storage + 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]
slide-7
SLIDE 7

Isolation

7

Payroll Patient Patient Patient

DDR D$

Core MedicApp

Yahoo Finance

Facebook

Isolated Data Stream (~confidentiality) Unlinkable Records (~privacy) Isolated Storage Isolated Execution Web Devel

slide-8
SLIDE 8

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

slide-9
SLIDE 9

Objective

  • 1. Contemporary Secure Computing

An 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

slide-10
SLIDE 10

Trust

10

Trusted Untrusted Trust Boundary

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

slide-11
SLIDE 11

Attacker Models

An Attacker Model describes how the Adversary may breach trust boundary

11

OS Hardware I/O Task Secure 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]
slide-12
SLIDE 12

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.

slide-13
SLIDE 13

Trust and Isolation

13

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

Abstraction Achieving Trust Example Information and Data Information Security Encryption & Decryption Signing & Verification Programs Trusted Computing Base Isolated Execution Physical Implementation Physical Security Side-channel Countermeas. Trusted Untrusted Trust Boundary

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

slide-14
SLIDE 14

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 Key Key Exchange Encrypt Decrypt Isolation for Encryption Isolation for Key Storage Communication for Key Exchange Protocol Level (multi-architecture)

slide-15
SLIDE 15

Objective

  • 1. Contemporary Secure Computing

An 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

slide-16
SLIDE 16

Two (or more...) worlds of isolation

16

Microcontrollers Servers Driving Example: SANCUS Driving Example: SGX Measuring Integrity -> Remote or Local Attestation

slide-17
SLIDE 17

Integrity

  • Symmetric Setting

17

  • Ref. [5]
slide-18
SLIDE 18

Integrity

  • Asymmetric Setting

18

  • Ref. [5]

Alice’s Certificate Certificate Authority

slide-19
SLIDE 19

Freshness

19

  • Ref. [5]
slide-20
SLIDE 20

Attestation

20

  • Ref. [5]

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

slide-21
SLIDE 21

SANCUS: Secure System Model

21

  • Ref. [4]
  • Infrastructure Provider IP

manages Micro-Controller Node N

  • Software Provider SP

deploy Software SM

  • Adversary can control

all software

  • Adversary can control

all communications

  • Hardware is Trusted
slide-22
SLIDE 22

SANCUS: Security Properties

22

  • Ref. [4]
  • 1. (HW Enforced) Isolation
  • f SM + designated entry

points

  • 2. Remote Attestation

for SM to SP

  • 3. Secure Communication

Auth, Integrity, Freshness between SM to SP

  • 4. SM on same node can

securely communicate

slide-23
SLIDE 23

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-enforced

memory access control 1. protected code access has protected data 2. protected code has controlled entry point

  • Dedicated Instructions

protect SP, layout unprotect

slide-24
SLIDE 24

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

Hardware Root of Trust

MSP430 Memory Map

  • Dedicated Instruction

MAC-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
slide-25
SLIDE 25

SGX: Secure System Model

25

Untrusted: bios, drivers, kernel, hypervisor Trusted: Hardware (Intel CPU) Enclave (SW App)

  • Ref. [5]
slide-26
SLIDE 26

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

slide-27
SLIDE 27

SGX Enclave Application Scenario

27

  • Ref. [6]
  • 1. Launch and Measurement
  • 2. Attestation of Platform, Enclave
  • 3. Provisioning Sensitive Data
  • 4. Sealing of Data
  • 5. Software Upgrade

Lifecycle

slide-28
SLIDE 28

Objective

  • 1. Contemporary Secure Computing

An 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

slide-29
SLIDE 29

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

slide-30
SLIDE 30

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