[tor-bugs] #11469 [Tor]: Exit not using one hop circuit to Directory Server

Tor Bug Tracker & Wiki blackhole at torproject.org
Thu May 15 01:25:22 UTC 2014


#11469: Exit not using one hop circuit to Directory Server
-------------------------+--------------------------------------------
     Reporter:  bburley  |      Owner:  nickm
         Type:  defect   |     Status:  assigned
     Priority:  major    |  Milestone:  Tor: 0.2.5.x-final
    Component:  Tor      |    Version:
   Resolution:           |   Keywords:  one-hop directory 024-backport
Actual Points:           |  Parent ID:
       Points:           |
-------------------------+--------------------------------------------
Changes (by nickm):

 * keywords:  one-hop directory => one-hop directory 024-backport
 * owner:   => nickm
 * status:  new => assigned
 * milestone:   => Tor: 0.2.5.x-final


Comment:

 Oh hey, this is some bad code.  In directory_post_to_dirservers, we do:

 {{{
       post_via_tor = purpose_needs_anonymity(dir_purpose, router_purpose)
 ||
         !fascist_firewall_allows_address_dir(&ds_addr, ds->dir_port);
       directory_initiate_command_routerstatus(rs, dir_purpose,
                                               router_purpose,
                                               post_via_tor,
                                               NULL, payload, upload_len,
 0);
 }}}

 But note that the 4th argument to
 `directory_initiate_command_routerstatus` is not a boolean; it's a
 dir_indirection_t.  So the possible values are DIRIND_ANON and
 DIRIND_ONEHOP.

 Later, in directory_command_should_use_begindir(), some DIRIND_ONEHOP
 values turn into DIRIND_DIRECT, if directory_fetches_from_authorities() is
 true.

 This could be far more broken than it is.  Writing a patch.

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/11469#comment:11>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list