1. Torbutton is a 1-click way for Firefox users to enable or disable the
  2. browser's use of Tor. It adds a panel to the statusbar that says "Tor
  3. Enabled" (in green) or "Tor Disabled" (in red). The user may click on the
  4. panel to toggle the status. If the user (or some other extension) changes
  5. the proxy settings, the change is automatically reflected in the
  6. statusbar.
  7. Some users may prefer a toolbar button instead of a statusbar panel. Such
  8. a button is included, and one adds it to the toolbar by right-clicking on
  9. the desired toolbar, selecting "Customize...", and then dragging the
  10. Torbutton icon onto the toolbar. There is an option in the preferences to
  11. hide the statusbar panel (Tools->Extensions, select Torbutton, and click
  12. on Preferences).
  13. Newer Firefoxes have the ability to send DNS resolves through the socks
  14. proxy, and Torbutton will make use of this feature if it is available in
  15. your version of Firefox.
  16. FAQ
  17. 1. I can't click on links or hit reload after I toggle Tor! Why?
  18. Due to Firefox Bug 409737, pages can still open popups and perform
  19. Javascript redirects and history access after Tor has been toggled. These
  20. popups and redirects can be blocked, but unfortunately they are
  21. indistinguishable from normal user interactions with the page (such as
  22. clicking on links, opening them in new tabs/windows, or using the history
  23. buttons), and so those are blocked as a side effect. Once that Firefox bug
  24. is fixed, this degree of isolation will become optional (for people who do
  25. not want to accidentally click on links and give away information via
  26. referrers). A workaround is to right click on the link, and open it in a
  27. new tab or window. The tab or window won't load automatically, but you can
  28. hit enter in the URL bar, and it will begin loading. Hitting enter in the
  29. URL bar will also reload the page without clicking the reload button.
  30. 2. My browser is in some weird state where nothing works right!
  31. Try to disable Tor by clicking on the button, and then open a new window.
  32. If that doesn't fix the issue, go to the preferences page and hit 'Restore
  33. Defaults'. This should reset the extension and Firefox to a known good
  34. configuration. If you can manage to reproduce whatever issue gets your
  35. Firefox wedged, please file details at the bug tracker.
  36. 3. When I toggle Tor, my sites that use javascript stop working. Why?
  37. Javascript can do things like wait until you have disabled Tor before
  38. trying to contact its source site, thus revealing your IP address. As
  39. such, Torbutton must disable Javascript, Meta-Refresh tags, and certain
  40. CSS behavior when Tor state changes from the state that was used to load a
  41. given page. These features are re-enabled when Torbutton goes back into
  42. the state that was used to load the page, but in some cases (particularly
  43. with Javascript and CSS) it is sometimes not possible to fully recover
  44. from the resulting errors, and the page is broken. Unfortunately, the only
  45. thing you can do (and still remain safe from having your IP address leak)
  46. is to reload the page when you toggle Tor, or just ensure you do all your
  47. work in a page before switching tor state.
  48. 4. When I use Tor, Firefox is no longer filling in logins/search boxes for
  49. me. Why?
  50. Currently, this is tied to the "Block history writes during Tor" setting.
  51. If you have enabled that setting, all formfill functionality (both saving
  52. and reading) is disabled. If this bothers you, you can uncheck that
  53. option, but both history and forms will be saved. To prevent history
  54. disclosure attacks via Non-Tor usage, it is recommended you disable
  55. Non-Tor history reads if you allow history writing during Tor.
  56. 5. Which Firefox extensions should I avoid using?
  57. This is a tough one. There are thousands of Firefox extensions: making a
  58. complete list of ones that are bad for anonymity is near impossible.
  59. However, here are a few examples that should get you started as to what
  60. sorts of behavior are dangerous.
  61. 1. StumbleUpon, et al These extensions will send all sorts of information
  62. about the websites you visit to the stumbleupon servers, and correlate
  63. this information with a unique identifier. This is obviously terrible
  64. for your anonymity. More generally, any sort of extension that
  65. requires registration, or even extensions that provide information
  66. about websites you visit should be suspect.
  67. 2. FoxyProxy While FoxyProxy is a nice idea in theory, in practice it is
  68. impossible to configure securely for Tor usage without Torbutton. Like
  69. all vanilla third party proxy plugins, the main risks are plugin
  70. leakage and history disclosure, followed closely by cookie theft
  71. by exit nodes and tracking by adservers (see the Torbutton
  72. Adversary Model for more information). However, even with Torbutton
  73. installed in tandem and always enabled, it is still very difficult
  74. (though not impossible) to configure FoxyProxy securely. Since
  75. FoxyProxy's 'Patterns' mode only applies to specific urls, and not to
  76. an entire tab, setting FoxyProxy to only send specific sites through
  77. Tor will still allow adservers to still learn your real IP. Worse, if
  78. those sites use offsite logging services such as Google Analytics, you
  79. may still end up in their logs with your real IP. Malicious exit nodes
  80. can also cooperate with sites to inject images into pages that bypass
  81. your filters. Setting FoxyProxy to only send certain URLs via Non-Tor
  82. is much more viable, but be very careful with the filters you allow.
  83. For example, something as simple as allowing *google* to go via
  84. Non-Tor will still cause you to end up in all the logs of all websites
  85. that use Google Analytics! See this question on the FoxyProxy FAQ
  86. for more information.
  87. 3. NoScript Torbutton currently mitigates all known anonymity issues with
  88. Javascript. While it may be tempting to get better security by
  89. disabling Javascript for certain sites, you are far better off with an
  90. all-or-nothing approach. NoScript is exceedingly complicated, and has
  91. many subtleties that can surprise even advanced users. For example,
  92. verifies extension integrity via Javascript over
  93. https, but downloads them in the clear. Not adding it to your
  94. whitelist effectively means you are pulling down unverified
  95. extensions. Worse still, using NoScript can actually disable
  96. protections that Torbutton itself provides via Javascript, yet still
  97. allow malicious exit nodes to compromise your anonymity via the
  98. default whitelist (which they can spoof to inject any script they
  99. want).
  100. 6. Which Firefox extensions do you recommend?
  101. 1. RefControl Mentioned above, this extension allows more
  102. fine-grained referrer spoofing than Torbutton currently provides. It
  103. should break less sites than Torbutton's referrer spoofing option.
  104. 2. SafeCache If you use Tor excessively, and rarely disable it, you
  105. probably want to install this extension to minimize the ability of
  106. sites to store long term identifiers in your cache. This extension
  107. applies same origin policy to the cache, so that elements are
  108. retrieved from the cache only if they are fetched from a document in
  109. the same origin domain as the cached element.
  110. 7. Are there any other issues I should be concerned about?
  111. There is currently one known unfixed security issue with Torbutton: it is
  112. possible to unmask the javascript hooks that wrap the Date object to
  113. conceal your timezone in Firefox 2, and the timezone masking code does not
  114. work at all on Firefox 3. We are working with the Firefox team to fix one
  115. of Bug 399274 or Bug 419598 to address this. In the meantime, it
  116. is possible to set the TZ environment variable to UTC to cause the browser
  117. to use UTC as your timezone. Under Linux, you can add an export TZ=UTC to
  118. the /usr/bin/firefox script, or edit your system bashrc to do the same.
  119. Under Windows, you can set either a User or System Environment
  120. Variable for TZ via My Computer's properties. In MacOS, the situation is
  121. a lot more complicated, unfortunately.
  122. In addition, RSS readers such as Firefox Livemarks can perform periodic
  123. fetches. Due to Firefox Bug 436250, there is no way to disable
  124. Livemark fetches during Tor. This can be a problem if you have a lot of
  125. custom Livemark urls that can give away information about your identity.