Tor Browser 7.0 is released

The Tor Browser Team is proud to announce the first stable release in the 7.0 series. This release is available from the Tor Browser Project page and also from our distribution directory.

This release brings us up to date with Firefox 52 ESR which contains progress in a number of areas:

Most notably we hope having Mozilla's multiprocess mode (e10s) and content sandbox enabled will be one of the major new features in the Tor Browser 7.0 series, both security- and performance-wise (Update (July 7, 12:40 UTC): While sandboxing is enabled in Tor Browser 7 it turns out that the long awaited content sandboxing did not make it into the Firefox ESR series as there were still stability issues with it. We try to backport the necessary patches to make it work for Tor Browser, though.). While we are still working on the sandboxing part for Windows (the e10s part is ready), both Linux and macOS have e10s and content sandboxing enabled by default in Tor Browser 7.0. In addition to that, Linux and macOS users have the option to further harden their Tor Browser setup by using only Unix Domain sockets for communication with tor. Update (June 8, 8:00 UTC): As the last point caused some confusion: enabling Unix Domain sockets alone does not harden Tor Browser. One needs that *and* additional sandboxing mechanisms that prevent communication over TCP/IP.

The highlights in our tracking and fingerprinting resistance improvements are: cookies, view-source requests and the Permissions API are isolated to the first party URL bar domain now to enhance our tracking related defenses. On the fingerprinting side we disabled and/or patched several new features, among them WebGL2, the WebAudio, Social, SpeechSynthesis, and Touch APIs, and the MediaError.message property.

WIth the switch to ESR 52 come new system requirements for Windows and macOS users: On Windows Tor Browser 7.0 won't run on non-SSE2 capable machines anymore. On Apple computers OS X 10.9 is now the minimum system requirement.

Besides new system requirements for Windows and macOS users, there are some known issues with Tor Browser 7.0 as well:

  • Mozilla stopped ALSA support in Firefox 52 for Linux users. This means without having PulseAudio available, sound will be broken in Tor Browser 7.0 on Linux.
  • The download button in the PDF viewer is currently broken. A workaround for this bug is right-clicking on the PDF file and choosing the "Save as" option.
  • Tor Browser has recently been freezing on some websites. This is related to a NoScript bug which will hopefully get addressed in a new NoScript version rather soon. If not then we'll ship a workaround for it in the planned Tor Browser 7.0.1 which will update Firefox to 52.2.0esr next week.

Apart from switching to the new Firefox ESR and dealing with related issues we included a new Tor stable version (0.3.0.7) and updated our NoScript (5.0.5) and HTTPS-Everywhere versions (5.2.17).

We updated our toolchains during the ESR transition as well. In particular we retired the old GCC-based one for our macOS cross-compilation and rely solely on clang/cctools now.

The full changelog since Tor Browser 6.5.2 is:

  • All Platforms
    • Update Firefox to 52.1.2esr
    • Update Tor to 0.3.0.7
    • Update Torbutton to 1.9.7.3
      • Bug 22104: Adjust our content policy whitelist for ff52-esr
      • Bug 22457: Allow resources loaded by view-source://
      • Bug 21627: Ignore HTTP 304 responses when checking redirects
      • Bug 22459: Adapt our use of the nsIContentPolicy to e10s mode
      • Bug 21865: Update our JIT preferences in the security slider
      • Bug 21747: Make 'New Tor Circuit for this Site' work in ESR52
      • Bug 21745: Fix handling of catch-all circuit
      • Bug 21547: Fix circuit display under e10s
      • Bug 21268: e10s compatibility for New Identity
      • Bug 21267: Remove window resize implementation for now
      • Bug 21201: Make Torbutton multiprocess compatible
      • Translations update
    • Update Tor Launcher to 0.2.12.2
      • Bug 22283: Linux 7.0a4 broken after update due to unix: lines in torrc
      • Bug 20761: Don't ignore additional SocksPorts
      • Bug 21920: Don't show locale selection dialog
      • Bug 21546: Mark Tor Launcher as multiprocess compatible
      • Bug 21264: Add a README file
      • Translations update
    • Update HTTPS-Everywhere to 5.2.17
    • Update NoScript to 5.0.5
    • Update Go to 1.8.3 (bug 22398)
    • Bug 21962: Fix crash on about:addons page
    • Bug 21766: Fix crash when the external application helper dialog is invoked
    • Bug 21886: Download is stalled in non-e10s mode
    • Bug 21778: Canvas prompt is not shown in Tor Browser based on ESR52
    • Bug 21569: Add first-party domain to Permissions key
    • Bug 22165: Don't allow collection of local IP addresses
    • Bug 13017: Work around audio fingerprinting by disabling the Web Audio API
    • Bug 10286: Disable Touch API and add fingerprinting resistance as fallback
    • Bug 13612: Disable Social API
    • Bug 10283: Disable SpeechSynthesis API
    • Bug 22333: Disable WebGL2 API for now
    • Bug 21861: Disable additional mDNS code to avoid proxy bypasses
    • Bug 21684: Don't expose navigator.AddonManager to content
    • Bug 21431: Clean-up system extensions shipped in Firefox 52
    • Bug 22320: Use preference name 'referer.hideOnionSource' everywhere
    • Bug 16285: Don't ship ClearKey EME system and update EME preferences
    • Bug 21675: Spoof window.navigator.hardwareConcurrency
    • Bug 21792: Suppress MediaError.message
    • Bug 16337: Round times exposed by Animation API to nearest 100ms
    • Bug 21972: about:support is partially broken
    • Bug 21726: Keep Graphite support disabled
    • Bug 21323: Enable Mixed Content Blocking
    • Bug 21685: Disable remote new tab pages
    • Bug 21790: Disable captive portal detection
    • Bug 21686: Disable Microsoft Family Safety support
    • Bug 22073: Make sure Mozilla's experiments are disabled
    • Bug 21683: Disable newly added Safebrowsing capabilities
    • Bug 22071: Disable Kinto-based blocklist update mechanism
    • Bug 22415: Fix format error in our pipeline patch
    • Bug 22072: Hide TLS error reporting checkbox
    • Bug 20761: Don't ignore additional SocksPorts
    • Bug 21862: Rip out potentially unsafe Rust code
    • Bug 16485: Improve about:cache page
    • Bug 22462: Backport of patch for bug 1329521 to fix assertion failure
    • Bug 21340: Identify and backport new patches from Firefox
    • Bug 22153: Fix broken feeds on higher security levels
    • Bug 22025: Fix broken certificate error pages on higher security levels
    • Bug 21887: Fix broken error pages on higher security levels
    • Bug 22458: Fix broken `about:cache` page on higher security levels
    • Bug 21876: Enable e10s by default on all supported platforms
    • Bug 21876: Always use esr policies for e10s
    • Bug 20905: Fix resizing issues after moving to a direct Firefox patch
    • Bug 21875: Modal dialogs are maximized in ESR52 nightly builds
    • Bug 21885: SVG is not disabled in Tor Browser based on ESR52
    • Bug 17334: Hide Referer when leaving a .onion domain (improved patch)
    • Bug 18531: Uncaught exception when opening ip-check.info
    • Bug 18574: Uncaught exception when clicking items in Library
    • Bug 22327: Isolate Page Info media previews to first party domain
    • Bug 22452: Isolate tab list menuitem favicons to first party domain
    • Bug 15555: View-source requests are not isolated by first party domain
    • Bug 3246: Double-key cookies
    • Bug 8842: Fix XML parsing error
    • Bug 5293: Neuter fingerprinting with Battery API
    • Bug 16886: 16886: "Add-on compatibility check dialog" contains Firefox logo
    • Bug 19645: TBB zooms text when resizing browser window
    • Bug 19192: Untrust Blue Coat CA
    • Bug 19955: Avoid confusing warning that favicon load request got cancelled
    • Bug 20005: Backport fixes for memory leaks investigation
    • Bug 20755: ltn.com.tw is broken in Tor Browser
    • Bug 21896: Commenting on website is broken due to CAPTCHA not being displayed
    • Bug 20680: Rebase Tor Browser patches to 52 ESR
    • Bug 22429: Add IPv6 address for Lisbeth:443 obfs4 bridge
    • Bug 22468: Add default obfs4 bridges frosty and dragon
  • Windows
    • Bug 22419: Prevent access to file://
    • Bug 12426: Make use of HeapEnableTerminationOnCorruption
    • Bug 19316: Make sure our Windows updates can deal with the SSE2 requirement
    • Bug 21868: Fix build bustage with FIREFOX_52_0_2esr_RELEASE for Windows
  • OS X
    • Bug 21940: Don't allow privilege escalation during update
    • Bug 22044: Fix broken default search engine on macOS
    • Bug 21879: Use our default bookmarks on OSX
    • Bug 21779: Non-admin users can't access Tor Browser on macOS
    • Bug 21723: Fix inconsistent generation of MOZ_MACBUNDLE_ID
    • Bug 21724: Make Firefox and Tor Browser distinct macOS apps
    • Bug 21931: Backport OSX SetupMacCommandLine updater fixes
    • Bug 15910: Don't download GMPs via the local fallback
  • Linux
    • Bug 16285: Remove ClearKey related library stripping
    • Bug 22041: Fix update error during update to 7.0a3
    • Bug 22238: Fix use of hardened wrapper for Firefox build
    • Bug 21907: Fix runtime error on CentOS 6
    • Bug 15910: Don't download GMPs via the local fallback
  • Android
    • Bug 19078: Disable RtspMediaResource stuff in Orfox
  • Build system
    • Windows
      • Bug 21837: Fix reproducibility of accessibility code for Windows
      • Bug 21240: Create patches to fix mingw-w64 compilation of Firefox ESR 52
      • Bug 21904: Bump mingw-w64 commit to help with sandbox compilation
      • Bug 18831: Use own Yasm for Firefox cross-compilation
    • OS X
      • Bug 21328: Updating to clang 3.8.0
      • Bug 21754: Remove old GCC toolchain and macOS SDK
      • Bug 19783: Remove unused macOS helper scripts
      • Bug 10369: Don't use old GCC toolchain anymore for utils
      • Bug 21753: Replace our old GCC toolchain in PT descriptor
      • Bug 18530: ESR52 based Tor Browser only runs on macOS 10.9+
      • Bug 22328: Remove clang PIE wrappers
    • Linux
      • Bug 21930: NSS libraries are missing from mar-tools archive
      • Bug 21239: Adapt Linux Firefox descriptor to ESR52 (use GTK2)
      • Bug 21960: Linux bundles based on ESR 52 are not reproducible anymore
      • Bug 21629: Fix broken ASan builds when switching to ESR 52
      • Bug 22444: Use hardening-wrapper when building GCC
      • Bug 22361: Fix hardening of libraries built in linux/gitian-utils.yml

Hmm - it seems the problem just spontaneously disappeared. I copied the custom bridges back in, but selected "provided bridges" and meek-azure, and did a restart. That worked - but the bridges I had copied in were gone (I hate that, BTW).

Then I copied them in again, and kept the selection of "custom bridges", and restarted again - and it worked quickly and flawlessly.

Sorry for this..

Anonymous

June 07, 2017

Permalink

Question:

there is a long automatic chosen relay list in the state-file, e.g
"Guard in=default rsa_id=xxxxxxxxxxxxxxxxxxx nickname=xxxxxxxxxxxxxx sampled_on=2017-05-29T19:39:55 sampled_by=0.3.0.7 listed=1

Guard in=default rsa_id=xxxxxxxxxxxxxxxxxxx nickname=xxxxxxxxxxxxxxxxxxx sampled_on=2017-05-30T17:00:39 sampled_by=0.3.0.7 listed=1"

Non-Guardrelays, too. Can you explain?

Anonymous

June 08, 2017

Permalink

I'm also seeing failed connection attempts with bridgedb and the default obfs4 bridges. Both are spamming "Ignoring directory request, since no bridge nodes available yet." notices.

I managed to connect after a few tries. Could this be the new guard selection? The same bridgedb bridges used to work on the first try. I haven't used the 0.3.0.x series, so I really couldn't tell.

Hm, I just tested with a clean Tor Browser and I got something like

Jun 08 08:25:00.000 [notice] I learned some more directory information, but not enough to build a circuit: We're missing descriptors for some of our primary entry guards
Jun 08 08:25:00.000 [notice] Ignoring directory request, since no bridge nodes are available yet.

But connecting continued and succeeded. Are you saying that there is a connection for you between this spamming and failed connection attempts?

Correct, and I also tested with a clean tor-browser. I should have kept the logs, but when the connections failed the initial setup just hanged, when trying with the bridgedb bridges usually at 75%. I left it for a few minutes, but nothing happened. I also got unable to connect warnings, which is odd because I know they just worked.

I should mention, when the connection succeeds I might also get some notices, however, not nearly as many.

Anonymous

June 08, 2017

Permalink

I'm experienced Linux user. I use TBB in my Xen PV DomU. It worked fine before this release. I use Sys-V startup system for Debian and on-the-fly sound card PCI passthrough. Everything worked. Now I spent few hours to get PulseAudio working on my VM, but failed. Finally, I got it running, but without sound working. So, unfortunately, I have to continue to use my old TBB for sound-critical cites such as youtube. I hope you (and Mozilla) will hear our voices and recompile TBB with ALSA support.

Another issue follows from the previous fact. If I run TBB 7.0 without PulseAudio, it spams me with banner popup asking to install it. Every time some sound even happen at the same page, popup is shown again. It is too annoying.

Another thing I noticed is browser has become slower. When I scroll page I experience interrupts. The same happens when I type text in browser. Its behavior looks like 100% processor usage or out of RAM problem. 7.0 release it too raw.

Anonymous

June 08, 2017

Permalink

The update killed use of CSS for me (online and localized). It was buggy before and I ignored it but now it seems to be completely broken.
Any way to restore it or should I simply go back to TOR's last version.?

I didn't use Mozilla's browser recently but after installing it seems you're right. It's a problem with the Firefox browser (52, 53). Sorry to bother you.

(Localized meant, I used a CSS file stored on my PC. I thought it's a NoScript issue, at first.)

Anonymous

June 08, 2017

Permalink

I updated Tor Browser to 7.0 and I still see (it was already in previous versions) in tor button Security Setting to level High the following text:

Javascript is disabled by default on all sites.
On sites where JavaScript is enabled [...]

Confusing! Is JavaScript DISABLED ON ALL SITES or not?

Anonymous

June 08, 2017

Permalink

getting an error message when i download Tor. 0x000005. Any reason for that? is it my antivirus or defender perhaps?

Anonymous

June 08, 2017

Permalink

  1. 19:58:40.828 An error occurred during a connection to <a href="http://www.google.com:443.
  2.  
  3. The" rel="nofollow">www.google.com:443.</a></p>
  4. <p>The client has encountered bad data from the server.</p>
  5. <p>Error code: <a id="errorCode" title="SSL_ERROR_BAD_SERVER">SSL_ERROR_BAD_SERVER</a><br />
  6. 1 (unknown)<br />

Bad server! Internet doesn't lie ;-)))

Anonymous

June 08, 2017

Permalink

It was working fine yesterday, when I performed the automatic update from version 6 to version 7. Now it shows only a blank screen on every site. No, I don't mean those hidden .onion site, but literally EVERY site, including the torproject website. The browser shows the page title, the favicon, but the screen remains white. Basically, this version has become a load of useless bytes on my hard disk. Working on a Debian 8 PC.

Does it work if you start over with a clean new Tor Browser 7? Do you get some hints on what is going wrong in your terminal if you start Tor Browser with ./start-tor-browser.desktop --debug in your Tor Browser directory?

Anonymous

June 08, 2017

Permalink

Manjaro pamac found the update and asked to upgrade my tor browser, so I said yes. When it was done I started and all my bookmarks and settings were not there as it was the first time I ever run it.
I expect such behavior should come with a warning to allow us to back things up before they vanish. This is not the first time this happens, and it was under a different linux distribution that it had happened.

The responses for how to update to the new tor and where would it be found as source or binary have been non-existing. What's going on?

Is "Manjaro pamac" some sort of package manager?

It sounds like you did not install Tor Browser.

Maybe you installed something like the third-party tool "torbrowser-launcher" instead? if so, that third-party tool is probably where you should be filing your tickets (and/or maybe you should be using Tor Browser the normal default way).

Anonymous

June 08, 2017

Permalink

I ask the distinguished as a chain torus. How to be sure that the chain? I want my browser torus transmits, not just uses, but how to check for sure? If possible, write off in detail.

Anonymous

June 08, 2017

Permalink

Oh shi*

  1. 21:32:23.162 uncaught exception: out of memory 1 (unknown)<br />

Me too.
ip-check.info shows browser authentication highlighted in red, with a unique ID number.
The description says it is as bad for privacy/security as third party cookies.
My previous version did not do this, and was highlighted in green, indicating a setting.
This changed after the automatic update to 7.0.

Previously, when running the test, two popup authentication-type windows would come up first, which had text instructing the user to click "cancel". Now, those windows do not come up. I understand that they have something to do with testing the browser authentication.

If their test has not changed, then why would these two popup windows no longer appear?

Anonymous

June 08, 2017

Permalink

Could you make it easier to find the PGP keys used to sign the various releases? It's nice that you provide PGP-detached signature file, but you can't verify the signature without the PGP key.

Anonymous

June 08, 2017

Permalink

32-bit Tor BB 7.0 for linux does not work when run in a chroot. The browser starts, but does not display loaded web pages, ie. displays a blank page. Previous versions worked perfectly.

Running the 64-bit version natively works fine.

Anonymous

June 08, 2017

Permalink

Testing Tor Browser 7.0 on the ip-check.info website, it shows a unique browser authentication and is highlighted in red as a severe privacy threat. My old Tor Browser did not, and was green.

Any suggestions?

Anonymous

June 08, 2017

Permalink

Since the update, Tor does not save my adjustment to the network setting and about:config, meaning I have to re-do at each browser launch. Anyone have any idea what happened?

I’m just using the Tor browser without the Tor network by going into network settings and selecting “No Proxy”. Then in “about:config” going to “network.proxy.socks_remote_dns” and Toggling.

The next step is to toggle "extensions.torlauncher.start_tor”, which for some reason does save in-between browsing sessions. Since the update, the steps mentioned above do not save and I have to re-do each browsing session.

Join the discussion...

This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.

8 + 9 =
Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.