| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128 | Filename: 133-unreachable-ors.txtTitle: Incorporate Unreachable ORs into the Tor NetworkAuthor: Robert HoganCreated: 2008-03-08Status: DraftOverview:  Propose a scheme for harnessing the bandwidth of ORs who cannot currently  participate in the Tor network because they can only make outbound  TCP connections.Motivation:   Restrictive local and remote firewalls are preventing many willing  candidates from becoming ORs on the Tor network.These  ORs have a casual interest in joining the network but their operator is not  sufficiently motivated or adept to complete the necessary router or firewall  configuration. The Tor network is losing out on their bandwidth. At the  moment we don't even know how many such 'candidate' ORs there are.Objective:  1. Establish how many ORs are unable to qualify for publication because     they cannot establish that their ORPort is reachable.  2. Devise a method for making such ORs available to clients for circuit     building without prejudicing their anonymity.Proposal:  ORs whose ORPort reachability testing fails a specified number of  consecutive times should:  1. Enlist themselves with the authorities setting a 'Fallback' flag. This      flag indicates that the OR is up and running but cannot connect to      itself.  2. Open an orconn with all ORs whose fingerprint begins with the same      byte as their own. The management of this orconn will be transferred      entirely to the OR at the other end.  2. The fallback OR should update it's router status to contain the      'Running' flag if it has managed to open an orconn with 3/4 of the ORs      with an FP beginning with the same byte as its own.  Tor ORs who are contacted by fallback ORs requesting an orconn should:   1. Accept the orconn until they have reached a defined limit of orconn      connections with fallback ORs.   2. Should only accept such orconn requests from listed fallback ORs who      have an FP beginning with the same byte as its own.  Tor clients can include fallback ORs in the network by doing the  following:   1. When building a circuit, observe the fingerprint of each node they      wish to connect to.   2. When randomly selecting a node from the set of all eligible nodes,      add all published, running fallback nodes to the set where the first      byte of the fingerprint matches the previous node in the circuit.Anonymity Implications:  At least some, and possibly all, nodes on the network will have a set  of nodes that only they and a few others can build circuits on.    1. This means that fallback ORs might be unsuitable for use as middlemen       nodes, because if the exit node is the attacker it knows that the       number of nodes that could be the entry guard in the circuit is       reduced to roughly 1/256th of the network, or worse 1/256th of all       nodes listed as Guards. For the same reason, fallback nodes would       appear to be unsuitable for two-hop circuits.    2. This is not a problem if fallback ORs are always exit nodes. If       the fallback OR is an attacker it will not be able to reduce the       set of possible nodes for the entry guard any further than a normal,       published OR.Possible Attacks/Open Issues:  1. Gaming Node Selection    Does running a fallback OR customized for a specific set of published ORs    improve an attacker's chances of seeing traffic from that set of published    ORs? Would such a strategy be any more effective than running published    ORs with other 'attractive' properties?  2. DOS Attack    An attacker could prevent all other legitimate fallback ORs with a    given byte-1 in their FP from functioning by running 20 or 30 fallback ORs    and monopolizing all available fallback slots on the published ORs.     This same attacker would then be in a position to monopolize all the    traffic of the fallback ORs on that byte-1 network segment. I'm not sure    what this would allow such an attacker to do.  4. Circuit-Sniffing    An observer watching exit traffic from a fallback server will know that the    previous node in the circuit is one of a  very small, identifiable    subset of the total ORs in the network. To establish the full path of the    circuit they would only have to watch the exit traffic from the fallback    OR and all the traffic from the 20 or 30 ORs it is likely to be connected    to. This means it is substantially easier to establish all members of a    circuit which has a fallback OR as an exit (sniff and analyse 10-50 (i.e.    1/256 varying) + 1 ORs) rather than a normal published OR (sniff all 2560    or so ORs on the network). The same mechanism that allows the client to    expect a specific fallback OR to be available from a specific published OR    allows an attacker to prepare his ground.    Mitigant:    In terms of the resources and access required to monitor 2000 to 3000    nodes, the effort of the adversary is not significantly diminished when he    is only interested in 20 or 30. It is hard to see how an adversary who can    obtain access to a randomly selected portion of the Tor network would face    any new or qualitatively different obstacles in attempting to access much    of the rest of it.Implementation Issues:  The number of ORs this proposal would add to the Tor network is not known.  This is because there is no mechanism at present for recording unsuccessful  attempts to become an OR. If the proposal is considered promising it may be  worthwhile to issue an alpha series release where candidate ORs post a  primitive fallback descriptor to the authority directories. This fallback  descriptor would not contain any other flag that would make it eligible for  selection by clients. It would act solely as a means of sizing the number of  Tor instances that try and fail to become ORs.  The upper limit on the number of orconns from fallback ORs a normal,  published OR should be willing to accept is an open question. Is one  hundred, mostly idle, such orconns too onerous?
 |