Tor: Anonymous Communications for the EFF ... and you. Roger Dingledine The Tor Project https://torproject.org/ 1
Tor: Big Picture ● Freely available (Open Source), unencumbered. ● Comes with a spec and full documentation: German universities implemented compatible Java Tor clients; researchers use it to study anonymity. ● Chosen as anonymity layer for EU PRIME project. ● 200000+ active users. ● PC World magazine named Tor one of the Top 100 Products of 2005. 2
Informally: anonymity means you can't tell who did what “Who wrote this blog post?” “Who's been viewing my webpages?” “Who's been emailing patent attorneys?” 3
Formally: anonymity means indistinguishability within an “anonymity set” Alice1 Alice2 Alice3 Bob Alice4 Alice5 .... Attacker can't tell which Alice6 Alice is talking to Bob! Alice7 Alice8 4
We have to make some assumptions about what the attacker can do. Alice Anonymity network Bob watch Alice! watch (or be!) Bob! Control part of the network! Etc, etc. 5
Anonymity isn't cryptography: Cryptography just protects contents. “Hi, Bob!” “Hi, Bob!” <gibberish> Alice attacker Bob 6
Anonymity isn't steganography: Attacker can tell that Alice is talking; just not to whom. Bob1 Alice1 Anonymity network Alice2 Bob2 ... AliceN (Strong high-bandwidth steganography may not exist.) 7
Anonymity isn't just wishful thinking... “You can't prove it was me!” “Promise you won't look!” “Promise you won't remember!” “Promise you won't tell!” “I didn't write my name on it!” “Isn't the Internet already anonymous?” 8
... since “weak” anonymity... isn't. “You can't prove it was me!” Proof is a very strong word. With statistics, suspicion becomes certainty. Promise you won't look!” Will others parties have the ability and incentives to keep “Promise you won't remember!” their promises? “Promise you won't tell!” Not what we're talking “I didn't write my name on it!” about. Nope! (More info later.) “Isn't the Internet already anonymous?” 9
Anonymity serves different interests for different user groups. Governments Businesses Anonymity “It's privacy!” Private citizens 10
Anonymity serves different interests for different user groups. Governments Businesses “It's network security!” Anonymity “It's privacy!” Private citizens 11
Anonymity serves different interests for different user groups. Governments Businesses “It's traffic-analysis “It's network security!” resistance!” Anonymity “It's privacy!” Private citizens 12
Regular citizens don't want to be watched and tracked. “I sell the logs.” Blogger Hostile Bob Alice “Oops, I lost the logs.” 8-year-old Incompetent Bob Alice “Hey, they aren't Indifferent Bob Sick my secrets.” Alice Name, address, (the network can track too) Consumer age, friends, Alice interests .... (medical, financial, etc), unpopular opinions, Oppressed illegal opinions.... Alice 13
Businesses need to keep trade secrets. “Oh, your employees are reading Competitor our patents/jobs page/product sheets?” “Hey, it's Alice! Give her the 'Alice' version!” Competitor AliceCorp “Wanna buy a list of Alice's suppliers? Compromised What about her customers? network What about her engineering department's favorite search terms?” 14
Law enforcement needs anonymity to get the job done. “Why is alice.localpolice.gov reading Investigated my website?” suspect “Why no, alice.localpolice.gov! Officer Sting I would never sell counterfeits on ebay!” Alice target “Is my family safe if I Organized go after these guys?” Crime Witness/informer “Are they really going to ensure Anonymous Alice my anonymity?” tips 15
Governments need anonymity for their security “What will you bid for a list of Baghdad Untrusted IP addresses that get email from .gov?” ISP Agent Alice Compromised “ What does the CIA Google for? ” service Shared “Do I really want to reveal my Coalition network internal network topology?” member Alice Defense in “What about insiders?” Depth 16
You can't get anonymity on your own: private solutions are ineffective... Alice's small Citizen “One of the 25 users ... anonymity net Alice on AliceNet.” Officer Municipal Investigated Alice “Looks like a cop.” anonymity net suspect AliceCorp AliceCorp “It's somebody at Competitor anonymity net AliceCorp!” 17
... so, anonymity loves company! Citizen “???” ... Alice Officer Investigated Alice Shared “???” suspect anonymity net AliceCorp Competitor “???” 18
Yes, bad people need anonymity too. But they are already doing well. Compromised botnet Stolen mobile phones Evil Criminal Alice Open wireless nets ..... 19
Current situation: Bad people on the Internet are doing fine Trojans Viruses Exploits Botnets Zombies Espionage Phishing DDoS Spam Extortion 20
IP addresses can be enough to bootstrap knowledge of identity. Alice Hotlinked ad 18.244.x.x Amazon account Wikipedia post 21
Tor is not the first or only design for anonymity. Low-latency High-latency Single-hop Chaum's Mixes proxies (1981) Crowds (~96) anon.penet.fi (~91) V1 Onion ZKS Routing (~96) “Freedom” Remailer networks: (~99-01) cypherpunk (~93), mixmaster (~95), Java Anon Proxy mixminion (~02) (~00-) Tor (01-) 22 ...and more!
Low-latency systems are vulnerable to end-to-end correlation attacks. match! Low-latency: Alice1 sends: xx x xxxx x Bob2 gets: xx x xxxx x Alice2 sends: x x xx x x Bob1 gets: x x x x x x match! Time High-latency: Alice1 sends: xx x xxxx Alice2 sends: x x xx x x Bob1 gets: xx xxxx ..... Bob2 gets: x xxxxx ..... These attacks work in practice. The obvious defenses are expensive (like high-latency), useless, or both. 23
Still, we focus on low-latency, because it's more useful. Interactive apps: web, IM, VOIP, ssh, X11, ... # users: millions? Apps that accept multi-hour delays and high bandwidth overhead: email, sometimes. # users: tens of thousands at most? And if anonymity loves company....? 24
The simplest designs use a single relay to hide connections. Bob1 Alice1 Bob3,“X” “Y” Relay Alice2 “Z” Bob2 Bob1, “Y” “X” ” Z “ , 2 b o B Bob3 Alice3 (ex: some commercial proxy providers) 25
But an attacker who sees Alice can see what she's doing. Bob1 Alice1 Bob3,“X” “Y” Relay Alice2 “Z” Bob2 Bob1, “Y” “X” ” Z “ , 2 b o B Bob3 Alice3 26
Add encryption to stop attackers who eavesdrop on Alice. Bob1 Alice1 E(Bob3,“X”) “Y” Relay Alice2 “Z” Bob2 E(Bob1, “Y”) ) “X” ” Z “ , 2 b o B ( E Bob3 Alice3 (ex: some commercial proxy providers) 27
But a single relay is a single point of failure. Bob1 Alice1 E(Bob3,“X”) “Y” Evil Alice2 Relay “Z” Bob2 E(Bob1, “Y”) ) “X” ” Z “ , 2 b o B ( E Bob3 Alice3 Eavesdropping the relay works too. 28
So, add multiple relays so that no single one can betray Alice. Bob Alice R1 R3 R5 R4 R2 29
A corrupt first hop can tell that Alice is talking, but not to whom. Bob Alice R1 R3 R5 R4 R2 30
A corrupt final hop can tell that somebody is talking to Bob, but not who. Bob Alice R1 R3 R5 R4 R2 31
Alice makes a session key with R1 Bob Alice R1 R3 R5 R4 R2 32
Alice makes a session key with R1 ...And then tunnels to R2 Bob Alice R1 R3 R5 R4 R2 33
Alice makes a session key with R1 ...And then tunnels to R2...and to R3 Bob Alice R1 R3 R5 R4 R2 34
Alice makes a session key with R1 ...And then tunnels to R2...and to R3 Bob Alice R1 R3 R5 R4 R2 35
Can multiplex many connections through the encrypted circuit Bob Alice R1 R3 Bob2 R5 R4 R2 36
Tor anonymizes TCP streams only: it needs other applications to clean high-level protocols. SSH S O C K S Web SOCKS P H T T Web browser scrubber Tor network Tor client SOCKS IRC client 37
We added a control protocol for external GUI applications. SSH SOCKS HTTP S O Web C Web K S browser scrubber Tor client Control protocol Controller GUI (Change configuration, report errors, manage circuits, etc.) 38
Usability for server operators is key. ● Rate limiting: eating too much bandwidth is rude! ● Exit policies: not everyone is willing to emit arbitrary traffic. allow 18.0.0.0/8:* allow *:22 allow *:80 reject *:* 39
Server discovery must not permit liars to impersonate the whole network. 1. Alice says, “Describe the network!” Evil Alice1 Server E.S. E.S. E.S. Evil Alice1 Server E.S. E.S. E.S. 2. Alice is now in trouble. 40
Server discovery is hard because misinformed clients lose anonymity. Known to Alice1 S S Bob1 Alice1 S S S S Alice2 S Bob2 S S Known to Alice2 41
Recommend
More recommend