Memory-based DoS and Deanonymization Attacks on Tor

Post on 23-Mar-2016

31 views 4 download

Tags:

description

Memory-based DoS and Deanonymization Attacks on Tor. DCAPS Seminar October 11 th , 2013. Rob Jansen U.S. Naval Research Laboratory rob.g.jansen@nrl.navy.mil. *Joint with Aaron Johnson, Florian Tschorsch , Björn Scheuermann. The Tor Anonymity Network. t orproject.org. How Tor Works. - PowerPoint PPT Presentation

Transcript of Memory-based DoS and Deanonymization Attacks on Tor

Memory-based DoS and Deanonymization Attacks on Tor

DCAPS SeminarOctober 11th, 2013

Rob JansenU.S. Naval Research Laboratoryrob.g.jansen@nrl.navy.mil

*Joint with Aaron Johnson, Florian Tschorsch, Björn Scheuermann

The Tor Anonymity Network

torproject.org

How Tor Works

How Tor Works

How Tor Works

How Tor Works

How Tor Works

Tor protocol aware

Tor Flow Control

exitentry

Tor Flow Control

One TCP Connection Between Each Relay,

Multiple Circuits

exitentry

Tor Flow Control

One TCP Connection Between Each Relay,

Multiple Circuits

Multiple Application Streams

exitentry

Tor Flow Control

No end-to-end TCP!

exitentry

Tor Flow Control

Tor protocol aware

exitentry

Tor Flow Control

Packaging End

DeliveryEnd

exitentry

Tor Flow Control

Packaging End

DeliveryEnd

exitentry

Tor Flow Control

1000 Cell Limit

SENDME Signal Every 100 Cells

exitentry

Outline

● The Sniper Attack– Low-cost memory consumption attack that disables

arbitrary Tor relays

● Deanonymizing Hidden Services– Using DoS attacks for deanonymization

● Countermeasures

The Sniper Attack

Start Download

Request

exitentry

The Sniper Attack

Reply

DATAexitentry

The Sniper AttackPackage and Relay DATA

DATA

DATAexitentry

The Sniper Attack

DATA

DATA

Stop Reading from Connection

DATA

Rexitentry

The Sniper Attack

DATADATADATADATADATADATA

Rexitentry

Flow Window Closed

The Sniper Attack

DATA

Periodically Send SENDME SENDME

R

DATADATADATADATADATA

exitentry

The Sniper Attack

DATA

DATA

DATADATADATADATADATADATA

Periodically Send SENDME SENDME

R

DATADATADATADATADATA

exitentry

Flow Window Opened

The Sniper Attack

DATA

DATA

DATADATADATADATADATADATA

R

DATADATADATADATADATA

exitentry

DATADATADATADATADATADATADATADATADATADATA

Out of Memory, Killed by OS

The Sniper Attack

DATA

DATA

DATADATADATADATADATADATA

R

DATADATADATADATADATA

exitentry

DATADATADATADATADATADATADATADATADATADATA

Use Tor to Hide

Memory Consumed over Time

Mean RAM Consumed, 50 Relays

Mean BW Consumed, 50 Relays

Speed of Sniper Attack

Direct AnonymousRelay Groups Select % 1 GiB 8 GiB 1 GiB 8 GiBTop Guard 1.7

Top 5 Guards 6.5

Top 20 Guards 19

Top Exit 3.2

Top 5 Exits 13

Top 20 Exits 35

Path Selection Probability ≈ Network Capacity

Speed of Sniper Attack

Direct AnonymousRelay Groups Select % 1 GiB 8 GiB 1 GiB 8 GiBTop Guard 1.7 0:01 0:18 0:02 0:14

Top 5 Guards 6.5 0:08 1:03 0:12 1:37

Top 20 Guards 19 0:45 5:58 1:07 8:56

Top Exit 3.2 0:01 0:08 0:01 0:12

Top 5 Exits 13 0:05 0:37 0:07 0:57

Top 20 Exits 35 0:29 3:50 0:44 5:52

Time (hours:minutes) to Consume RAM

Speed of Sniper Attack

Direct AnonymousRelay Groups Select % 1 GiB 8 GiB 1 GiB 8 GiBTop Guard 1.7 0:01 0:18 0:02 0:14

Top 5 Guards 6.5 0:08 1:03 0:12 1:37

Top 20 Guards 19 0:45 5:58 1:07 8:56

Top Exit 3.2 0:01 0:08 0:01 0:12

Top 5 Exits 13 0:05 0:37 0:07 0:57

Top 20 Exits 35 0:29 3:50 0:44 5:52

Time (hours:minutes) to Consume RAM

Speed of Sniper Attack

Direct AnonymousRelay Groups Select % 1 GiB 8 GiB 1 GiB 8 GiBTop Guard 1.7 0:01 0:18 0:02 0:14

Top 5 Guards 6.5 0:08 1:03 0:12 1:37

Top 20 Guards 19 0:45 5:58 1:07 8:56

Top Exit 3.2 0:01 0:08 0:01 0:12

Top 5 Exits 13 0:05 0:37 0:07 0:57

Top 20 Exits 35 0:29 3:50 0:44 5:52

Time (hours:minutes) to Consume RAM

Outline

● The Sniper Attack– Low-cost memory consumption attack that disables

arbitrary Tor relays

● Deanonymizing Hidden Services– Using DoS attacks for deanonymization

● Countermeasures

Hidden Services

HS

User wants to hide service

Hidden Services

entry IP

HS chooses and publishes

introduction point IP

HS

Hidden Services

entry IP

HS

Learns about HS on web

entry

Hidden Services

entry IP

HS

Builds Circuit to Chosen Rendezvous

Point RP

RP

entry

Hidden Services

entry IP

HS

Notifies HS of RP through IP

RP

entry

RP

entry

Hidden Services

entry IP

HS

RP

RP

entry

Hidden Services

entry IP

HS

Build New Circuit to

RP

RP

entry

RP

entry

Hidden Services

entry IP

HS

Communicate!

RP

entry

RP

entry

Deanonymizing Hidden Services

HS

RP

entry

Deanonymizing Hidden Services

HS

RP

Also runs a guard relay

entry

Deanonymizing Hidden Services

entry

HS

RP

RP

Build New Circuit to

RP

entry

Deanonymizing Hidden Services

entry

HS

RP

RP S&P 2006, S&P 2013

entry

Deanonymizing Hidden Services

entry

HS

RP

RP S&P 2013

PADDING

Send 50 Padding

Cells

entry

Deanonymizing Hidden Services

entry

HS

RP

RP

Identify HS entry if cell count = 52

S&P 2013

entry

Deanonymizing Hidden Services

entry

HS

RP

Sniper Attack,or any other DoS

entry

Deanonymizing Hidden Services

HS

RP

Choose new Entry Guard

entry

Deanonymizing Hidden Services

HS

RP

RP

entry

Deanonymizing Hidden Services

HS

RP

RP S&P 2006, S&P 2013

entry

Deanonymizing Hidden Services

HS

RP

RP

Send 50 Padding

Cells

S&P 2013

PADDING

entry

Deanonymizing Hidden Services

HS

RP

RP

Identify HS if cell count = 53

S&P 2013

Outline

● The Sniper Attack– Low-cost memory consumption attack that disables

arbitrary Tor relays

● Deanonymizing Hidden Services– Using DoS attacks for deanonymization

● Countermeasures

Countermeasures

● Sniper Attack Defenses– Authenticated SENDMEs– Queue Length Limit– Adaptive Circuit Killer

● Deanonymization Defenses– Entry-guard Rate-limiting– Middle Guards

Questions?

cs.umn.edu/~jansenrob.g.jansen@nrl.navy.mil

think like an adversary

Speed of Deanonymization

Guard BW(MiB/s)

Guard Probability

(%)Average # Rounds

Average # Sniped

Average Time (h)

1 GiB

Average Time (h)

8 GiB8.41 0.48 66 133 46 279

16.65 0.97 39 79 23 149

31.65 1.9 24 48 13 84

66.04 3.8 13 26 6 44

96.61 5.4 9 19 5 31

1 GiB/s Relay Can Deanonymize HS in

about a day

Circuit Killer Defense

The Sniper Attack

exitentry

exit entry

Single Adversary

The Sniper Attack

exitentry

exit entry

Anonymous Tunnel

The Sniper Attack

exitentry

exit entry

The Sniper Attack

exitentry

exit entry

DATADATA DATA

DATA

The Sniper Attack

exitentry

exit entry

DATADATA DATA

DATA

R

The Sniper Attack

exitentry

exit entry

DATADATA DATA

R

Flow Window Closed

The Sniper Attack

exitentry

exit entry

DATADATA DATA

R

R

The Sniper Attack

exitentry

exit entry

DATADATA

R

R

DATADATADATADATA

The Sniper Attack

exitentry

exit entry

DATADATA

R

R

DATADATADATA

Killed by OS

DATA