Microsoft Corp. researchers are developing a new Web browser that they say could offer a far greater degree of security than Google's Chrome, Mozilla's Firefox or Microsoft's own Internet Explorer.
The browser, called Gazelle, relies on a “browser kernel” — 5,000 lines of C# code — that helps enforce security rules to prevent malicious access to the PC's underlying operating system, according to a recently published paper.
So far, Gazelle is just a prototype, with other parts of the browser based on Microsoft's IE. Due to the complex nature of the way it processes Web pages for better security, the browser's performance is more tortoise than gazelle, but the researchers say a few tweaks will make it faster.
Gazelle is different from some other browsers in that it considers each part of a Web site, such as iframes, subframes and plug-ins, as separate elements. Sometimes those elements can pull in malicious content from other Web sites. Google's Chrome runs a Web page and its elements in a single process.
The researchers say that their approach improves reliability and security because processes can't interact with the underlying system and are mediated by system calls supplied by the browser kernel.
In the paper, the researchers are surprisingly critical of the company's forthcoming Web browser, IE8, which uses an approach similar to that of Chrome by using tabs to isolate processes.
“This granularity is insufficient since a user may browse multiple mutually distrusting sites in a single tab, and a web page may contain an iframe with content from an untrusted site (e.g., ads),” the paper reads.
Gazelle goes far to separate elements of a Web page that come from the same registrar-controlled domain. For example, content from Ad.datacenter.com and User.datacenter.com would be considered separate, whereas Chrome “puts them into the same site instance,” the paper said.
Another feature of Gazelle is aimed at blocking so-called race condition attacks. In that scenario, an attacker creates a Web page, intending to get a user to click on a particular area of the page. But just before the expected click happens, an overlay appears that could be used to initiate an attack.
Gazelle will ignore any clicks in newly exposed screen areas for about one second until a user can see the new screen areas.
Gazelle is also intended to limit the dangers posed by programming flaws in browser plug-ins. Plug-ins are small bits of code that enable other programs to run within a browser, but they have also been known to contain vulnerabilities that can allow a PC to be hacked.
In Gazelle, the plug-ins are sandboxed, or isolated from the rest of the system, so that a bad plug-in would only affect the particular Web page's plug-in process and not the whole PC.
But one big problem with Gazelle's approach is that existing plug-in code would have to be rewritten or ported to interact with Gazelle's browser kernel system calls. That would be difficult, since plug-ins are written by a wide variety of software vendors whose development schedules don't necessarily work in sync with those of browser developers.
Other parts of Gazelle borrow from IE code that's unrelated to security. For example, the researchers said they didn't want to write a new HTML parser, so they used IE7's Trident renderer and JavaScript engine.
In compatibility tests, Gazelle correctly rendered 19 of the top 20 sites ranked by Web survey firm Alexa Internet Inc. The paper warns that the new security of Gazelle introduces “performance overhead,” especially for sites such as The New York Times', but further work should be able to make it faster.