Top Banner
Improving Wireless Privacy with an Identifier-Free Link Layer Protocol Ben Greenstein, Damon McCoy, Jeffrey Pang, Tadayoshi Kohno, Srinivasan Seshan, and David Wetherall Intel Research Seattle, University of Colorado, Carnegie Mellon University, University of Washington
57

Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Dec 31, 2015

Download

Documents

dexter-dejesus

Improving Wireless Privacy with an Identifier-Free Link Layer Protocol. Ben Greenstein, Damon McCoy, Jeffrey Pang , Tadayoshi Kohno, Srinivasan Seshan , and David Wetherall Intel Research Seattle, University of Colorado, Carnegie Mellon University, University of Washington. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Ben Greenstein, Damon McCoy, Jeffrey Pang, Tadayoshi Kohno, Srinivasan Seshan, and David Wetherall

Intel Research Seattle, University of Colorado, Carnegie Mellon University, University of Washington

Page 2: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Our Wireless Worldtcpdump

PrivatePhoto1.jpgLink Layer Header

Link Layer Header Home location=(47.28,…

Link Layer Header Buddy list: Alice, Bob, …

PrivateVideo1.aviLink Layer Header

Link Layer Header Blood pressure: high

Page 3: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Best Security Practices

SSID: Bob’s NetworkKey: 0x2384949…

Discover802.11 probe Is Bob’s Network here?

802.11 beacon Bob’s Network is here

Username: AliceKey: 0x348190…

802.11 auth Proof that I’m Alice

802.11 auth Proof that I’m Bob

Authenticateand Bind

802.11 header

802.11 header Send Data

Bootstrap

Out-of-band (e.g., password, WiFi Protected Setup)

tcpdump

• Confidentiality• Authenticity• Integrity

33

Page 4: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Bootstrap

SSID: Bob’s NetworkSecret: 0x2384949…

Username: AliceSecret: 0x348190…

Privacy Problems Remain

Discover802.11 probe Is Bob’s Network here?

802.11 beacon Bob’s Network is here

tcpdump

802.11 auth Proof that I’m Alice

802.11 auth Proof that I’m Bob

Authenticateand Bind

802.11 header

802.11 header Send Data

Is Bob’s Network here?

Proof that I’m Bob

Bob’s Network is here

MAC addr, seqno, …

MAC addr, seqno, …

Many exposed bits are (or can be used as) identifiers that are linked over time

• Confidentiality• Authenticity• Integrity

4

Page 5: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

5

Problem: Long-Term Linking

Alice Alice?

MAC: 12:34:56:78:90:ab

Alice’s iPod is here802.11 beacon Alice’s iPod is here802.11 beacon

Easy to identify and relate devices over time

Is Alice’s iPod here?802.11 probe

tcpdump

MAC: 12:34:56:78:90:ab

Alice’s friend?

Page 6: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

6

Problem: Long-Term Linking

www.bluetoothtracking.org

Linking enables location tracking, user profiling, inventorying, relationship profiling, … [Greenstein, HotOS ’07; Jiang, MobiSys ’07; Pang, MobiCom ’07, HotNets ’07]

Home

www.wigle.net

802.11 header Is “djw” here? “djw” is here

Page 7: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Alice -> AP00:00:99:99:11:11

12:34:56:78:90:ab

12:34:56:78:90:ab

Alice -> AP00:00:99:99:11:11

Alice -> AP00:00:99:99:11:11

12:34:56:78:90:ab

12:34:56:78:90:ab

Problem: Short-Term Linking

12:34:56:78:90:ab, seqno: 1, …

12:34:56:78:90:ab, seqno: 2, …

12:34:56:78:90:ab, seqno: 3, …

12:34:56:78:90:ab, seqno: 4, …

00:00:99:99:11:11, seqno: 103, …

00:00:99:99:11:11, seqno: 104, …

00:00:99:99:11:11, seqno: 102, …

Easy to isolate distinct packet streams

3-9 data streams overlapeach 100 ms, on average (see paper)

tcpdump

7

Page 8: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Problem: Short-Term Linking

8

Isolated data streams are more susceptible to side-channel analysis on packet sizes and timing– Exposes keystrokes, VoIP calls, webpages, movies, …

[Liberatore, CCS ‘06; Pang, MobiCom ’07; Saponas, Usenix Security ’07; Song, Usenix Security ‘01; Wright, IEEE S&P ‘08; Wright, Usenix Security ‘07]

DFT

transmission sizes transmission sizes

300250

200

100500

120

Videocompression signatures

Devicefingerprints

Keystroketimings

Page 9: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Bootstrap

SSID: Bob’s NetworkSecret: 0x2384949…

Username: AliceSecret: 0x348190…

Fundamental Problem

Discover802.11 probe Is Bob’s Network here?

802.11 beacon Bob’s Network is here

tcpdump

802.11 auth Proof that I’m Alice

802.11 auth Proof that I’m Bob

Authenticateand Bind

802.11 header

802.11 header Send Data

Many exposed bits are (or can be used as) identifiers that are linked over time

Is Bob’s Network here?

Proof that I’m Bob

Bob’s Network is here

MAC addr, seqno, …

MAC addr, seqno, …9

Page 10: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Discover

10

Authenticateand Bind

Send Data

Goal: Make All Bits Appear RandomBootstrap

SSID: Bob’s NetworkKey: 0x2384949…

Username: AliceKey: 0x348190…

tcpdump

?

Page 11: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Challenge: Filtering without Identifiers

Which packets are mine? Which packets are mine?

11

Page 12: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Talk Overview

• Motivation and Goals• Design Requirements• Straw man: MAC Pseudonyms• Straw man: Encrypt Everything• Solution: SlyFi

12

Page 13: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

13

Goal: This ProtocolBootstrap

SSID: Bob’s NetworkKey: 0x2384949…

Username: AliceKey: 0x348190…

Discover

Authenticateand Bind

Send Data

Page 14: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Design Requirements• When A generates Message to B, she sends:

PrivateMessage = F(A, B, Message)

where F has these properties:– Confidentiality: Only A and B can determine Message.– Authenticity: B can verify A created PrivateMessage.– Integrity: B can verify Message not modified.

– Unlinkability: Only A and B can link PrivateMessagesto same sender or receiver.

– Efficiency: B can process PrivateMessages as fast as he can receive them.

14

A→B Header… Unencrypted payload

Page 15: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Solution Summary

Unlinkabilit

y

Integrity

Authenticit

y

Efficie

ncy

Confidentiality

802.11 WPA

MAC Pseudonyms

Public KeySymmetric Key

SlyFi: Discovery/Binding

SlyFi: Data packets15

OnlyData

Payload

OnlyData

Payload

OnlyData

Payload

Page 16: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Straw man: MAC Pseudonyms• Idea: change MAC address periodically

– Per session or when idle [Gruteser ’05, Jiang ‘07]

• Other fields remain (e.g., in discovery/binding)– No mechanism for data authentication/encryption– Doesn’t hide network names during discovery or

credentials during authentication

• Pseudonyms are linkable in the short-term– Same MAC must be used for each association– Data streams still vulnerable to side-channel leaks

16

Page 17: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Solution Summary

Unlinkabilit

y

Integrity

Authenticit

y

Efficie

ncy

Confidentiality

802.11 WPA

MAC Pseudonyms

Public KeySymmetric Key

SlyFi: Discovery/Binding

SlyFi: Data packets

OnlyData

Payload

Long Term

17

OnlyData

Payload

OnlyData

Payload

Page 18: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Straw man: Encrypt Everything

18

Bootstrap

SSID: Bob’s NetworkKey: 0x2384949…

Username: AliceKey: 0x348190…

Discover

Authenticateand Bind

Send Data

Idea: Use bootstrapped keys to encrypt everything

Page 19: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Straw man: Public Key Protocol

Probe “Bob”

Key-private encryption(e.g., ElGamal)

KBob

Check signature:

Try to decrypt

K-1Bob

KAlice

Based on [Abadi ’04]

K-1AliceSign: Slow! (>100ms)

Client Service

19

Page 20: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Straw man: Symmetric Key Protocol

Probe “Bob”

Client Service

Symmetric encryption(e.g., AES w/ random IV)

Check MAC:

MAC: KAB

KAB

KAB

Try todecrypt

with each shared key

KShared1

KShared2

KShared3…

Slow! (scales w/ # keys)

20

Different symmetric key per potential sender

Can’t identify thedecryption key in the packet or else it is linkable

Page 21: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Solution Summary

Unlinkabilit

y

Integrity

Authenticit

y

Efficie

ncy

Confidentiality

802.11 WPA

MAC Pseudonyms

Public Key ProtocolSymmetric Key Protocol

SlyFi: Discovery/Binding

SlyFi: Data packets

LongTerm

21

OnlyData

Payload

OnlyData

Payload

OnlyData

Payload

Page 22: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

• Symmetric key almost works, but tension between:– Unlinkability: can’t expose the identity of the key– Efficiency: need to identify the key to avoid trying all keys

• Idea: Identify the key in an unlinkable way

• Approach:– Sender A and receiver B agree on tokens: T1 , T2 , T3 , …– A attaches Ti to encrypted packet for B

SlyFi

22

AB

AB

AB AB

Page 23: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

SlyFi

Probe “Bob”

Client Service

Symmetric encryption(e.g., AES w/ random IV)

Check MAC:

MAC: KAB

KAB

KAB

KAB

Lookup Ti in atable to get KAB

Ti AB AB

23

Required properties:– Third parties can not link Ti and Tj if i ≠ j– A doesn’t reuse Ti

– A and B can compute Ti independently

AB AB

AB

AB

Ti = AESK (i)AB

ABTi = AESK (i)AB

AB

Main challenge:Sender and receiver must synchronize i

Page 24: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

SlyFi: Data Transport• Data messages:

– Only sent over established connections Expect messages to be delivered Use implicit transmission number to synchronize i

Ti = AESK (i) where i = transmission #AB

AB

24

Ti AB

Ti+1AB

Ti +2AB

Ti +3AB

• On receipt of Ti , B computes next expected: Ti+1

• Handling message loss:– On receipt of Ti save Ti+1, … , Ti+k in table– Tolerates k consecutive losses (k=50 is enough [Reis ‘06])– No loss compute one token per reception

AB ABAB

AB AB

Page 25: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

SlyFi: Discovery/Binding• Discovery & binding messages:

– Often sent when other party is not present Can’t expect most messages to be delivered Can’t rely on transmission reception to synchronize i

25

Is Bob’s Network here?Ti AB

i = ?

Is Bob’s Network here?Ti +1AB

Is Bob’s Network here?Ti +3AB

Is Bob’s Network here?Ti +2AB

....

…...

Nope.

Nope.

Nope.

Page 26: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

SlyFi: Discovery/Binding• Discovery & binding messages:

– Infrequent: only sent when trying to associate– Narrow interface: single application, few side-channels Linkability at short timescales is usually OK Use loosely synchronized time to synchronize i

Ti = AESK (i) where i = current time/5 minAB

AB

26

• At the start of time interval i compute Ti

• Handling clock skew:– Receiver B saves Ti-s, … , Ti+s in table– Tolerates clock skew of 5s minutes

ABAB

AB802.11 probe

802.11 beacon

802.11 auth

802.11 auth

Ti AB

Ti AB

Ti BA

Ti BA

Page 27: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

SlyFi: Other Protocol Details

• Broadcast• Higher-layer binding• Time synchronization• Roaming• Coexistence with 802.11• Link-layer ACKs• Preventing replay attacks• etc.

See paper

27

Page 28: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

• SlyFi implementation:– Linux kernel module using Click Modular Router– Run on Soekris devices (similar to APs, iPods, etc.)

• Comparison protocols:– wifi-open: 802.11 with no security– wifi-wpa: 802.11 with WPA PSK/CCMP– public-key: straw man– symmetric-key: straw man– armknecht: previous header encryption

proposal

Performance Evaluation

28

Sim

ilar

Backgroundtraffic

AP with500 accounts

50 associations

Measure Alice’s connection to Bob

Experiment:

Page 29: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Discovery/Binding Time

SlyFi link setup has less overhead than WPA29

Lower = Better

Page 30: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Data Throughput

SlyFi data filtering is about as efficient as 802.1130

With simulatedAES hardware

Performs likesymmetric key

Higher = Better

Page 31: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Solution Summary

Unlinkabilit

y

Integrity

Authenticit

y

Efficie

ncy

Confidentiality

802.11 WPA

MAC Pseudonyms

Public KeySymmetric Key

SlyFi: Discovery/Binding

SlyFi: Data packets

LongTerm

LongTerm

31

OnlyData

Payload

OnlyData

Payload

OnlyData

Payload

Page 32: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Conclusion

http://tw.seattle.intel-research.net

• Wireless devices are becoming personal and pervasive

• Best practices don’t protect users from simple attacks– Long-term linking: tracking, profiling, inventorying– Short-term linking: side-channel attacks

• SlyFi makes these attacks much more difficult to do– Removes all bits that are (or can be used as) identifiers

32

Page 33: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

====== CONTEXT ======

33

Page 34: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

34

Related Work

• Private discovery– Public key straw man [Abadi, ‘04]– Private discovery sketch [Pang ‘07]– Privately announce existence to friends [Cox ‘07]

• Different application; uses hash chain

• Encrypted data transport headers– Must try all keys to filter [Armknecht ‘07]– Targeted at WPANs and use hash chains [Singelee ‘06]

• SlyFi is the first complete protocol and implementation

Page 35: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

802.11w: Protected Management Frames

Unlinkabilit

y

Integrity

Authenticit

y

Efficie

ncy

Confidentiality

802.11i (WPA)

MAC Pseudonyms

Public KeySymmetric Key

SlyFi: Discovery/Binding

SlyFi: Data packets

DataPayload

LongTerm

LongTerm

35

DataPayload

DataPayload

UnicastFrames802.11i + 802.11w

Page 36: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Why not GSM Pseudonyms?

• GSM pseudonym properties– Provider must assign new pseudonym to client to change it– Only a single application used on GSM network

• GSM pseudonyms not sufficient when– Both parties in discovery want to be private– May require using pseudonym when the provider is not

present (e.g., during discovery)– Many applications with many side-channels– Must accommodate device heterogeneity, evolution

36

Page 37: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

PHY Layer and Timing Signatures

Charlie -> AP

Charlie -> AP

Charlie -> AP

Alice -> AP

Charlie -> AP

Charlie -> AP

??? -> AP

??? -> AP

??? -> AP

??? -> AP

??? -> AP

??? -> AP

• PHY layer and timing signatures remain• These are not as accurate and can require uncommon or

expensive hardware• Obscuring these signatures is future work• SlyFi raises the bar and is a necessary first step

37

Page 38: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Linking with Signal Strength

38

Side-channel attack accuracy degrades significantlyeven if attacker tries to use signal strength to link packets

• Attack: website finger-printing using [Liberatore CCS ‘06]

• Attacker has 5 nodes to record packets’ RSSIs

• Attacker uses k-means clustering to determine which packets belong to each client. Set of RSSIs is the feature vector.• Experiment conservatively

assumes that attacker knows k • Clustering accuracy > 75% for

all experiments

Page 39: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Why not Time for Data Transport?• Data messages:

– Frequent: sent often to deliver data– Wide interface: many applications, many side-channels Linkability at short timescales is NOT usually OK Can NOT use loosely synchronized time to synchronize i

Ti AB

Ti AB

Ti AB

Ti AB

==

=

39

Page 40: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

40

Future Work

• Private, automated bootstrapping [Greenstein, Pang]– Leverage transitive trust relationships– Leverage device reputation, measurable context

• Measuring/defending against PHY layer linking [McCoy]– Leverage transmit power control, directional antennas

• Masking remaining timing side-channels [Pang]– Perform intelligent packet padding/cover traffic

Page 41: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Packet Format

41

Tryst: Discovery/Binding

Shroud: Data Transport

Token Unencrypted Message

Page 42: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Protocol Timing Diagram

42

Discover

Authenticateand Bind

Send Data

Page 43: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Other Protocol Details

43

• Broadcast– All broadcast packets routed through the AP– Use same shared key for all the clients of the AP

• Higher-layer binding– Clients report “pseudonym MAC address”-to-IP address bindings to AP– AP answers all ARP queries

• Time synchronization and roaming– Use protected broadcast to transmit timestamps, same BSSID info

• Coexistence with 802.11– Encapsulate SlyFi in “anonymous” 802.11 frame with unused FC code– Clients first search for SlyFi AP, then fall back to non-private AP search

• Link-layer ACKs– If fast enough, just acknowledge last SlyFi token sent– Our software implementation uses windowed ACKs

Page 44: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

====== TRYST EVAL ======

44

Page 45: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Link Setup Failures

“Encrypt everything” fails to setup many links45

Page 46: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Link Setup Time vs. # Probes

46

SlyFi scales as gracefully as 802.11

(no background traffic)

Page 47: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Link Setup Time Breakdown

47

“Try all keys” dominates symmetric key time

(times are in msec, no background traffic)

Using software encryption on 256 Mhz Geode processor and 802.11a

Page 48: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Token Computation Time

48

Token computation time is negligible

(Once every 5 minutes)

Using software AES, 256 Mhz Geode processor

Page 49: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

====== SHROUD EVAL ======

49

Page 50: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Data Throughput vs. Packet Size

SlyFi data transport overhead is similar to WPA50

Page 51: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Data Throughput vs. # Associations

SlyFi throughput is independent of # associations51

(no background traffic)

Page 52: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Data Transport Time Breakdown

SlyFi can process messages at the line rate52

(times are in usec)

256 Mhz Geode processor, hw times based on Atheros a/b/g 802.11 card

Page 53: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Latency vs. Packet Size

SlyFi data transport overhead is similar to WPA53

Click bug

Page 54: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

====== MEASUREMENTS ======

54

Page 55: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Empirical Stream Interleaving

55

Many streams interleaved even at short timescales

Page 56: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Empirical Background Probe Rate

56

Background probes are frequent in practice

Page 57: Improving Wireless Privacy with an Identifier-Free Link Layer Protocol

Empirical # Saved Network Names

57

Some clients probe for many network names