Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Handle .onions in all contexts #806

Closed
tildelowengrimm opened this issue Aug 21, 2018 · 10 comments · Fixed by brave/brave-core#6762
Closed

Handle .onions in all contexts #806

tildelowengrimm opened this issue Aug 21, 2018 · 10 comments · Fixed by brave/brave-core#6762

Comments

@tildelowengrimm
Copy link
Contributor

tildelowengrimm commented Aug 21, 2018

Description

It seems generally unlikely that anyone entering a .onion address into the address bar means to browse to that site without Tor or to make DNS requests regarding it. When someone does so, we should probably treat it as an oversight. At the very least, we should not tell anyone else about it (no DNS lookups, for instance). But perhaps we should do more and provide a useful notification or even smoothly redirect them to a Private Window with Tor?

Design

Show a "Open in Tor" button in the URL bar when user enters a .onion address or address with .onion available.

image

Dark Theme

Dark theme is supported:
image

Assets

Figma: https://www.figma.com/file/5THkuEtO2Ewn9LfqrHZP9a/?node-id=0%3A1

@Mikaela
Copy link

Mikaela commented Oct 8, 2018

The RFC on .onions agrees with you.

   2.  Application Software: Applications (including proxies) that
       implement the Tor protocol MUST recognize .onion names as special
       by either accessing them directly or using a proxy (e.g., SOCKS
       [RFC1928]) to do so.  Applications that do not implement the Tor
       protocol SHOULD generate an error upon the use of .onion and
       SHOULD NOT perform a DNS lookup.

From RFC 7686 - The ".onion" Special-Use Domain Name

@srirambv
Copy link
Contributor

srirambv commented Oct 9, 2018

+1 from #1460 for auto switch for .onion domains

@tildelowengrimm tildelowengrimm added priority/P4 Planned work. We expect to get to it "soon". priority/P3 The next thing for us to work on. It'll ride the trains. and removed priority/P4 Planned work. We expect to get to it "soon". labels Oct 30, 2018
@asddsaz
Copy link

asddsaz commented Nov 5, 2018

Since .onion domains have very high levels of anonymity in the first place. You should be able to just send it to 127.0.0.1:9050 if TOR is running. For I2p many people utilize Foxy Proxy to auto-utilize I2p for .i2p domains (same can be done for .onion domains). Something similar could be done for Brave. This would be an awesome feature to have by default.

@tildelowengrimm tildelowengrimm added priority/P4 Planned work. We expect to get to it "soon". priority/P3 The next thing for us to work on. It'll ride the trains. and removed priority/P3 The next thing for us to work on. It'll ride the trains. priority/P4 Planned work. We expect to get to it "soon". labels Nov 28, 2018
@librarymd
Copy link

Supporting .onion addresses in all contexts would be a game-changer for Brave as a browser. There is no browser doing that yet. To be honest, having a separate private Tor window is too much hassle. There is already TorBrowser as a separate window.
Navigating privacy friendly .onion addresses should be as easy as navigating normal web, not harder.

@tildelowengrimm
Copy link
Contributor Author

I'm embarrassed that I didn't think of this before. I think it makes sense to treat .onion sites just like any other site if you open it in a non-private window. No need to make a big deal out of it, just quietly use Tor behind the scenes and modify the security indicator to indicate that Brave is relying on the onion protocol rather than HTTPS.

@rebron rebron modified the milestone: 1.x Backlog Feb 7, 2019
riastradh-brave added a commit to brave/brave-core that referenced this issue May 10, 2019
fix brave/brave-browser#806

- If there is no private window with Tor open, fail.

  => TODO: This should fail noisily, beyond a console message.

  => One may be tempted to just create a private window with Tor, but:
     . This is not obviously easy to do here.
     . Users may not be happy if simply clicking a link can have the
       effect of using Tor when they didn't intend.

- If there is a private window with Tor open, create a new tab to load
  the page.

  => User expectations around onion services are likely to be that
     they provide anonymity, so opening them in the non-anonymous
     window may be surprising.

  => It is not clear how easy it would be to load in a non-Tor window
     and ensure that everything is nevertheless loaded through Tor --
     and likewise links from it, &c.
riastradh-brave added a commit to brave/brave-core that referenced this issue May 24, 2019
fix brave/brave-browser#806

- If there is no private window with Tor open, fail.

  => TODO: This should fail noisily, beyond a console message.

  => One may be tempted to just create a private window with Tor, but:
     . This is not obviously easy to do here.
     . Users may not be happy if simply clicking a link can have the
       effect of using Tor when they didn't intend.

- If there is a private window with Tor open, create a new tab to load
  the page.

  => User expectations around onion services are likely to be that
     they provide anonymity, so opening them in the non-anonymous
     window may be surprising.

  => It is not clear how easy it would be to load in a non-Tor window
     and ensure that everything is nevertheless loaded through Tor --
     and likewise links from it, &c.
riastradh-brave added a commit to brave/brave-core that referenced this issue Jun 19, 2019
fix brave/brave-browser#806

- If there is no private window with Tor open, fail.

  => TODO: This should fail noisily, beyond a console message.

  => One may be tempted to just create a private window with Tor, but:
     . This is not obviously easy to do here.
     . Users may not be happy if simply clicking a link can have the
       effect of using Tor when they didn't intend.

- If there is a private window with Tor open, create a new tab to load
  the page.

  => User expectations around onion services are likely to be that
     they provide anonymity, so opening them in the non-anonymous
     window may be surprising.

  => It is not clear how easy it would be to load in a non-Tor window
     and ensure that everything is nevertheless loaded through Tor --
     and likewise links from it, &c.
@bsclifton
Copy link
Member

+1 from @Merith-TK via #7078

Description

So the idea kinda follows along the lines of this
when you click on a tornet link, (.onion), or enter a .onion address in your browser, have a small popup that asks if you want to actually go to this adress, and if the user clicks "Yes" open a tortab with that URL

Or maybe set a default page or persistance book marks

@darkdh darkdh self-assigned this Sep 9, 2020
@karenkliu
Copy link

Designs added!

@LaurenWags
Copy link
Member

LaurenWags commented Nov 10, 2020

Verification in progress with

Brave	1.17.65 Chromium: 87.0.4280.49 (Official Build) unknown (x86_64)
Revision	f77f85899646b42a1d3c8ff36794e00becab9171-refs/branch-heads/4280@{#1115}
OS	macOS Version 10.14.6 (Build 18G6032)

Verified test plan from brave/brave-core#6762

Logged the following issues:

Encountered the following issues:

onion-location header:

Non Tor window

Checked for Normal, Private, Guest windows:

Tor SS 1 Tor SS 3 Tor SS4
Tor window

Checked for Tor window:

Tor SS 2
Tor disabled

Checked for Normal, Private, Guest windows:

Tor SS 5 Tor SS 6 Tor SS 7
Brave	1.17.67 Chromium: 87.0.4280.49 (Official Build) unknown (x86_64)
Revision	f77f85899646b42a1d3c8ff36794e00becab9171-refs/branch-heads/4280@{#1115}
OS	macOS Version 10.14.6 (Build 18G6032)

onion-location header:

Automatically redirect .onion site - Non Tor window

Default value of Automatically redirect .onion sites is off:

Onion1

Enabled this setting and checked test plan from PR for Normal, Private, Guest windows. Confirmed when tab containing brave.com was not the only tab in the window, it was closed

Tab w/ brave.com was not the only tab in the window, so the tab was closed:

Normal1

Tab w/ brave.com was the only tab in the window, so the tab was not closed:

Normal2

Tab w/ brave.com was not the only tab in the window, so the tab was closed:

Private1

Tab w/ brave.com was the only tab in the window, so the tab was not closed:

Private2

Does not work for Guest window. Logged #12644.

Guest
Automatically redirect .onion site - Tor window

Tab w/ brave.com was not the only tab in the window, so the tab was closed:

Tor1

Tab w/ brave.com was the only tab in the window, so the tab was not closed:

Tor2

.onion domain:
*note - does not require "Automatically redirect .onion sites" to be toggled ON

Non Tor window

Verified for Normal, Private, Guest windows:

Normal Private Guest
Tor window Tor
Tor is disabled N1 P1 G1

Verification passed on

Brave 1.17.68 Chromium: 87.0.4280.49 (Oficjalna wersja) (64-bitowa)
Wersja f77f85899646b42a1d3c8ff36794e00becab9171-refs/branch-heads/4280@{#1115}
System operacyjny Windows 7 Service Pack 1 (Build 7601.24544)

Verified test plan from brave/brave-core#6762

onion-location header:

Non Tor window

Checked for Normal, Private, Guest windows:

image
image
image
image

Tor window

Checked for Tor window:

image

Tor disabled

Checked for Normal, Private, Guest windows:

image
image
image

@Madis0
Copy link

Madis0 commented Nov 11, 2020

address with .onion available

Why is this icon needed when the user is not in a Tor window and not typing .onion, just browsing a site that has one? I imagine a lot of Facebook and DuckDuckGo users getting accidentally redirected to Tor window and not knowing why it was suggested...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment