Browser Masquerading   by Eugene Reimer, 2008-Jan22

Today when trying get information from the Canada-Post website (the secure portion thereof) and being told that neither of my browsers is supported, I decided 'tis time to get serious about configuring my browsers to pretend they are the latest thing from Microsoft, and that they're running on the Windows operating-system. 

Not that I like doing things this way... 

Designing a website to detect which browser is being used, and to refuse any but a few select versions, is an extremely dumb idea.  Its being a bad idea is so completely and immediately obvious, that I have very little hope of converting any of those so wrongheaded as to do it.  That's not the purpose of this article in any event (if you want an explanation of why it is a bad idea, see www.ericgiguere.com/articles/masquerading-your-browser.html; he also provides useful how-to info, albeit somewhat out-of-date).  I will deal with how to do it, explain why I'm reluctant to do it, and will make a plea to browser-designers for a solution to this wrongheadedness we see in the world-wide-web.


The How-To:

Browsers send an identifying string known as the User-Agent string, and this is what we need to alter in order to pretend our browser is something other than it is.  Choosing which browser to pretend to be is fairly easy.  Since no website designer, wrongheaded or not, will ignore a browser having 50% market-share, we'll always pretend to be using Microsoft-IE on Windows.  The only tough part is deciding whether to be the latest version, or the 2nd latest.  Most of the time we'll be best off by pretending to be using the 2nd latest, since for one thing, it takes some time for a wrongheaded web-person to do the updating and testing for a new version.  As of this writing, two appropriate User-Agent strings are:

Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)
where NT-5.1 indicates Windows-XP; NT-6.0 indicates Windows-Vista;  these are from Microsoft's own info on User-Agent strings at msdn2.microsoft.com/en-us/library/ms537503(VS.85).aspx.

For Firefox, ... (unfinished)

For Opera, ... (unfinished)

For Konquerer, ... (unfinished)


Browser Features Needed:

We (unfortunately) need the ability to pretend to be using a browser other than what we are, and an operating-system other than what we are.  We wish to minimize the distorting effect such masquerading will have on browser-usage stats, and we wish also to minimize problems with sites that use the browser-identity in sensible ways;  ergo, we need the ability to easily turn this on and off, in a way that is remembered -- so that once I've determined, for example, that for Canada-Post my User-Agent string needs to indicate MSIE-on-Windows, then that will be done on future visits with no further action on my part.

It turns out that Opera already has almost everything that is needed.  The people designing Opera are to be applauded!  It allows per-site settings for masquerading; they offer two levels of pretense, but IMHO once one encounters a wrongheaded website then one wants the most complete kind, which is the "Mask-as" kind.  See www.opera.com/support/search/view/570, and help.opera.com/Linux/9.22/en/network.html for the details.  At first glance, it appears not to be complete enough for my taste, being unwilling to lie about the operating-system, however a simple experiment shows that at least the current version of Opera is after all willing to masquerade the operating-system part of the User-Agent string, to indicate Windows-NT.  Again, good work Opera!  (Saying it is MSIE on Linux would be just too obvious a lie (smile); that is what it says for "Identify-as", but for "Mask-as" it lies more convincingly:-)


Info about Your Browser:

Incidentally, sources reporting MSIE being used by 90% of all web-surfers are surely over-reporting the popularity of that browser.  Since the rest of us are often forced to pretend to be using that browser, and since many of us are unwilling to be forever fussing with the turning-on and the turning-off, there is really no way of knowing how many are really using that browser, and how many are merely pretending to be.  The day may come when none of us are using it, and yet the stats show that all of us are:-)