[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[tor-commits] [tor-browser-spec/master] Describe Firefox Patches.
commit 5dabf48347c7c63d83a05abf28fa16f73f8cd3eb
Author: Mike Perry <mikeperry-git@xxxxxxxxxx>
Date: Tue Feb 19 18:39:10 2013 -0800
Describe Firefox Patches.
---
docs/design/design.xml | 57 ++++++++++++++++++++++++++++++++++++++++++------
1 file changed, 50 insertions(+), 7 deletions(-)
diff --git a/docs/design/design.xml b/docs/design/design.xml
index a3aa7fc..52c4112 100644
--- a/docs/design/design.xml
+++ b/docs/design/design.xml
@@ -1473,10 +1473,11 @@ desktop resolution.
We have implemented the above strategy using a window observer to <ulink
url="https://gitweb.torproject.org/torbutton.git/blob/HEAD:/src/chrome/content/torbutton.js#l2004">resize
new windows based on desktop resolution</ulink>. Additionally, we patch
-Firefox to <ulink
-url="https://gitweb.torproject.org/torbrowser.git/blob/maint-2.4:/src/current-patches/firefox/0010-Limit-device-and-system-specific-CSS-Media-Queries.patch">use
-the client content window size</ulink> for window.screen and all desktop size
-related media queries, and similarly <ulink
+Firefox to use the client content window size <ulink
+url="https://gitweb.torproject.org/torbrowser.git/blob/maint-2.4:/src/current-patches/firefox/0022-Do-not-expose-physical-screen-info.-via-window-and-w.patch">for
+window.screen</ulink> and <ulink
+url="https://gitweb.torproject.org/torbrowser.git/blob/maint-2.4:/src/current-patches/firefox/0010-Limit-device-and-system-specific-CSS-Media-Queries.patch">for
+CSS Media Queries</ulink>. Similarly, we <ulink
url="https://gitweb.torproject.org/torbrowser.git/blob/maint-2.4:/src/current-patches/firefox/0021-Return-client-window-coordinates-for-mouse-event-scr.patch">patch
DOM events to return content window relative points</ulink>. We also patch
Firefox to <ulink
@@ -1800,42 +1801,64 @@ by the <link linkend="new-identity">New Identity</link> button.
<listitem>Limit Device and System Specific Media Queries
<para>
+<ulink url="https://developer.mozilla.org/en-US/docs/CSS/Media_queries">CSS
+Media Queries</ulink> have a fingerprinting capability approaching that of
+Javascript. This patch causes such Media Queries to evaluate as if the device
+resolution was equal to the content window resolution.
</para>
</listitem>
<listitem>Limit the number of fonts per document
<para>
+Font availability can be <ulink url="http://flippingtypical.com/">queried by
+CSS and Javascript</ulink> and is a fingerprinting vector. This patch limits
+the number of times CSS and Javascript can cause font-family rules to
+evaluate. Remote @font-face fonts are exempt from the limits imposed by this
+patch, and remote fonts are given priority over local fonts whenever both
+appear in the same font-family rule.
</para>
</listitem>
<listitem>Rebrand Firefox to Tor Browser
<para>
+This patch updates our branding in compliance with Mozilla's trademark policy.
</para>
</listitem>
<listitem>Make Download Manager Memory Only
<para>
+This patch prevents disk leaks from the download manager. The original
+behavior is to write the download history to disk and then delete it, even if
+you disable download history from your Firefox preferences.
</para>
</listitem>
<listitem>Add DDG and StartPage to Omnibox
<para>
+This patch adds DuckDuckGo and StartPage to the Search Box, and sets our
+default search engine to StartPage. We deployed this patch due to excessive
+Captchas and complete 403 bans from Google.
</para>
</listitem>
<listitem>Make nsICacheService.EvictEntires() Synchronous
<para>
+This patch eliminates a race condition with "New Identity". Without it,
+cache-based Evercookies survive for up to a minute after clearing the cache
+on some platforms.
</para>
</listitem>
<listitem>Prevent WebSockets DNS Leak
<para>
+This patch prevents a DNS leak when using WebSockets. It also prevents other
+similar types of DNS leaks.
</para>
</listitem>
@@ -1852,60 +1875,80 @@ pipeline, as well as their order.
<listitem>Adapt Steve Michaud's Mac crashfix patch
<para>
+This patch allows us to block Drag and Drop without causing crashes on Mac OS.
+We need to block Drag and Drop because Mac OS and Ubuntu both immediately load
+any URLs they find in your drag buffer before you even drop them (without
+using your browser's proxy settings, of course).
</para>
</listitem>
<listitem>Add mozIThirdPartyUtil.getFirstPartyURI() API
<para>
+This patch provides an API that allows us to more easily isolate identifiers
+to the URL bar domain.
</para>
</listitem>
<listitem>Add canvas image extraction prompt
<para>
+This patch prompts the user before returning canvas image data. Canvas image
+data can be used to create an extremely stable, high-entropy fingerprint based
+on the unique rendering behavior of video cards, OpenGL behavior,
+system fonts, and supporting library versions.
</para>
</listitem>
<listitem>Return client window coordinates for mouse events
<para>
+This patch causes mouse events to return coordinates relative to the content
+window instead of the desktop.
</para>
</listitem>
- <listitem>Do not expose physical screen info viw window and CSS
+ <listitem>Do not expose physical screen info to window.screen
<para>
+This patch causes window.screen to return the display resolution size of the
+content window instead of the desktop resolution size.
</para>
</listitem>
<listitem>Do not expose system colors to CSS or canvas
<para>
+This patch prevents CSS and Javascript from discovering your desktop color
+scheme and/or theme.
</para>
</listitem>
<listitem>Isolate the Image Cache per url bar domain
<para>
+This patch prevents cached images from being used to store third party tracking
+identifiers.
</para>
</listitem>
<listitem>nsIHTTPChannel.redirectTo() API
<para>
+This patch provides HTTPS-Everywhere with an API to perform redirections more
+securely and without addon conflicts.
</para>
</listitem>
<listitem>Isolate DOM Storage to first party URI
<para>
+This patch prevents DOM Storage from being used to store third party tracking
+identifiers.
</para>
</listitem>
-<!-- XXX: Several more patches need documentation -->
-
</orderedlist>
</sect2>
_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits