Actions

SecBrowser ™ in Debian: A Security-hardened, Non-anonymous Browser

From Whonix

< SecBrowser
SecBrowser ™ Icon



Introduction[edit]

Info Documentation for SecBrowser in Qubes OS can be found here.

SecBrowser ™ is a security-focused browser that provides better protection from exploits, thereby reducing the risk of infection from malicious, arbitrary code. A built-in security slider provides enhanced usability, as website features which increase the attack surface (like JavaScript) can be easily disabled. Since many of the features that are commonly exploited in browsers are disabled by default, SecBrowser ™'s attack surface is greatly reduced. Without any customization, SecBrowser ™’s default configuration offers better security than Firefox, Google Chrome or Microsoft Edge.[1] It also provides better protections from online tracking, fingerprinting and the linkability of activities across different websites.

SecBrowser ™ is a derivative of the Tor Browser Bundle (which itself is a derivative of Mozilla Firefox) but without Tor. This means unlike Tor Browser, SecBrowser ™ does not route traffic over the Tor network, which in common parlance is referred to as "clearnet" traffic. Even without the aid of the Tor network, SecBrowser ™ still benefits from the numerous patches [archive] that Tor developers have merged into the code base. Even with developer skills, these enhancements would be arduous and time-consuming to duplicate in other browsers, with the outcome unlikely to match SecBrowser's ™ many security benefits. While browser extensions can be installed to mitigate specific attack vectors, this ad hoc approach is insufficient. SecBrowser ™ leverages the experience and knowledge of skilled Tor Project developers, and the battle-tested Tor Browser.

Security Enhancements[edit]

Table: SecBrowser ™ Security and Privacy Benefits

Feature Description
Security Slider Enables improved security by disabling certain web features that can be used as attack vectors.[2]
Default Tor Browser Add-ons
  • HTTPS Everywhere: This browser extension encrypts communications with many major websites, making your browsing more secure.[3]
  • NoScript: NoScript can provide significant protection with the correct configuration.[4] NoScript blocks active (executable) web content and protects against cross-site scripting [archive] (XSS). "The add-on also offers specific countermeasures against security exploits".
Firejail (Linux only) Firejail will be used as a sandboxing measure to restrict the SecBrowser process. [5]
Homograph Attack Protection Fixes the internationalized domain name (IDN) homograph attack vulnerability [archive] present in standard Firefox and Tor Browser releases. [6] [7]
Reproducible Builds Build security is achieved through a reproducible build process that enables anyone to produce byte-for-byte identical binaries to the ones the Tor Project releases.[8][9]
WebRTC Disabled by Default WebRTC can compromise the security of VPN tunnels, by exposing the external (real) IP address of a user.[10][11]

Privacy and Fingerprinting Resistance[edit]

Research from a pool of 500,000 Internet users has shown that the vast majority (84%) have unique browser configurations and version information which makes them trackable across the Internet. When Java or Flash is installed, this figures rises to 94%.[12] SecBrowser ™ shares the fingerprint with around three million [archive] other Tor Browser users, which allows people who use SecBrowser ™ to "blend in" with the larger population and better protect their privacy.

The EFF has found [archive] that while most browsers are uniquely fingerprintable, resistance is afforded via four methods:

  • Disabling JavaScript with tools like NoScript.
  • Use of Torbutton, which is bundled with SecBrowser ™ and enabled by default.
  • Use of mobile devices like Android and iPhone.
  • Corporate desktop machines which are clones of one another.

With JavaScript disabled, SecBrowser ™ provides significant resistance to browser fingerprinting.[13]

  • The User Agent is uniform for all Torbutton users.
  • Plugins are blocked.
  • The screen resolution is rounded down to 50 pixel multiples.
  • The timezone is set to GMT.
  • DOM Storage is cleared and disabled.

The EFF's Panopticlick [archive] fingerprint test shows that SecBrowser ™ resists fingerprinting.

Note: Because tracking techniques are complex, Panopticlick does not measure all forms of tracking and protection.

  • SecBrowser ™ conveys 6.26 bits of identifying information.
  • One in 76.46 browsers have the same fingerprint.
  • Browsers that convey lower bits of identification are better at resisting fingerprinting.[14]

When Tor Browser's and SecBrowser ™'s HTTP headers are compared using Fingerprint central's test suite [archive] the results are near identical.

Table: Tor Browser vs SecBrowser ™ HTTP headers comparison.

Percentage (%) out of 1652 with fingerprints tags [Firefox,Windows]:

Name Value TorBrowser SecBrowser™
% %
User-Agent Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0 2.48 2.42
Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 97.15 97.15
Host fpcentral.irisa.fr 90.44 90.43
Content-Length 100.00 100.00
Accepted-Language en-US,en;q=0.5 32.63 32.95
Referer https://fpcentral.irisa.fr/ [archive] 69.37 69.35
Upgrade-Insecure-Requests 1 83.05 83.04
Accepting-Encoding gzip, deflate, br 82.14 82.13
Content-Type 100.00 100.00
Connection close 100.00 100.00

Install SecBrowser ™[edit]

Info Note: These instructions are only for Debian hosts and VMs running buster or later versions!

SecBrowser ™ can be installed using tb-updater [archive] which is a package developed and maintained by Whonix developers. When run, tb-updater seamlessly automates the download and verification of SecBrowser ™ (from The Tor Project's website). One of the many benefits of tb-updater is the ability to disable Tor is prebuilt into the software. This improves usability and is convenient since a security-focused clearnet browser (SecBrowser ™), is readily available. To start SecBrowser ™ users can choose between the start menu, command line or create a desktop starter.[15] Unlike other manual methods of disabling Tor, this greatly simplifies the procedure and lessens the chance of a configuration error.

Package Installation[edit]

1. Download the Whonix signing key.

In the terminal, run.

Whonix first time users warning Warning:

The following command using gpg with --recv-keys is not recommended for security reasons and is often non-functional. [16] This is not a Whonix ™-specific issue. The OpenPGP public key should be downloaded from the web instead; see also Secure Downloads. This procedure is currently undocumented and can be resolved as per the Free Support Principle. Documentation contributions will be happily considered.

sudo apt-key --keyring /etc/apt/trusted.gpg.d/whonix.gpg adv --keyserver hkp://ipv4.pool.sks-keyservers.net:80 --recv-keys 916B8D99C38EAF5E8ADC7A2A8D66066A2EEACCDA

2. Display the key's fingerprint.

In the terminal, run.

sudo apt-key adv --fingerprint 916B8D99C38EAF5E8ADC7A2A8D66066A2EEACCDA

3. Compare the fingerprint displayed in the terminal to the one listed here.

4. In the terminal, add the Whonix APT repository to the sources.list

echo "deb https://deb.whonix.org buster main contrib non-free" | sudo tee /etc/apt/sources.list.d/whonix.list

5. In the Debian terminal, update the packages lists.

sudo apt-get update

6. Install.

In the Debian terminal, run.

sudo apt-get install --no-install-recommends secbrowser

Download SecBrowser ™[edit]

SecBrowser ™ can be installed simply by running download-secbrowser in a Debian terminal.

download-secbrowser

Start SecBrowser ™[edit]

SecBrowser ™ can be started from the start menu.

Alternatively, run the following command in a Debian terminal.

secbrowser

SecBrowser Settings and Configuration[edit]

While SecBrowser ™ has numerous security enhancements they can come at a cost of decreased usability. Since it is also highly configurable, security settings and behavior can be customized according to personal requirements.

Security Slider[edit]

SecBrowser ™ has a “Security Slider” in the shield menu. This can increase security [archive] by disabling certain web features that are possible attack vectors. By default, the Security Slider is set to “Safest” which is the highest security level. This security level will prevent some web pages from functioning properly, so security needs must be weighed against the degree of usability that is required.

Private Browsing Mode[edit]

In the default configuration Tor Browser has private browsing mode enabled. This setting prevents browsing and download history as well as cookies from remaining persistent across SecBrowser ™ restarts. However, tb-starter includes a custom user_pref that disables private browsing mode when SecBrowser ™ is used.

When private browsing mode is disabled SecBrowser ™'s built-in "long-term linkability" protections are deactivated. This means users are vulnerable to attacks which can link activities between earlier and later browsing sessions. If privacy is paramount users can enable private browsing mode by commenting out the corresponding user preference.

1. Open the user.js configuration file in an editor.

nano ~/.secbrowser/secbrowser/Browser/TorBrowser/Data/Browser/profile.default/user.js

2. Next, comment out "//" user_pref("browser.privatebrowsing.autostart", false);.

Check the text block is identical to the one below.

// Normalize SecBrowser ™ behavior
user_pref("extensions.torbutton.noscript_persist", true);
//user_pref("browser.privatebrowsing.autostart", false);

If you prefer to keep private browsing mode disabled, it may be advantageous to install one or more anti-tracking browser extensions. The extensions Disconnect [archive], Privacy Badger [archive] and uBlock Origin [archive] are all open-source and are generally recommended. Research which one(s) may be most suitable in the circumstances; their use cases are different.

Persistent NoScript Settings[edit]

tb-starter includes a user_pref that allows custom NoScript settings to persist across browser sessions. This is also a security vs usability trade-off.[17] If the SecBrowser ™ “Security Slider” setting is changed afterwards, all NoScript preferences are overridden and all custom, per-site settings are lost. This holds true regardless of whether the security setting was increased or decreased.

If the persistent NoScript setting is undesirable, this can easily be disabled by commenting out the corresponding user_pref.

1. Open the user.js configuration file in an editor.

nano ~/.secbrowser/secbrowser/Browser/TorBrowser/Data/Browser/profile.default/user.js

2. Next, comment out "//" user_pref("extensions.torbutton.noscript_persist", true);

Check the text block is identical to the one below.

// Normalize SecBrowser ™ behavior
//user_pref("extensions.torbutton.noscript_persist", true);
user_pref("browser.privatebrowsing.autostart", false);

Remember Logins and Passwords for Sites[edit]

To increase usability, SecBrowser ™ can (by default) save site login information such as user names or passwords. This usability improvement was implemented by setting signon.rememberSignons to true, which allows this information to be saved across browser sessions.

If you prefer to disable this feature open user.js in an editor and comment out the corresponding user_pref.

1. Open the user.js configuration file in an editor.

nano ~/.secbrowser/secbrowser/Browser/TorBrowser/Data/Browser/profile.default/user.js

2. Next, comment out "//" user_pref("signon.rememberSignons", true);

Check the text block is identical to the one below.

// Save passwords.
//user_pref("signon.rememberSignons", true);

Startup[edit]

SecBrowser ™ no longer opens with a red background and a message stating "Something Went Wrong!" Tor is not working in this browser. [18] This warning was disabled by toggling the user preference extensions.torbutton.test_enabled to false. [19]

Download Alpha Versions[edit]

1. Create a /etc/secbrowser.d folder.

sudo mkdir /etc/secbrowser.d

2. Open /etc/secbrowser.d/50_user.conf in an editor with root rights.

sudo nano /etc/secbrowser.d/50_user.conf

3. Add the following setting.

tbb_download_alpha_version=true

4. Save the file.

The procedure is complete.

Updating Debian Hosts / VMs with the lastest Tor Browser Version[edit]

The latest Tor Browser version can be downloaded in Debian using tb-updater. This is the same mechinism used by Whonix to download the latest Tor Browser version. See; Tor Browser Downloader by Whonix ™.

When the tb-updater package is updated, download-secbrowser runs automatically.

If tb-updater has not been updated yet, Debian users can run the following command in a terminal.

download-secbrowser

FAQ[edit]

Whonix developers focus their efforts on advanced anonymity with Tor being a core component. Why develop a package that disables Tor?

Package tb-upater was developed with design goals focused on securely downloading and verifying Tor Browser. However, requirements for a new operating system under development -- a security focused OS based on Hardened Debian [archive] (Kicksecure) -- called for a security hardened clearnet browser. SecBrowser ™ (Tor Browser without Tor) met those requirements. Hence, the secbrowser wrapper that disables Tor was integrated into tb-updater and tb-starter.


What is Clearnet?

This term has two meanings:

  1. Connecting to the regular Internet without the use of Tor or other anonymity networks; and/or
  2. Connecting to regular servers which are not onion services, irrespective of whether Tor is used or not.

How does SecBrowser ™ disable Tor?

SecBrowser ™ supports custom user preferences "user_pref" which can be used to change browser configuration and behavior. In tb-starter the user preferences that disable Tor are located in /usr/share/secbrowser/user.js .[20][21] When SecBrowser ™ starts this file is copied over to the corresponding SecBrowser ™ profile where the custom user_pref(s) are parsed.[22]

Tor is disabled by setting the following three preferences to false.

user_pref("extensions.torbutton.startup", false);
user_pref("extensions.torlauncher.start_tor", false);
user_pref("network.proxy.socks_remote_dns", false);

SecBrowser ™ also sets various environment variables [archive] when started by its /usr/bin/secbrowser [archive] wrapper.


Can I use SecBrowser ™ in a Whonix-Workstation VM (anon-whonix)?

VMs behind Whonix-Gateway (sys-whonix) are always routed through Tor, meaning traffic would still be torified. However, this is strongly recommended against because using SecBrowser ™ will break Tor Browser's per tab stream isolation.


Can I use SecBrowser ™ in a VM torified by something other than Whonix to avoid Tor over Tor?

This is strongly recommended against because using SecBrowser ™ will break Tor Browser's per tab stream isolation. A complete implementation compatible with Tor Browser's per tab stream isolation would be much better.


Does the SecBrowser ™ option alter any other browser behavior?

No, the only changes to SecBrowser ™ are to the preferences previously shown.


Can I add my own custom preferences to change SecBrowser ™ behavior?

Yes, but this could degrade security and privacy. See: SecBrowser ™ Settings.


I have an idea to improve SecBrowser ™'s security. Can I submit a patch?

Many security enhancements, such as (in theory) adding compile time hardening options, need to be submitted upstream to The Tor Project. Patches to tb-updater, tb-starter or this wiki entry are always welcome!

Non-Affiliation with The Tor Project[edit]

SecBrowser ™ is a derivative of Tor® Browser, produced independently from the Tor® anonymity software and carries no guarantee from The Tor® Project [archive] about quality, suitability or anything else.

Footnotes[edit]

  1. https://2019.www.torproject.org/projects/torbrowser/design/ [archive]
  2. https://tb-manual.torproject.org/security-slider/ [archive]
  3. https://www.eff.org/https-everywhere [archive]
  4. https://en.wikipedia.org/wiki/NoScript [archive]
  5. https://forums.whonix.org/t/automatically-firejailing-tor-browser/4767 [archive]
  6. For further information, see: very hard to notice Phishing Scam - Firefox / Tor Browser URL not showing real Domain Name - Homograph attack (Punycode) [archive]. Without this change, URLs can be spoofed so users are deceived about what remote server they are communicating with, via substitution of characters that look alike ('homographs').
  7. https://bugzilla.mozilla.org/show_bug.cgi?id=1332714 [archive]
  8. https://2019.www.torproject.org/projects/torbrowser/design/ [archive]
  9. https://blog.torproject.org/deterministic-builds-part-two-technical-details [archive]
  10. https://en.wikipedia.org/wiki/WebRTC#Concerns [archive]
  11. https://torrentfreak.com/huge-security-flaw-leaks-vpn-users-real-ip-addresses-150130/ [archive]
  12. https://www.eff.org/deeplinks/2010/05/every-browser-unique-results-fom-panopticlick [archive]
  13. https://blog.torproject.org/effs-panopticlick-and-torbutton [archive]
  14. https://33bits.wordpress.com/about/ [archive]
  15. https://forums.whonix.org/t/todo-research-and-document-how-to-use-tor-browser-for-security-not-anonymity-how-to-use-tbb-using-clearnet/3822/54 [archive]
  16. https://forums.whonix.org/t/gpg-recv-keys-fails-no-longer-use-keyservers-for-anything/5607 [archive]
  17. See: NoScript Custom Setting Persistence.
  18. This notice is related to Tor Browser (with Tor) and can be safely ignored.
  19. https://github.com/Whonix/tb-starter/commit/9e5356263d31511e69980b3afdb70e3396d3cc05 [archive]
  20. https://github.com/Whonix/tb-updater/commit/798e23c1f9ac1f0ccdfe22c2f79fb0e9f637e51e [archive]
  21. https://github.com/Whonix/tb-starter/commit/a9219fc2632f667c109cfcdc7e85fff462a60ed3 [archive]
  22. https://github.com/Whonix/tb-starter/blob/28102df140f3f0f8a9b1bd5bc7dc19336420ccce/usr/bin/torbrowser#L354-L365 [archive]


Follow: Twitter.png Facebook.png 1280px-Gab text logo.svg.png Rss.png Matrix logo.svg.png 1024px-Telegram 2019 Logo.svg.png Discourse logo.svg

Donate: Donate Bank Wire Paypal Bitcoin accepted here Monero accepted here Contriute

Whonix donate bitcoin.png Monero donate whonix.png

Share: Twitter | Facebook

Check out the Whonix News Blog [archive].

https [archive] | (forcing) onion [archive]

This is a wiki. Want to improve this page? Help is welcome and volunteer contributions are happily considered! Read, understand and agree to Conditions for Contributions to Whonix ™, then Edit! Edits are held for moderation.

Copyright (C) 2012 - 2019 ENCRYPTED SUPPORT LP. Whonix ™ is a trademark. Whonix ™ is a licensee [archive] of the Open Invention Network [archive]. Unless otherwise noted, the content of this page is copyrighted and licensed under the same Freedom Software license as Whonix ™ itself. (Why?)

Whonix ™ is a derivative of and not affiliated with Debian [archive]. Debian is a registered trademark [archive] owned by Software in the Public Interest, Inc [archive].

Whonix ™ is produced independently from the Tor® [archive] anonymity software and carries no guarantee from The Tor Project [archive] about quality, suitability or anything else.

By using our website, you acknowledge that you have read, understood and agreed to our Privacy Policy, Cookie Policy, Terms of Service, and E-Sign Consent. Whonix ™ is provided by ENCRYPTED SUPPORT LP. See Imprint.