{"id":308297,"date":"2006-08-25T12:00:54","date_gmt":"2006-08-25T19:00:54","guid":{"rendered":"https:\/\/www.microsoft.com\/en-us\/research\/?p=308297"},"modified":"2016-10-19T01:40:44","modified_gmt":"2016-10-19T08:40:44","slug":"browsershield-helping-make-web-safe-surfers","status":"publish","type":"post","link":"https:\/\/www.microsoft.com\/en-us\/research\/blog\/browsershield-helping-make-web-safe-surfers\/","title":{"rendered":"BrowserShield: Helping Make the Web Safe for Surfers"},"content":{"rendered":"
By Rob Knies, Managing Editor, Microsoft Research<\/em><\/p>\n It\u2019s a familiar clich\u00e9: The best offense is a good defense.<\/p>\n You hear it all the time in a sporting context. But, as it turns out, that hoary truism applies to Web surfing, as well.<\/p>\n Consider BrowserShield, a research project being conducted by Helen Wang (opens in new tab)<\/span><\/a> and John Dunagan of the Systems & Networking group at Microsoft Research\u2019s Redmond lab (opens in new tab)<\/span><\/a>. The project, the product of a discussion on HTML-based vulnerabilities with Opher Dubrovsky of Microsoft\u2019s Internet Security and Acceleration Server (opens in new tab)<\/span><\/a> (ISA) team, is examining ways to inspect and cleanse dynamic HTML content on Web pages, denying bad code the opportunity to execute and thereby protecting Internet users.<\/p>\n \u201cWe want to save people,\u201d Dunagan says, \u201cfrom the problem that they\u2019re worried about.\u201d<\/p>\n BrowserShield\u2019s suggested solution to nefarious forces who try to hijack your computer for personal gain is to comb through a Web page for JavaScript or Visual Basic\u00ae script and encapsulate it with associated logic that is executed at run time on the user\u2019s computer. By this means, the page is transformed into a safe equivalent designed not to exploit browser vulnerabilities, turning the tide in the battle against malicious Netizens.<\/p>\n \u201cToday, when you surf the Web,\u201d Wang says, \u201cat any point, you may wander to a bad neighborhood, and when you click on a link and navigate to a malicious Web site, your computer can be compromised, your private personal information can be stolen, and your machine can be used as a zombie for a larger botnet.\u201d<\/p>\n \u201cWhat are the problems with those bad links, bad neighborhoods? Some links include a bad executable download. On other occasions, a Web page is crafted especially so a particular vulnerability in your browser is exploited, and your computer can be compromised.\u201d<\/p>\n In fact, with the growing popularity of Web services, browsers have become a popular vector for attacks. BrowserShield is designed to thwart such threats.<\/p>\n While it is easy to cleanse a static, unchanging Web page, the key challenge lies in cleansing the dynamic content of a Web page, such as embedded JavaScript code. Such embedded script code can cause the Web page to be modified at run time, enabling attacks to be generated when the browser renders the page. Determining whether a piece of script code will carry out malicious action is an instance of the halting problem, well-known in computer science.<\/p>\n BrowserShield tackles this challenge through script rewriting and vulnerability-driven filtering. When a user visits a Web site, as the page flows from the Web server toward the user\u2019s PC, the BrowserShield system intercepts the page and transforms it into a safe equivalent for a browser to render. The transformation includes policies that serve as vulnerability filters performing run-time checks and denying any activity designed to attack browser vulnerabilities.<\/p>\n As it turns out, the logic for transforming the Web page can be injected at various stages and has numerous application scenarios.<\/p>\n \u201cThis transformation logic,\u201d Wang says, \u201ccan be injected at a firewall, as a browser extension, or by Web publishers.\u201d<\/p>\n Dunagan provides an enthusiastic elaboration.<\/p>\n \u201cThat\u2019s something that we both think is really, really nice about this,\u201d he says. \u201cIt\u2019s something where ISA can help protect all the people within a corporation, or it can be something where MSN Search\u00ae makes it so that any of the cached Web pages that you can see on their site cannot contain these exploits; they can help protect everybody who is going to MSN Search to look at these things. There are two different value propositions, and they appeal to many people.\u201d<\/p>\n Some search engines have been trumpeting something called \u201csafe search,\u201d which amounts to a blacklist of known malicious sites.<\/p>\n \u201cBrowserShield can enable a much more powerful way of doing this safe search,\u201d Wang states. \u201cBasically, even for a malicious site that is not already blacklisted, BrowserShield can help prevent it from doing known bad things, such as exploiting a vulnerability of a browser.\u201d<\/p>\n The technology, similarly, can deliver security-enhanced browsing.<\/p>\n \u201cSay there\u2019s a zero-day browser exploit,\u201d Wang says. \u201cAt a particular time, a patch might not be available. But in the meantime, we can allow users to browse through a BrowserShield-enabled toolbar. Users would then be able to type URLs into the toolbar rather than in the usual address bar. This allows all Web sites to be sanitized by the BrowserShield toolbar and enables a safe browsing experience.<\/p>\n Such potential has gained the attention of a number of Microsoft product groups, including ISA, Internet Explorer (opens in new tab)<\/span><\/a>\u00ae, Windows Live\u2122 OneCare\u2122, the Security Technology Unit, and a number of MSN (opens in new tab)<\/span><\/a> teams, including Live.com (opens in new tab)<\/span><\/a>, MSN Search (opens in new tab)<\/span><\/a>, and its anti-phishing group.<\/p>\n And the policies BrowserShield applies to the Web pages it examines can be updated as new threats emerge.<\/p>\n \u201cIf there\u2019s a new vulnerability that is discovered,\u201d Wang says, \u201cnew policies can be distributed to clients, if it\u2019s a client-based deployment model. If it\u2019s a firewall deployment model, it only needs to be distributed to the firewall. That is the flexibility aspect of our system.\u201d<\/p>\n