Opened 3 years ago

Closed 13 months ago

#19745 closed defect (wontfix)

Tor2web clients ignore uptime when choosing rendezvous points

Reported by: teor Owned by:
Priority: Low Milestone: Tor: unspecified
Component: Core Tor/Tor Version:
Severity: Normal Keywords: tor2web tor-hs
Cc: Actual Points:
Parent ID: Points: 0.2
Reviewer: Sponsor:

Description

Normal Tor clients use LongLivedPorts to decide which circuits need to have good uptime.

But in Tor2web clients, this check is skipped, because of an assumption that one-hop paths are always directory fetches.

This means that when Tor2web chooses rendezvous points, it chooses regardless of their uptime, even if the port is in the list of LongLivesPorts.

In circuit_get_open_circ_or_launch:

  need_uptime = !conn->want_onehop && !conn->use_begindir &&
                smartlist_contains_int_as_string(options->LongLivedPorts,
                                          conn->socks_request->port);

We could fix this by replacing !conn->want_onehop with checking whether the connection purpose is directory or rendezvous.

This is not an issue in the majority of cases, because Tor2web typically uses ports 80 and 443, which aren't on the LongLivedPorts list. (It's also not an issue for Single Onion Services, which call circuit_launch_by_extend_info directly.)

Child Tickets

Change History (5)

comment:1 Changed 3 years ago by teor

Milestone: Tor: 0.2.???Tor: 0.3.???

Milestone renamed

comment:2 Changed 3 years ago by nickm

Keywords: tor-03-unspecified-201612 added
Milestone: Tor: 0.3.???Tor: unspecified

Finally admitting that 0.3.??? was a euphemism for Tor: unspecified all along.

comment:3 Changed 2 years ago by nickm

Keywords: tor-03-unspecified-201612 removed

Remove an old triaging keyword.

comment:4 Changed 2 years ago by nickm

Keywords: tor-hs added
Priority: MediumLow

comment:5 Changed 13 months ago by teor

Resolution: wontfix
Status: newclosed

Tor2web was removed in 0.3.5.

Note: See TracTickets for help on using tickets.