A Practical Congestion Attack on Tor Using Long Paths
Towards De-anonymizing Tor Nathan S. Evans1 Christian Grothoff1 Roger Dingledine2
1University of Denver, Denver CO 2The Tor Project
A Practical Congestion Attack on Tor Using Long Paths Towards - - PowerPoint PPT Presentation
A Practical Congestion Attack on Tor Using Long Paths Towards De-anonymizing Tor Nathan S. Evans 1 Christian Grothoff 1 Roger Dingledine 2 1 University of Denver, Denver CO 2 The Tor Project August, 12 2009 A Practical Congestion Attack on Tor
1University of Denver, Denver CO 2The Tor Project
A Practical Congestion Attack on Tor Using Long Paths
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
Client Server Tor Node 1 Tor Node 2 Tor Node 3 Tor Node 4 Tor Node 5 Tor Node 6 Tor Node 7 Tor Node 8 Tor Node 9
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
1 1000 2000 3000 4000 5000 6000 Latency variance (in seconds) Sample number Latency measurement graph xbotA with attack Control Run Attack Run De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
1 2 1000 2000 3000 4000 5000 6000 Latency variance (in seconds) Sample number Latency measurement graph chaoscomputerclub42 no attack Control Run Attack Run De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
Client Server Tor Node 1 Tor Node 2 Tor Node 3
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
Client Server Tor Node 1 Tor Node 2 Tor Node 3
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
Client Server Tor Node 1 Tor Node 2 Tor Node 3
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
Client Server Tor Node 1 Tor Node 2 Tor Node 3
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
Client Server Tor Node 1 Tor Node 2 Tor Node 3
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
Client Server Tor Node 1 Tor Node 2 Tor Node 3
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
Client Tor Node 3 - Our Exit Node Server Tor Node 1 - Unknown Node Malicious Client Tor Node 2 - Known High BW Tor Node 1 High BW Tor Node 2 Malicious Server De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
A0
B0 B1 B2 B3 B4 B5
C1 C0
t = 0
Output Queue
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
B0 B1 B2 B3 B4 B5
C1 C0
t = 0
A0
t = 1
Output Queue
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
B1 B2 B3 B4 B5
C1 C0
t = 0
A0
t = 1
B0
t = 2
Output Queue
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
B1 B2 B3 B4 B5
C0
t = 0
A0
t = 1
B0
t = 2
C1
t = 3
Output Queue
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
B2 B3 B4 B5
C0
t = 0
A0
t = 1
B0
t = 2
C1
t = 3
B1
t = 4
Output Queue
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
B3 B4 B5
C0
t = 0
A0
t = 1
B0
t = 2
C1
t = 3
B1
t = 4
B2
t = 5
Output Queue
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
B4 B5
C0
t = 0
A0
t = 1
B0
t = 2
C1
t = 3
B1
t = 4
B2
t = 5
B3
t = 6
Output Queue
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
B5
C0
t = 0
A0
t = 1
B0
t = 2
C1
t = 3
B1
t = 4
B2
t = 5
B3
t = 6
B4
t = 7
Output Queue
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
A0 A1 A2 A3
B0 B1 B2 B3
C1 C2 C3 C4
D0 D1 D2 D3 D4 D5
E0 E1 E2 E3 E4
G0 G1
H0 H1
I0 I1 I2 I3 I4
J0 J1
K0
L0 L1 L2 L3
M0 M1
N0 N1 N2 N3 N4 N5 N6
O0 O1 O2 O3 O4 O5 C0
t = 0
Output Queue
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
A0 A1 A2 A3
B0 B1 B2 B3
C1 C2 C3 C4
D1 D2 D3 D4 D5
E0 E1 E2 E3 E4
G0 G1
H0 H1
I0 I1 I2 I3 I4
J0 J1
K0
L0 L1 L2 L3
M0 M1
N0 N1 N2 N3 N4 N5 N6
O0 O1 O2 O3 O4 O5 C0
t = 0
D0
t = 1
Output Queue
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
A0 A1 A2 A3
B0 B1 B2 B3
C1 C2 C3 C4
D1 D2 D3 D4 D5
E1 E2 E3 E4
G0 G1
H0 H1
I0 I1 I2 I3 I4
J0 J1
K0
L0 L1 L2 L3
M0 M1
N0 N1 N2 N3 N4 N5 N6
O0 O1 O2 O3 O4 O5 C0
t = 0
D0
t = 1
E0
t = 2
Output Queue
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
A0 A1 A2 A3
B0 B1 B2 B3
C1 C2 C3 C4
D1 D2 D3 D4 D5
E1 E2 E3 E4
G1
H0 H1
I0 I1 I2 I3 I4
J0 J1
K0
L0 L1 L2 L3
M0 M1
N0 N1 N2 N3 N4 N5 N6
O0 O1 O2 O3 O4 O5 C0
t = 0
D0
t = 1
E0
t = 2
G0
t = 3
Output Queue
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
A0 A1 A2 A3
B0 B1 B2 B3
C1 C2 C3 C4
D1 D2 D3 D4 D5
E1 E2 E3 E4
G1
H1
I0 I1 I2 I3 I4
J0 J1
K0
L0 L1 L2 L3
M0 M1
N0 N1 N2 N3 N4 N5 N6
O0 O1 O2 O3 O4 O5 C0
t = 0
D0
t = 1
E0
t = 2
G0
t = 3
H0
t = 4
Output Queue
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
A0 A1 A2 A3
B0 B1 B2 B3
C1 C2 C3 C4
D1 D2 D3 D4 D5
E1 E2 E3 E4
G1
H1
I1 I2 I3 I4
J0 J1
K0
L0 L1 L2 L3
M0 M1
N0 N1 N2 N3 N4 N5 N6
O0 O1 O2 O3 O4 O5 C0
t = 0
D0
t = 1
E0
t = 2
G0
t = 3
H0
t = 4
I0
t = 5
Output Queue
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
A0 A1 A2 A3
B0 B1 B2 B3
C1 C2 C3 C4
D1 D2 D3 D4 D5
E1 E2 E3 E4
G1
H1
I1 I2 I3 I4
J1
K0
L0 L1 L2 L3
M0 M1
N0 N1 N2 N3 N4 N5 N6
O0 O1 O2 O3 O4 O5 C0
t = 0
D0
t = 1
E0
t = 2
G0
t = 3
H0
t = 4
I0
t = 5
J0
t = 6
Output Queue
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
A0 A1 A2 A3
B0 B1 B2 B3
C1 C2 C3 C4
D1 D2 D3 D4 D5
E1 E2 E3 E4
G1
H1
I1 I2 I3 I4
J1
L0 L1 L2 L3
M0 M1
N0 N1 N2 N3 N4 N5 N6
O0 O1 O2 O3 O4 O5 C0
t = 0
D0
t = 1
E0
t = 2
G0
t = 3
H0
t = 4
I0
t = 5
J0
t = 6
K0
t = 7
Output Queue
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
A0 A1 A2 A3
B0 B1 B2 B3
C1 C2 C3 C4
D1 D2 D3 D4 D5
E1 E2 E3 E4
G1
H1
I1 I2 I3 I4
J1
L1 L2 L3
M0 M1
N0 N1 N2 N3 N4 N5 N6
O0 O1 O2 O3 O4 O5 C0
t = 0
D0
t = 1
E0
t = 2
G0
t = 3
H0
t = 4
I0
t = 5
J0
t = 6
K0
t = 7
L0
t = 8
Output Queue
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
A0 A1 A2 A3
B0 B1 B2 B3
C1 C2 C3 C4
D1 D2 D3 D4 D5
E1 E2 E3 E4
G1
H1
I1 I2 I3 I4
J1
L1 L2 L3
M1
N0 N1 N2 N3 N4 N5 N6
O0 O1 O2 O3 O4 O5 C0
t = 0
D0
t = 1
E0
t = 2
G0
t = 3
H0
t = 4
I0
t = 5
J0
t = 6
K0
t = 7
L0
t = 8
M0
t = 9
Output Queue
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
Client Tor Node 3 - Our Exit Node Server Tor Node 1 - Unknown Node Malicious Client Tor Node 2 - Known High BW Tor Node 1 High BW Tor Node 2 Malicious Server De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
1 2 3 4 5 6 7 200 400 600 800 1000 1200 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 Latency variance (in seconds) Bytes expended by attacker (in kB) Sample number Latency measurement graph freedomsurfers Control Run Attack Run Downloaded Data De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
1 5 10 15 20 25 30 31 200 400 600 800 1000 1200 10 20 30 40 50 Latency variance (in seconds) Bytes expended by attacker (in kB) Sample number Latency measurement graph bloxortsipt41 Control Run Attack Run Downloaded Data De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 200 400 600 800 1000 1200 10 20 30 40 Latency variance (in seconds) Bytes expended by attacker (in kB) Sample number Latency measurement graph carini Control Run Attack Run Downloaded Data De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
1 2 3 4 5 6 7 8 9 10 11 12 13 200 400 600 800 1000 1200 10 20 30 40 Latency variance (in seconds) Bytes expended by attacker (in kB) Sample number Latency measurement graph carini Control Run Attack Run Downloaded Data De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
100 200 300 400 500 600 1 2 3 4 5 6 7 Number of measurements in range Range of measurements (in seconds) Histogram of latency measurements for freedomsurfers Control Run Attack Run Control Run Regression Line Attack Run Regression Line
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
100 200 300 400 500 600 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Number of measurements in range Range of measurements (in seconds) Histogram of latency measurements for bloxortsipt41 Control Run Attack Run Control Run Regression Line Attack Run Regression Line
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
100 200 300 400 500 600 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Number of measurements in range Range of measurements (in seconds) Histogram of latency measurements for carini Control Run Attack Run Control Run Regression Line Attack Run Regression Line
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
100 200 300 400 500 600 1 2 3 4 5 6 7 8 9 10 11 12 13 Number of measurements in range Range of measurements (in seconds) Histogram of latency measurements for carini Control Run Attack Run Control Run Regression Line Attack Run Regression Line
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
1-1x10-20 1-1x10-10 .99999 .99 .9 5 10 15 20 25 30 Product of Confidence Values Number of Runs Rattensalat SEC wie6ud6B hamakor yavs auk dontmesswithme cThor Raccoon eponymousraga BlueStar88a wranglerrutgersedu conf555nick mf62525 miskatonic WeAreAHedge anon1984n2 c64177124055 bond server3 1-1x10-10 .99999 .99 .9 2 4 6 8 10 12 14 Product of Confidence Values Number of Runs Privacyhosting c64177124055 DieYouRebelScum1 ArikaYumemiya auk mrkoolltor TorSchleim myrnaloy judas Doodles123 tin0 baphomet kallio diora aquatorius Einlauf dontmesswithme askatasuna century
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
50 100 150 200 250 300 30 60 90 120 150 180 210 240 270 Chi Square Values of Attack vs. Baseline Seconds of Measurement for Attack Run Rattensalat DigitalBrains BlueStar88a BlueStar88a-2 elc1
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
De-anonymizing Tor
A Practical Congestion Attack on Tor Using Long Paths
De-anonymizing Tor