Uni-directional Trusted Path: Transaction Confirmation on Just One Device

65
System Security Lab Uni-directional Trusted Path: Transaction Confirmation on Just One Device Atanas Filyanov 1 , Jonathan M. McCune 2 , Ahmad-Reza Sadeghi 3 , Marcel Winandy 1 1 Ruhr-University Bochum, Germany 2 Carnegie Mellon University, USA 3 Technical University Darmstadt, Germany DSN 2011 - 41st Annual IEEE/IFIP International Conference on Dependable Systems and Networks Hong Kong, China, 27-30 June 2011 Dienstag, 28. Juni 2011

Transcript of Uni-directional Trusted Path: Transaction Confirmation on Just One Device

Page 1: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Uni-directional Trusted Path:Transaction Confirmation

on Just One DeviceAtanas Filyanov1, Jonathan M. McCune2,Ahmad-Reza Sadeghi3, Marcel Winandy1

1 Ruhr-University Bochum, Germany2 Carnegie Mellon University, USA

3 Technical University Darmstadt, Germany

DSN 2011 - 41st Annual IEEE/IFIP International Conference on Dependable Systems and NetworksHong Kong, China, 27-30 June 2011

Dienstag, 28. Juni 2011

Page 2: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Motivation• Malware can have strong power on commodity systems

• Keyloggers, transaction generators, ... (commit online fraud)

• Credit card companies, banks absorb most liabilities

• Users have disincentive to solve the problem

• Even e-commerce servers are under attack!

• Sony: attackers have eventually stolen credit card data from several customers

• Recently similar attacks at other game companies

2

Dienstag, 28. Juni 2011

Page 3: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Motivation• Malware can have strong power on commodity systems

• Keyloggers, transaction generators, ... (commit online fraud)

• Credit card companies, banks absorb most liabilities

• Users have disincentive to solve the problem

• Even e-commerce servers are under attack!

• Sony: attackers have eventually stolen credit card data from several customers

• Recently similar attacks at other game companies

2

If all had used our proposed solution,there would have been no problem! :-)

Dienstag, 28. Juni 2011

Page 4: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Threat Scenario

• Typical scenarios: online purchases, online banking,e-government, enrollment for online services, etc.

3

issue transaction request transaction

request confirmationrequest confirmation

ServerUser Client System

confirmation confirmation

Dienstag, 28. Juni 2011

Page 5: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Threat Scenario

• Typical scenarios: online purchases, online banking,e-government, enrollment for online services, etc.

3

issue transaction request transaction

request confirmationrequest confirmation

ServerUser Client System

confirmation confirmation

Adversary

• Adversary: controls network traffic and controls client system• only software attacks (no hardware tampering)

Dienstag, 28. Juni 2011

Page 6: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Threat Scenario

• Typical scenarios: online purchases, online banking,e-government, enrollment for online services, etc.

3

issue transaction request transaction

request confirmationrequest confirmation

ServerUser Client System

confirmation confirmation

Adversary

• Adversary: controls network traffic and controls client system• only software attacks (no hardware tampering)

Dienstag, 28. Juni 2011

Page 7: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Threat Scenario

• Typical scenarios: online purchases, online banking,e-government, enrollment for online services, etc.

3

issue transaction request transaction

request confirmationrequest confirmation

ServerUser Client System

confirmation confirmation

Adversary

• Adversary: controls network traffic and controls client system• only software attacks (no hardware tampering)

Dienstag, 28. Juni 2011

Page 8: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Threat Scenario

• Typical scenarios: online purchases, online banking,e-government, enrollment for online services, etc.

3

issue transaction request transaction

request confirmationrequest confirmation

ServerUser Client System

confirmation confirmation

Adversary

• Adversary: controls network traffic and controls client system• only software attacks (no hardware tampering)

Dienstag, 28. Juni 2011

Page 9: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Threat Scenario

• Typical scenarios: online purchases, online banking,e-government, enrollment for online services, etc.

3

issue transaction request transaction

request confirmationrequest confirmation

ServerUser Client System

confirmation confirmation

Adversary

• Adversary: controls network traffic and controls client system• only software attacks (no hardware tampering)

?Server cannot distinguish

between transactions issued/confirmed by user or malware

Dienstag, 28. Juni 2011

Page 10: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Our Goals

• Assurance to a remote server that a user indeed confirmed a proposed action

• Technical solution without additional devices,but compatible to existing operating systems

• Minimal/no deviation from normal user experience

• Assumption:Client System hardware provides some form of secure execution environment

4

Dienstag, 28. Juni 2011

Page 11: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Our Goals

• Assurance to a remote server that a user indeed confirmed a proposed action

• Technical solution without additional devices,but compatible to existing operating systems

• Minimal/no deviation from normal user experience

• Assumption:Client System hardware provides some form of secure execution environment

4

Available on commodity platforms:PC: Intel TXT, AMD SVMMobile: ARM TrustZone; Playstation3: Cell BE

Dienstag, 28. Juni 2011

Page 12: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

Idea of the Uni-directional Trusted Path

Dienstag, 28. Juni 2011

Page 13: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Full Trusted Path

Properties:

1. Isolation of I/O channels(integrity & confidentiality)

2. Assurance for user about authenticity of application

3. Assurance for application about user-generated input

6

User

Application12 3

Application

Application

Client System

OS

Dienstag, 28. Juni 2011

Page 14: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Trusted Path: Existing Approaches

• Secure GUI (reserved screen area)

• Requires a secure OS

• Secure Attention Sequence (e.g., Ctrl+Alt+Delete)

• Requires OS kernel to remain uncompromised

• Additional hardware indicators (e.g., color LED)

• Requires OS kernel to remain uncompromised

7

Dienstag, 28. Juni 2011

Page 15: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Trusted Path: Existing Approaches

• Secure GUI (reserved screen area)

• Requires a secure OS

• Secure Attention Sequence (e.g., Ctrl+Alt+Delete)

• Requires OS kernel to remain uncompromised

• Additional hardware indicators (e.g., color LED)

• Requires OS kernel to remain uncompromised

7

No widespread adoption, or lack of interest from users(also: usability unclear)

Dienstag, 28. Juni 2011

Page 16: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Server

Uni-directional Trusted Path (UTP)Properties:

1. Isolation of I/O channels(integrity & confidentiality)

2. Assurance for user about authenticity of application

3. Assurance for application about user-generated input

8

User

3

Application

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

UTP Agent1

Dienstag, 28. Juni 2011

Page 17: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Server

Uni-directional Trusted Path (UTP)Properties:

1. Isolation of I/O channels(integrity & confidentiality)

2. Assurance for user about authenticity of application

3. Assurance for application about user-generated input

8

User

3

Application

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

UTP Agent1

Dienstag, 28. Juni 2011

Page 18: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Server

Uni-directional Trusted Path (UTP)Properties:

1. Isolation of I/O channels(integrity & confidentiality)

2. Assurance for user about authenticity of application

3. Assurance for application about user-generated input

8

User

3

Application

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

UTP Agent1

• Enable remote server to gain assurance about human-initiated action

• Based on CPU‘s capability to switch between untrusted and secure execution mode

• UTP is only available in Secure Execution Mode:

• Isolated execution environment and control of user I/O devices

• Ability to provide evidence to remote system what has executed in this mode

Dienstag, 28. Juni 2011

Page 19: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

Transaction Confirmation with UTP

Dienstag, 28. Juni 2011

Page 20: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Transaction Initiation

10

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

UTP Agent

ServerUser

I/O Devices

Dienstag, 28. Juni 2011

Page 21: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Transaction Initiation

10

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

UTP Agent

ServerUser

I/O Devices

1. issuestransaction

Dienstag, 28. Juni 2011

Page 22: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Transaction Initiation

10

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

UTP Agent

2. requests transaction

ServerUser

I/O Devices

1. issuestransaction

Dienstag, 28. Juni 2011

Page 23: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Transaction Initiation

10

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

UTP Agent

2. requests transaction

3. requests confirmation(conf. message)

ServerUser

I/O Devices

1. issuestransaction

Dienstag, 28. Juni 2011

Page 24: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Transaction Confirmation

11

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

3. requests confirmation(conf. message)

ServerUser

I/O Devices

Dienstag, 28. Juni 2011

Page 25: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Transaction Confirmation

11

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

3. requests confirmation(conf. message)

ServerUser

I/O Devices

Dienstag, 28. Juni 2011

Page 26: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Transaction Confirmation

11

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

3. requests confirmation(conf. message)

ServerUser

I/O Devices UTP Agent

Dienstag, 28. Juni 2011

Page 27: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Transaction Confirmation

11

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

3. requests confirmation(conf. message)

ServerUser

I/O Devices UTP Agent(conf. message)

Dienstag, 28. Juni 2011

Page 28: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Transaction Confirmation

11

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

3. requests confirmation(conf. message)

ServerUser

I/O Devices

4. show conf. message+ request confirmation

UTP Agent(conf. message)

Dienstag, 28. Juni 2011

Page 29: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Transaction Confirmation

11

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

3. requests confirmation(conf. message)

ServerUser

I/O Devices

4. show conf. message+ request confirmation

5. confirm/abort

UTP Agent(conf. message)

Dienstag, 28. Juni 2011

Page 30: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Transaction Confirmation

11

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

3. requests confirmation(conf. message)

ServerUser

I/O Devices

4. show conf. message+ request confirmation

5. confirm/abort

UTP Agent(conf. message)

confirm/abort

Dienstag, 28. Juni 2011

Page 31: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Transaction Confirmation

11

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

3. requests confirmation(conf. message)

ServerUser

I/O Devices

4. show conf. message+ request confirmation

5. confirm/abort

6. attestation evidence:- UTP Agent integrity measurement- conf. message from server- confirm/abort from user

UTP Agent(conf. message)

confirm/abort

Dienstag, 28. Juni 2011

Page 32: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Transaction Confirmation

11

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

3. requests confirmation(conf. message)

ServerUser

I/O Devices

4. show conf. message+ request confirmation

5. confirm/abort

6. attestation evidence:- UTP Agent integrity measurement- conf. message from server- confirm/abort from user

UTP Agent(conf. message)

confirm/abort

Uni-directional Trusted Path

Dienstag, 28. Juni 2011

Page 33: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Transaction Confirmation

11

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

3. requests confirmation(conf. message)

ServerUser

I/O Devices

4. show conf. message+ request confirmation

5. confirm/abort

6. attestation evidence:- UTP Agent integrity measurement- conf. message from server- confirm/abort from user

UTP Agent(conf. message)

confirm/abort

Dienstag, 28. Juni 2011

Page 34: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Transaction Confirmation

11

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

3. requests confirmation(conf. message)

ServerUser

I/O Devices

4. show conf. message+ request confirmation

5. confirm/abort

6. attestation evidence:- UTP Agent integrity measurement- conf. message from server- confirm/abort from user

7. accept/discard

UTP Agent(conf. message)

confirm/abort

Dienstag, 28. Juni 2011

Page 35: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Transaction Confirmation

11

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

3. requests confirmation(conf. message)

ServerUser

I/O Devices

4. show conf. message+ request confirmation

5. confirm/abort

6. attestation evidence:- UTP Agent integrity measurement- conf. message from server- confirm/abort from user

7. accept/discard

Dienstag, 28. Juni 2011

Page 36: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Transaction Confirmation

11

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

3. requests confirmation(conf. message)

ServerUser

I/O Devices

4. show conf. message+ request confirmation

5. confirm/abort

6. attestation evidence:- UTP Agent integrity measurement- conf. message from server- confirm/abort from user

7. accept/discard

Dienstag, 28. Juni 2011

Page 37: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Transaction Confirmation

11

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

3. requests confirmation(conf. message)

ServerUser

I/O Devices

4. show conf. message+ request confirmation

5. confirm/abort

6. attestation evidence:- UTP Agent integrity measurement- conf. message from server- confirm/abort from user

7. accept/discard

8. show result

Dienstag, 28. Juni 2011

Page 38: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Security Considerations• Transaction generated by malware

12

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

UTP Agent

1. requests transaction

2. requests confirmation(conf. message)

ServerUser

I/O Devices(conf. message)

Dienstag, 28. Juni 2011

Page 39: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Security Considerations• Transaction generated by malware

12

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

UTP Agent

1. requests transaction

2. requests confirmation(conf. message)

ServerUser

I/O Devices

unexpected(conf. message)

(conf. message)

Dienstag, 28. Juni 2011

Page 40: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Security Considerations• Transaction generated by malware

12

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

UTP Agent

1. requests transaction

2. requests confirmation(conf. message)

ServerUser

I/O Devices

unexpected(conf. message)

(conf. message)

User will notice(unexpected transaction)

Dienstag, 28. Juni 2011

Page 41: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

UTP Agent

Security Considerations• Transaction manipulation + manipulated UTP agent

13

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU 2. requests transaction

3. requests confirmation(conf. message)

ServerUser

I/O Devices

(conf. message)

1. issuestransaction

Dienstag, 28. Juni 2011

Page 42: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

UTP Agent

Security Considerations• Transaction manipulation + manipulated UTP agent

13

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

UTP Agent

2. requests transaction

3. requests confirmation(conf. message)

ServerUser

I/O Devices

(conf. message)

1. issuestransaction

Dienstag, 28. Juni 2011

Page 43: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

UTP Agent

Security Considerations• Transaction manipulation + manipulated UTP agent

13

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

UTP Agent

2. requests transaction

3. requests confirmation(conf. message)

ServerUser

I/O Devices(conf. message)

1. issuestransaction

Dienstag, 28. Juni 2011

Page 44: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

UTP Agent

Security Considerations• Transaction manipulation + manipulated UTP agent

13

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

UTP Agent

2. requests transaction

3. requests confirmation(conf. message)

ServerUser

I/O Devices

expected(conf. message)

(conf. message)

1. issuestransaction

Dienstag, 28. Juni 2011

Page 45: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

UTP Agent

Security Considerations• Transaction manipulation + manipulated UTP agent

13

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

UTP Agent

2. requests transaction

3. requests confirmation(conf. message)

ServerUser

I/O Devices

expected(conf. message)

(conf. message) 6. attestation evidence:- UTP Agent integrity measurement- conf. message from server- confirm/abort from user

1. issuestransaction

Dienstag, 28. Juni 2011

Page 46: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

UTP Agent

Security Considerations• Transaction manipulation + manipulated UTP agent

13

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU

UTP Agent

2. requests transaction

3. requests confirmation(conf. message)

ServerUser

I/O Devices

expected(conf. message)

(conf. message)

Server will notice and reject(UTP integrity violation)

6. attestation evidence:- UTP Agent integrity measurement- conf. message from server- confirm/abort from user

1. issuestransaction

Dienstag, 28. Juni 2011

Page 47: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Security Considerations• Transaction manipulation + faked confirmation dialog

14

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU 2. requests transaction

3. requests confirmation(conf. message)

ServerUser

I/O Devices

1. issuestransaction

Dienstag, 28. Juni 2011

Page 48: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Security Considerations• Transaction manipulation + faked confirmation dialog

14

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU 2. requests transaction

3. requests confirmation(conf. message)

ServerUser

I/O Devices

1. issuestransaction

4. faked conf. message

Dienstag, 28. Juni 2011

Page 49: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Security Considerations• Transaction manipulation + faked confirmation dialog

14

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU 2. requests transaction

3. requests confirmation(conf. message)

ServerUser

I/O Devices 6. attestation evidence:- ???

1. issuestransaction

4. faked conf. message

Dienstag, 28. Juni 2011

Page 50: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Security Considerations• Transaction manipulation + faked confirmation dialog

14

Browser

Client System

Secure Execution Mode

Untrusted Execution Mode

OS

CPU 2. requests transaction

3. requests confirmation(conf. message)

ServerUser

I/O Devices

Server will notice and reject(no UTP execution)

6. attestation evidence:- ???

1. issuestransaction

4. faked conf. message

Dienstag, 28. Juni 2011

Page 51: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Setup: Device Enrollment

• Server knows that a human confirmed a transaction

• But how does the server know which user?

• Solution: binding the device to the user account

• Requires to register user devices in a setup phase

• Establishes a cryptographic credential to perform login(e.g. public key protected by Secure Execution Mode)

• Protects against misuse of stolen account data!

• Attackers cannot use data (e.g. credit card number) becausetheir devices are not registered with that account at the server

15

Dienstag, 28. Juni 2011

Page 52: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

Realization of UTP

Dienstag, 28. Juni 2011

Page 53: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

PC-Based Implementation• Evidence attestation: Trusted Platform Module (TPM)

• Hardware root of trust (secure storage for keys; cryptographic operations)

• PCRs: registers that can be extended with integrity measurements of code

• Attestation: cryptographic signature of PCRs with a TPM-protected key

• Secure Execution Mode: Intel Trusted Execution Technology (TXT)

• Late Launch creates dynamic root of trust (DRTM)

• Reinitializes CPU and memory controller into known-good state

• Resets dynamic PCRs of the TPM (only CPU can reset these registers)

• Software framework: Flicker

• Allows to execute very small code in DRTM mode (without any OS)

• During DRTM mode, normal OS is halted; after switch back, OS is resumed

17

Dienstag, 28. Juni 2011

Page 54: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Implementation Architecture

18

Web Browser

Client Utility Program

CPU Secure Mode

ServerClient

Verification Program

OS FlickerLaunch

UTP Agent

TPM

HTTPS

Extension

CPU (Intel TXT) Webserver Application

Script Extension

Dienstag, 28. Juni 2011

Page 55: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Implementation Architecture

18

Web Browser

Client Utility Program

CPU Secure Mode

ServerClient

Verification Program

OS FlickerLaunch

UTP Agent

TPM

HTTPS

Extension

CPU (Intel TXT) Webserver Application

Script Extension

+ 488 LOC

Dienstag, 28. Juni 2011

Page 56: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Implementation Architecture

18

Web Browser

Client Utility Program

CPU Secure Mode

ServerClient

Verification Program

OS FlickerLaunch

UTP Agent

TPM

HTTPS

Extension

CPU (Intel TXT) Webserver Application

Script Extension

+ 488 LOC

+ 956 LOC(non-TCB)}

Dienstag, 28. Juni 2011

Page 57: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Implementation Architecture

18

Web Browser

Client Utility Program

CPU Secure Mode

ServerClient

Verification Program

OS FlickerLaunch

UTP Agent

TPM

HTTPS

Extension

CPU (Intel TXT) Webserver Application

Script Extension

+ 488 LOC

+ 956 LOC(non-TCB)}2335 LOC

(TCB)

Dienstag, 28. Juni 2011

Page 58: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Screenshot (Transaction Initiation)

19

Dienstag, 28. Juni 2011

Page 59: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Screenshot (Transaction Initiation)

19

Dienstag, 28. Juni 2011

Page 60: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Screenshot (Transaction Confirmation)

20

Dienstag, 28. Juni 2011

Page 61: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Evaluation• Code complexity:

• Very small total TCB: 2335 LOC (seL4 about 9000 [Klein et al. SOSP 2009])

• Including VGA and PS/2 keyboard driver (USB would add another 2000)

• Deployment:

• Server-side: only minor modifications necessary

• Client-side: users just need to download UTP software

• Performance:

• Switching time about 1 sec

• Remaining actions: waiting for user input, or in untrusted mode

• Usability:

• Confirmation message should not be simply "Press OK" (user tend to ignore)

• UTP is generic, confirmation message can be provided by service providers

21

Dienstag, 28. Juni 2011

Page 62: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Conclusion

• Existing solutions against transaction generators are inconvenient or not widely deployed

• Our proposal: a one-way trusted path to enable service providers to gain assurance about user-initiated transactions

• Realization based on on-demand isolated execution environment and temporal control of user I/O devices

• Very small TCB and compatible to existing software

• Deployable on commodity systems today

22

Dienstag, 28. Juni 2011

Page 63: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Questions?

Contact:

Marcel WinandyRuhr-University Bochum

[email protected]://www.trust.rub.deTwitter: @mwinandy

23

Dienstag, 28. Juni 2011

Page 64: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

BACKUP

Dienstag, 28. Juni 2011

Page 65: Uni-directional Trusted Path: Transaction Confirmation on Just One Device

System Security Lab

Marcel Winandy Uni-directional Trusted Path: Transaction Confirmation on Just One Device (DSN 2011)

Implementation of UTP with Flicker

25

Dienstag, 28. Juni 2011