[tor-bugs] #16221 [Applications/Tor Browser]: Investigate WebRTC with TCP-ICE and hidden services

Tor Bug Tracker & Wiki blackhole at torproject.org
Mon Feb 17 09:42:11 UTC 2020


#16221: Investigate WebRTC with TCP-ICE and hidden services
--------------------------------------+--------------------------
 Reporter:  mikeperry                 |          Owner:  tbb-team
     Type:  enhancement               |         Status:  new
 Priority:  Medium                    |      Milestone:
Component:  Applications/Tor Browser  |        Version:
 Severity:  Normal                    |     Resolution:
 Keywords:                            |  Actual Points:
Parent ID:                            |         Points:
 Reviewer:                            |        Sponsor:
--------------------------------------+--------------------------

Comment (by araigumaG):

 IMHO, connection with TCP-ICE Candidate is not suitable for concept of Tor
 Browser. Nevertheless, The concept of using WebRTC over Tor still seems
 alive.

 == Conceivable problem of privacy. ==

 As [comment:14 gk] said above, TCP ICE candidate is the concept for enable
 direct connection over TCP. People seems to use this method under
 relatively simple circumstance (e.g. both ends of peer are in same LAN, or
 they have each of global IP).

 Therefore, in this situation, Tor Browser tells the IP addrress of itself.
 This seems to be nothing but what people call "WebRTC Leak". I suppose
 that this scenario is not suitable for the concept of Tor Browser.

 == Another option for establishing WebRTC connection over Tor(?) ==

 Fortunately, I can show somethings like ideas of the method which enables
 Tor Browser to use WebRTC:

 1. use TURN

   WebRTC (ICE) has TURN option. TURN relay the connection, and TURN server
 can communicate with the browser in TCP. Firefox already has the
 option(media.peerconnection.ice.relay_only, more information
 [https://wiki.mozilla.org/Media/WebRTC/Privacy here]) to force it to use
 relay (TURN).

   I'm afraid to say, this approach is not perfect. The connection between
 the browser and TURN server can also be over UDP (or TLS over TCP). In
 conclusion, if tbb make the method possible, the option for banning
 transport over UDP.

 2. use STUN, and TCP connection

   I think why cannot we use STUN for TCP connection when the idea of
 direct TCP connection exist. AFAIK, the specification of STUN
 ([https://tools.ietf.org/html/rfc5389#section-7.2.2 RFC 5389]) said that
 using STUN in TCP connection is possible scenario.

   Needless to say, this method also needs "Don't use UDP" option.

 In any case, given that Tor cannot use UDP, we should find the method
 using TCP (or TLS) to use WebRTC.

 Thank you for your reading.

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


More information about the tor-bugs mailing list