Security Pie

The ramblings of three security curmudgeons

Secure Internet Browsing

with 2 comments

Profile Manager

Profile Manager - click to enlarge

There is no such thing as absolute security. Security is relative and multidimensional. If you follow my advice, you will be relatively more secure than you were before.

More than that, you will probably be more secure than the rest of the pack. This is very important, for the reasons I already mentioned in the story about the bear.

The scenario I want to cover is this very common one:

  • You use a single browser on a single machine
  • You browse to “random” sites as well as browse to a small number of “secure” sites – your bank perhaps. There’s a clear distinction between the two.

The attack vector categories I’ll refer to are:

  1. In-browser (IB) attacks: These range from XSRF to ClickJacking to Phishing. Any attack that depends on the browser to open both the attacking site and the attacked site in the same browser instance falls into this category.
  2. Out-of-browser (OOB) attacks: These attacks affect the browser but require some code to run outside the browser – like a keylogger, malware that grabs or modifies your financial transactions, etc. The attack happens in two stages – the first one involves installing the malware on your computer, and the second stage involves compromising your secure transactions.

From the description of the scenario, it seems like it would be advantagious to have two browsing environments – one for the “secure” site and one for the insecure environment. If the environments are truely separate, such as two computers, we could be fairly certain that any compromise to the “random” environment wouldn’t affect the “secure” environment.

Although there are several solutions that enable you to have separate environments, I’ll focus on one that uses my favorite browser, Firefox, and a relatively obscure but fully supported feature of the browser called Profile management. A profile in Firefox is the total sum of the browser environment – cookies, form data, history, plugins (yes, plugins), browser cache, look and feel, options etc. Because it is possible to create multiple profiles in Firefox, you can in effect have two separate browsing environments that will not leak any information between them, and be resistant to all of the In-Browser attacks mentioned above. You can browse your “secure” sites in one and your “random” sites in the other and perhaps browse a different set of sites in a third profile and configure it to auto-delete all history.

The steps to create a profile are as follows:

  1. Start a command line / console / xterm
  2. Run firefox with the parameters “-ProfileManager -no-remote” on the command line
    • Windows:
      "C:\Program Files\Mozilla Firefox\firefox.exe" -ProfileManager -no-remote
    • Linux:
      firefox -ProfileManager -no-remote
    • Mac:
      /Applications/Firefox.app/Contents/MacOS/firefox -ProfileManager -no-remote
  3. Create a new profile. The wizard will guide you to name it and determine a folder to store it. USE A NEW / EMPTY FOLDER.
  4. Close the profile manager
Shortcut modification

Shortcut modification - click to enlarge

That’s it – you now have a multiple profile Firefox. All you have to do now is run two separate instances of Firefox, each one with a different profile. To do that, you’ll need to tell Firefox that you want to run multiple instances. Based on your OS, assuming the profile name is “SecureProfile” – copy an existing Firefox shortcut, rename it and to the end of the field that has the command line, tack:

 ... -P SecureProfile -no-remote

There you have it. The new shortcut will run a copy of Firefox that is completely independent – I suggest you change the browser theme to differentiate it from the previous Firefox window.

What this solution doesn’t give you is protection from Out-of-browser attacks; So keep your browser up to date with the latest security patches.

Written by arikb

December 18th, 2008 at 10:34 pm

Posted in privacy

2 Responses to 'Secure Internet Browsing'

Subscribe to comments with RSS or TrackBack to 'Secure Internet Browsing'.

  1. I like this concept. I don’t think explorer supports profiles (with the exception of the trust level of different sites), but it is important ot have a different instance of IE for important sites and risky sites).

    BTW – Whatever happened to the concept of Sandboxing? Only a few years ago I was expecting us to be knee deep in sand…

    assafl

    20 Dec 08 at 12:26 pm

  2. No, Explorer doesn’t support profiles. Also, the per-site trust level doesn’t solve the problem.

    Sandboxing is a theoretical concept. Its physical implementations vary – for example Java applications run in a sandbox, Javascript ones too. The challenge is in the design of the box and making sure nothing spills over. Some of the more nasty browser vulnerabilities are a spillover.

    I personally think that a sandbox is pretty difficult to design. Take for example VMWare. In concept, VMWare is an ideal sandbox – totally separate OS running in a completely virtual environment, where even communicating with the host is done via a fake network interface. Pretty tight. But it also has a special interface to make the VMWare tools work, share files and interact with the host, and that interface had at least one vulnerability I can recall. If VMWare made a mistake in the implementation of a relatively very well isolated system, other sandbox implementations are not immune.

    – Arik

    arikb

    20 Dec 08 at 7:04 pm

Leave a Reply