tapdance: end-to-middle anticensorship without flow blocking...end-to-middle anticensorship without...

28
TapDance: End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman University of Michigan 1

Upload: others

Post on 19-Apr-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

TapDance:

End-to-Middle Anticensorship

without Flow Blocking

Eric Wustrow

Colleen M. Swanson

J. Alex Halderman

University of Michigan

1

Page 2: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

Internet Censorship

Pervasive censorship Substantial censorship

Changing situation Little or no censorship

Selective censorship

2

Page 3: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

End-to-Middle Proxies

Telex: Anticensorship in the Network Infrastructure Eric Wustrow, Scott Wolchok, Ian Goldberg, J. Alex Halderman

USENIX SEC 2011

Decoy Routing: Toward Unblockable Internet Communication Josh Karlin, Daniel Ellard, Alden W. Jackson, Christine E. Jones, Greg Lauer, David P. Mankins, W. Timothy Strayer FOCI 2011

Cirripede: Circumvention Infrastructure using Router Redirection with Plausible Deniability Amir Houmansadr, Giang T. K. Nguyen, Matthew Caesar, Nikita Borisov

CCS 2011

3

Page 4: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

4

Client Decoy Server NotBlocked.com

E2M Proxy

End-to-Middle Proxies

Page 5: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

End-to-Middle Proxies

5

Client

E2M Proxy

Decoy Server NotBlocked.com

Page 6: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

End-to-Middle Proxies

6

Client

E2M Proxy

Decoy Server NotBlocked.com

Page 7: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

TapDance: End-to-Middle Anticensorship

without Flow Blocking

7

Client

TapDance Proxy

Decoy Server NotBlocked.com

Page 8: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

Passive Tap Challenges

8

Client

E2M Proxy

1 1

Decoy Server NotBlocked.com

Page 9: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

Passive Tap Challenges

9

Client

E2M Proxy

2

2

2

Decoy Server NotBlocked.com

Page 10: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

(TLS Handshake) K K

10

Passive Tap Challenge: Duplicate Data

E2M Proxy

Client Decoy Server Censor

Page 11: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

Incomplete HTTP request example

GET / HTTP/1.1\r\n Host: www.site.com\r\n X-Ignore: AAAAAAAAAAA…\r\n

11

Page 12: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

(TLS Handshake) K K

12

Incomplete HTTP Request

TapDance Proxy

Client Decoy Server Censor

Page 13: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

(TLS Handshake) K K

13

Passive Tap Challenge: Inconsistent TCP

TapDance Proxy

Client Decoy Server Censor

Page 14: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

(TLS Handshake) K K

14

Passive Tap Challenge: Inconsistent TCP

TapDance Proxy

Client Decoy Server Censor

Page 15: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

Tagging Methods

Telex: 28-byte TLS ClientRandom

Decoy Routing: 28-byte TLS ClientRandom

Cirripede: Successive (3-byte) TCP ISNs

TapDance: Arbitrary-length TLS Ciphertext

15

Page 16: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

Chosen-Ciphertext Covert Channel

Enc Encrypted Channel

Dec

Alice (Client)

Bob (Server)

Eve (E2M Proxy)

16

Page 17: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

Stream cipher ciphertext channel

AES

0

P0

C0

AES

1

P1

64 5e 59 48 d4 ..

47 45 54 20 2f .. 00 00 00 00 00 ..

C1

26 5e df 61 22 ..

17

Page 18: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

Stream cipher ciphertext channel

AES

0

P0

C0

AES

1

P1

64 5e 59 48 d4 ..

47 45 54 20 2f .. 01 00 00 00 00 ..

27 5e df 61 22 ..

C1

18

Page 19: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

01 02 03 04 05 ..

Stream cipher ciphertext channel

AES

0

P0

C0

AES

1

P1

64 5e 59 48 d4 ..

47 45 54 20 2f ..

C1

27 5c dc 65 27 ..

19

Page 20: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

c1 92 43 64 f5 ..

Stream cipher ciphertext channel

AES

0

P0

C0

AES

1

P1

64 5e 59 48 d4 ..

47 45 54 20 2f ..

C1

07 0c 0c 05 07 ..

20

Page 21: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

Incomplete HTTP request example

GET / HTTP/1.1\r\n

Host: www.site.com\r\n

X-Ignore: u]DhsYGxVxEvuZEhESta…\r\n

Encrypt

\x1e\x91\xb2\xce\x94\x8a\x6b\x3c\x78\x8c\x6f\x03 \x5e\xef\x97\x34\xf1\x2e\xc6\xe6\x7f\x10\xc8\x46 \xf9\x25\x6a\x0c\xff\x6d\x38 … \x70\xd7\x2c\x63 …

21

Page 22: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

Incomplete HTTP request example \x1e\x91\xb2\xce\x94\x8a\x6b\x3c\x78\x8c\x6f\x03 \x5e\xef\x97\x34\xf1\x2e\xc6\xe6\x7f\x10\xc8\x46 \xf9\x25\x6a\x0c\xff\x6d\x38 … \x70\xd7\x2c\x63 …

Decrypt

Shared Secret: ; Client random: …

TapDance Station

22

Page 23: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

(TLS Handshake) K K

23

TapDance Protocol Overview

TapDance Proxy

Client Decoy Server Censor

Page 24: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

(TLS Handshake) K K

24

TapDance Active Attack

TapDance Proxy

Client Decoy Server Censor

Page 25: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

Hosts that allow Incomplete Requests

25

Page 26: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

Previous work comparison

Telex Cirripede Decoy Routing TapDance

Steganographic channel ClientRandom TCP ISN ClientRandom TLS Ciphertext

No Inline blocking

Asymmetric flows

Replay attack defense

Traffic analysis defense

26

Page 27: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

Future Work

• Real world deployment

• “Single-packet” (stateless) TapDance

• Traffic fingerprinting defense

• Active defense

27

Page 28: TapDance: End-to-Middle Anticensorship without Flow Blocking...End-to-Middle Anticensorship without Flow Blocking Eric Wustrow Colleen M. Swanson J. Alex Halderman ... E2M Proxy End-to-Middle

Conclusion

• TapDance removes inline blocking requirement for End-to-Middle proxies, facilitating deployment

• Continues to function with asymmetric traffic

• Tradeoff of active attack vulnerability versus deployability

28