[tor-bugs] #25528 [Core Tor/Tor]: When ClientTransportPlugin is missing, tor connects directly to bridge addresses, even if they have a transport name
Tor Bug Tracker & Wiki
blackhole at torproject.org
Fri Mar 16 23:56:55 UTC 2018
#25528: When ClientTransportPlugin is missing, tor connects directly to bridge
addresses, even if they have a transport name
-------------------------+-------------------------------------------------
Reporter: dcf | Owner: (none)
Type: defect | Status: new
Priority: Medium | Milestone:
Component: Core | Version: Tor: unspecified
Tor/Tor | Keywords: pt bootstrap bridge-client bridge-
Severity: Normal | bypass
Actual Points: | Parent ID:
Points: | Reviewer:
Sponsor: |
-------------------------+-------------------------------------------------
Start `tcpdump -n host 83.212.101.3`
Run tor with this torrc:
{{{
UseBridges 1
Bridge obfs4 83.212.101.3:50002 A09D536DD1752D542E1FBB3C9CE4449D51298239
cert=lPRQ/MXdD1t5SRZ9MquYQNT9m5DV757jtdXdlePmRCudUU9CFUOX1Tm7/meFSyPOsud7Cw
iat-mode=0
}}}
See a connection to 83.212.101.3:50002, despite that, lacking a
`ClientTransportPlugin` line, tor doesn't know how to connect to an
"obfs4" bridge.
Another way to see it is with this torrc, using a phony address like meek
and snowflake do:
{{{
UseBridges 1
Bridge dummy 0.0.3.0:1
}}}
tor actually tries to connect to the 0.0.3.0:1 address, and fails with an
"Invalid argument" error:
{{{
[warn] Problem bootstrapping. Stuck at 5%: Connecting to directory server.
(Invalid argument; RESOURCELIMIT; count 1; recommendation warn; host
0000000000000000000000000000000000000000 at 0.0.3.0:1)
}}}
I expected instead that tor would not try to connect to the address, but
rather would show
[https://gitweb.torproject.org/tor.git/tree/src/or/connection_or.c?h=tor-0.3.2.10#n1231
this error message]:
> We were supposed to connect to bridge 'X' using pluggable transport 'Y',
but we can't find a pluggable transport proxy supporting 'Y'. This can
happen if you haven't provided a ClientTransportPlugin line, or if your
pluggable transport proxy stopped running.
The problem exists in both 0.2.9.14 and 0.3.4.0-alpha-dev, which are the
two versions I tested.
I found this problem through a user report at #25527. The user was trying
to run the Tor Browser tor, but they were in the wrong directory, so they
were only getting torrc and not torrc-defaults. torrc contains
`UseBridges` and `Bridge`, but torrc-defaults contains
`ClientTransportPlugin`.
There was another ticket about tor occasionally connecting to PT bridges
as if they were ordinary guards: #20532. It may be the same as this. At
#25527 I speculated that the problem might have been caused by cached
`Guard` entries, but that doesn't seem to be the case. All you have to do
is omit the `ClientTransportPlugin` line.
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/25528>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list