Opened 17 months ago

Last modified 11 months ago

#24487 assigned defect

Reverse path selection (choose outer hops first)

Reported by: mikeperry Owned by: mikeperry
Priority: High Milestone: Tor: unspecified
Component: Core Tor/Tor Version:
Severity: Normal Keywords: guard-discovery-prop247-controller, needs-proposal, 034-roadmap-subtask, 034-triage-20180328, 034-included-20180328
Cc: asn Actual Points:
Parent ID: #25546 Points:
Reviewer: asn Sponsor: SponsorV-can


Because Tor's path selection chooses inner nodes first, and then excludes those nodes from being used in outer hops, over many circuits, outer hops get information about the choice of inner hops/guards.

We need to reverse the selection of nodes in the loop circuit_establish_circuit() in order to fix this.

This isn't as bad as it might otherwise be, because the last hop already is chosen first in that function. So it is a little tricky to take advantage of this info leak.

Child Tickets

Change History (12)

comment:1 Changed 17 months ago by mikeperry

Keywords: guard-discovery-prop247-controller added; guard-discovery removed

comment:2 Changed 17 months ago by mikeperry

Owner: set to mikeperry
Status: newassigned

comment:3 Changed 17 months ago by asn

Cc: asn added

comment:4 Changed 17 months ago by nickm

Keywords: needs-proposal added

comment:5 Changed 15 months ago by nickm

Milestone: Tor: 0.3.3.x-finalTor: 0.3.4.x-final

Mark a lot of assigned/needs_revision tickets as 0.3.4. If you think this should happen in 0.3.3 instead, just let me know?

comment:6 Changed 14 months ago by asn

Reviewer: asn

comment:7 Changed 13 months ago by asn

Parent ID: #9001#25546

comment:8 Changed 13 months ago by nickm

Keywords: 034-roadmap-subtask added

comment:9 Changed 13 months ago by nickm

Keywords: 034-triage-20180328 added

comment:10 Changed 13 months ago by nickm

Keywords: 034-included-20180328 added

comment:11 Changed 11 months ago by asn

Do we still want to do this, even tho we did #25705 for vanguard circs?

comment:12 Changed 11 months ago by mikeperry

Milestone: Tor: 0.3.4.x-finalTor: unspecified

I think we're still thinking about path restrictions for prop291. We may still want this... Otoh, I suppose we could close and then open new tickets for prop291 as needed.

Note: See TracTickets for help on using tickets.