1

As I understand it, Tor nodes and clients bootstrap themselves by contacting over the regular internet some hard-coded addresses to get basic network information.

What are the effects of this design decision for someone facing a hostile network? Could a network administrator block this first connection? Could they impersonate the servers and give false information to the client, such that the user thinks they are secure, whilst their entire connection is compromised?

  • Whoops, thanks for catching that embarrassing apostrophe gaffe! – Megan Walker Sep 25 '13 at 19:26
4

You are actually asking two questions here. One is about censorship resistance (can somebody block the bootstrapping process?) and the other about authentication (can a bad person pretend to be a Tor relay?). Here are answers to both questions:

  1. Censorship resistance: Yes, a nasty network administrator can indeed block the bootstrapping connections which download the network consensus from the directory authorities. In fact, this is done by the Great Firewall of China. (Part of) The solution to this problem are bridges. Bridges are basically unpublished Tor relays which no longer have this single point of failure. Additional information can be found under point 'h' here.
  2. Authentication: As you write, the Tor source code includes a hard-coded list of the directory authorities' IP addresses as well as their cryptographic key fingerprints. This is the trust anchor. After your Tor client fetched the network consensus which contains all Tor relays, it verifies that it is authentic by checking the signature over the consensus. Nobody can give you a manipulated consensus because your client already knows the authorities' keys. The consensus then contains the key fingerprints of all Tor relays which makes it very hard to "man-in-the-middle" such a connection. Of course, this assumes that you got your copy of Tor over a secure channel. In practice, you probably downloaded it over HTTPS from https://www.torproject.org and checked the PGP signature. Unfortunately, secure software distribution is a difficult problem. Additional information is available here.
2

For the security aspect (e.g. impersonation), you might like this FAQ entry which explains why it's safe:

https://www.torproject.org/docs/faq#KeyManagement

But you're right that a local network attacker could still prevent connections to these initial directory authorities, and thus stop bootstrapping. See point 'h' on https://www.torproject.org/docs/documentation#UpToSpeed for a history of those issues, and why we designed and deployed "bridge" relays for this situation. And see also https://www.torproject.org/docs/bridges

  • Could you summarise the links in the answer, in case the linked webpages should change, or disappear, (or be blocked....). – Megan Walker Sep 25 '13 at 20:25
  • Probably best just to go with Philipp's version. Especially if you get him to add the links in. :) – Roger Dingledine Sep 25 '13 at 20:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.