1 making local service discovery confidential with tryst jeffrey pang cmu ben greenstein intel...

43
1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University of Washington Damon McCoy University of Colorado

Post on 15-Jan-2016

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

1

Making Local Service Discovery Confidential with Tryst

Jeffrey PangCMU

Ben GreensteinIntel Research

Srinivasan SeshanCMU

David WetherallUniversity of Washington

Damon McCoyUniversity of Colorado

Page 2: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

2

What is Local Service Discovery?Find a WiFi networkFind a local printerFind my friend’s PSPFind my friend’s iTunes

• Proceeds automatically, often without user’s knowledge• Occurs before security associations are setup

Page 3: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

3

Service Discovery is Widely Used

• Example 1:ApplicationProtocols(OSDI 2006)

• Example 2: 85% devices send WiFi discovery probes(SIGCOMM 2004)

Page 4: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

4

Outline

• Existing mechanisms and their privacy threats

• Solution requirements

• Tryst

Page 5: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

5

Outline

• Existing mechanisms and their privacy threats– Announcement– Probing

• Solution requirements

• Tryst

Page 6: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

6

Method 1: Announcement

• Services broadcast their existence• Interested clients discover them

• E.G., WiFi access points (APs) announce network names

Page 7: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

7

Privacy Threats: Inventory

• “The devices I have”– Example: cell phone pirates

break into cars to steal phones that announce their presence [Cambridge Evening News 2005]

• “The applications I am running”– Example: Apple mDNS

“announces” to hackers that they are vulnerable to a buffer overflow[CERT 2007]

PhoneHere!

iTunes here!iChat here!

Page 8: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

8

Privacy Threats: Location

• “The fact that my service is present”– Example: Common practice to

disable WiFi annoucements to (try to) hide access points[O’Reilly 802.11 Guide]

• “Where my service is located”– Example: Knowledge of network

name at one site can tell you where other sites are [WiGLE Wardriving Database]

IR_Guest

Pittsburgh

Seattle

Berkeley

Cambridge

x

Page 9: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

9

Outline

• Existing mechanisms pose privacy threats– Announcement reveals inventory and location– Probing

• Solution requirements

• Tryst

Page 10: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

10

Outline

• Existing mechanisms pose privacy threats– Announcement reveals inventory and location– Probing

• Solution requirements

• Tryst

Page 11: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

11

Method 2: Probing

• Clients broadcast queries for familiar services• Present services respond

• E.G., WiFi clients probe for network names they have associated with before

Page 12: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

12

Privacy Threats: History• “Where I have been before”

– Example: Probing for network names can expose where you live [WiGLE Wardriving Database]

Is “Anna, Jeff, and Mark’s Net” here?

Page 13: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

13

Privacy Threats: History• “Where I have been before”

– Example: Probing for network names can expose where you live [WiGLE Wardriving Database]

23% of devices at SIGCOMM 2004 probed for an name that WiGLE isolates to one city

All 4 known home networks located towithin ~500 ft

Page 14: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

14

Privacy Threats: History• “Where I have been before”

– Example: Even opaque names can be correlated with other databases, such as Google’s business directory

Is “Juvenile Detention Classroom” here?Is “010294859” here?

010294859

Page 15: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

15

Privacy Threats: Identity

• “Fingerprints who I am”– Example: Both WiFi and application level

probes accurately identify a device[Pang, J. et al. MobiCom 2007]

“IR_Guest”, “djw”, “University of Washington”

“IR_Guest”, “djw”,“University of Washington”= =

………..

Page 16: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

16

More Threats in the Future

• Emerging social devices also offer “services”– Microsoft Zune: music sharing service– PSP, Nintendo DS: multiplayer gaming service

• Service discovery exposes social contacts

Page 17: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

17

Outline

• Existing mechanisms pose privacy threats– Announcement reveals inventory and location– Probing reveals history and identity

• Solution requirements

• Tryst

Page 18: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

18

Outline

• Existing mechanisms pose privacy threats– Announcement reveals inventory and location– Probing reveals history and identity

• Solution requirements

• Tryst

Page 19: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

19

So … Why Use Service Discovery?

• Plug-and-play networking – Setup networks without configuration

Automatic (no user intervention)

• Infrastructure independence– Always works; no special servers required

Broadcast (only need communication medium)

• Key Problem: Before Security Setup No Confidentiality

Page 20: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

20

Solution Requirements

• Provide security during discovery– Anonymity: unlinkable discovery attempts– Authenticity: prevent masquerading

• Challenges– Clients and services want confidentiality– We need mutual authentication before either can

learn of the other’s existence– We can’t rely on manual user action or trusted

infrastructure

Page 21: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

21

Outline

• Existing mechanisms pose privacy threats– Announcement reveals inventory and location– Probing reveals history and identity

• Solution requirements1. Plug-and-play networking2. Infrastructure independence3. Anonymity4. Authenticity

• Tryst

Page 22: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

22

Outline

• Existing mechanisms pose privacy threats– Announcement reveals inventory and location– Probing reveals history and identity

• Solution requirements1. Plug-and-play networking2. Infrastructure independence3. Anonymity4. Authenticity

• Tryst– Access control for discovery messages provides 3 and 4

Page 23: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

23

How to Provide Access Control

Service Discovery Message Verify Source Identity

Sender Application Receiver Application

Proof of Identity

Identity-Hiding Encryption

Page 24: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

24

KAlice

Identity-hiding encryption with Alice’s public key (e.g., ElGamal)

Public Key Protocol

• Existing theoretical public key protocol [Abadi ’04]

K-1Bob

“Bob to Alice at time T”

Digital signature with Bob’s private key (e.g., RSA, DSA)

Service Discovery Message

“Is Alice’s Laptop here?”

Page 25: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

25

???

Public Key Protocol

KBob

K-1Bob

“Bob to Alice at time T” Service Discovery Message

K-1Alice Decrypt with Alice’s private key

Verify with Bob’s public key

• Existing theoretical public key protocol [Abadi ’04]

Page 26: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

26

Efficiency Problems

• Problem 1: Message size scales linearly with number of intended recipients– Typically OK: 90% of WiFi clients probe for fewer than

12 unique network names [OSDI 2006]

• Problem 2: Messages can’t be addressed must try to decrypt every message– Public key decryption is slow– 168x slower than WiFi line-rate – Receivers susceptible to denial-of-service attacks

Page 27: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

27

Symmetric Key Protocol• Observation 1:

Common case is to rediscover known services– Can negotiate a shared symmetric key the first time– Symmetric key cryptography is fast

Page 28: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

28

KShared

Identity-hiding encryption Alice and Bob’s shared key (e.g., AES)

Symmetric Key Protocol

KShared

“Bob to Alice at time T”

Message authentication code with Alice and Bob’s shared key(e.g., HMAC-SHA1)

Service Discovery Message

Page 29: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

29

Symmetric Key Protocol• Observation 1:

Common case is to rediscover known services– Can negotiate a secret symmetric key the first time– Symmetric key cryptography is fast

• Observation 2: Linkability at short timescales is usually OK– Compute temporary unlinkable addresses known only

to a client and a service– Messages not for me are discarded at WiFi line-rate

Page 30: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

30

KShared

Symmetric Key Protocol

KShared

“Bob to Alice at time T” Service Discovery Message

AT = address at time T

AT-1A0 ATHash()

KShared

AT+1Hash()

KShared

… …

Random hash function (e.g., HMAC-SHA1)

secret

Page 31: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

31

Protocol Design Summary• Observation 1:

Common case is to rediscover known services– Can negotiate a secret symmetric key the first time– Symmetric key cryptography is fast

• Observation 2: Linkability at short timescales is usually OK– Compute temporary unlinkable addresses known only to a

client and a service– Messages not for me are discarded at WiFi line-rate

• Thus:– Prioritize symmetric key protocol– Use spare cycles for public key protocol

Page 32: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

32

Outline

• Existing mechanisms pose privacy threats– Announcement reveals inventory and location– Probing reveals history and identity

• Solution requirements1. Plug-and-play networking2. Infrastructure independence3. Anonymity4. Authenticity

• Tryst– Access control for discovery messages provides 3 and 4

Page 33: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

33

Outline

• Existing mechanisms pose privacy threats– Announcement reveals inventory and location– Probing reveals history and identity

• Solution requirements1. Plug-and-play networking2. Infrastructure independence3. Anonymity4. Authenticity

• Tryst– Access control for discovery messages provides 3 and 4– Automated key establishment maintains 1 and 2

Page 34: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

34

How Do I Obtain the Initial Keys?

• Existing key establishment is not enough– Certificates: E.G., Secure websites

• Neither client nor service can offer proof of identity first!

– Pairing: E.G., Bluetooth peripherals• Can not always physically identify service • User must perform discovery before device does!

• Discovery is also used to find new services– Goal: Automatically expand the trust horizon– E.G., new services in trusted domains– E.G., new services trusted transitively

Page 35: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

35

New Services in Trusted Domains

Trusted

?

x

xStrawman Solution

x

“Discover Alice’s iPod”

Page 36: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

36

?

New Services in Trusted Domains

“Discover Alice’s iPod”

Trusted

Trusts: [email protected]

“alice.ds”

“alice.laptop”

“bob.zune”

“bob.psp”“bob.laptop”

Anonymous Identity Based Encryption

“alice.ipod”

Page 37: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

37

New Services Transitively Trusted“Alice’s Home”

Trust

TransitiveTrust

Alice trustsbob.laptop

Alice’s secret

Alice trusts “Alice’s Home”

Alice’s secret

Find networks that Alice trusts

Attestation

Page 38: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

38

Outline

• Existing mechanisms pose privacy threats– Announcement reveals inventory and location– Probing reveals history and identity

• Solution requirements1. Plug-and-play networking2. Infrastructure independence3. Anonymity4. Authenticity

• Tryst– Access control for discovery messages provides 3 and 4– Automated key establishment maintains 1 and 2

Page 39: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

39

Ongoing Work

• Status:– Created usable implementation of Tryst– Integrated with WiFi protocol stack on Linux

• Future work:– Evaluate how well key establishment mechanisms

reflect real trust relationships– Design privacy policies that users can understand

• More information:– Tryst: The Case for Confidential Service Discovery.

HotNets VI, 2007.

Page 40: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

40

Summary

• Existing mechanisms pose privacy threats– Announcement reveals inventory and location– Probing reveals history and identity

• Solution requirements1. Plug-and-play networking2. Infrastructure independence3. Anonymity4. Authenticity

• Tryst– Access control for discovery messages provides 3 and 4– Automated key establishment maintains 1 and 2

Page 41: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

41

Backup Slides

Page 42: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

42

Related Work• SmokeScreen [Cox ’07] – access control for discovering friends

– Similar to symmetric key protocol– Uses online social network for key exchange

• SSDS [Czerwinski ’00] – secure service discovery architecture– Relies on trusted infrastructure– Not meant for use in wireless environments

• Broadcast Encryption [e.g., Fiat ‘93] –encrypt message to many users– Making this private is an open problem

• JFK [Aiello ’93] – efficient Internet key exchange– No service privacy …– … or not resilient to man-in-the-middle attacks

Page 43: 1 Making Local Service Discovery Confidential with Tryst Jeffrey Pang CMU Ben Greenstein Intel Research Srinivasan Seshan CMU David Wetherall University

43

Privacy Threats: History• “Where I have been before”

– Example: Probing for network names can expose where you live [WiGLE Wardriving Database]

Is the network“djw” here?