Site Isolation in a Single Browser
As shown in the previous section, using a dedicated browser
to visit certain sites mitigates a signicant number of web
attacks. This observation raises a question: which properties
of browsing with a single browser make it vulnerable to these
attacks? We believe the answer to this question can be
summarized in three points:
1. Malicious sites are free to make requests to vulnerable
parts of victim's site.
2. Malicious sites can make requests that have access to
the victim's cookies and session data.
3. Malicious sites can exploit the rendering engine for
direct access to in-memory state and to stored data
from the victim site.
Our key observation is that these abilities are not funda-
mental
aws of browsing with a single browser but rather
weaknesses of current browsers. We believe that for many
types of web sites, it is possible to simulate the behavior of
multiple browsers with a single browser by solving each of
these weaknesses. These changes come with a compatibil-
ity cost, however, because benign third-party sites are also
prevented from accessing the user's cookies. We evaluate
the complexity that dierent types of sites face for adopting
these changes in Section 7.2.
In the next three sections, we introduce mechanisms for
removing these limitations in a single browser. First, we pro-
vide a means for web sites to opt in to this protection if they
accept the compatibility implications. Second, we prevent
untrusted third parties from making requests to vulnerable
parts of these web sites. Third, we isolate the persistent and
in-memory state of these sites from other sites. Because our
approach works best with app-like" web sites that contain
sensitive user data and few cross-site interactions, we refer
to this approach as app isolation.