Charlie Reis
web browser research

Modern web browsers have evolved from simple document renderers to complex runtime environments for many types of web content. This makes them analogous to operating systems in many ways. My current research takes advantage of this analogy, using ideas from operating systems to improve the security and robustness of web browsers.

I am studying how to address several current threats on the web, including browser vulnerabilities, cross-site scripting, cross-site request forgeries, and resource contention between web sites. I have proposed a set of architectural principles to better support running web programs within the browser:

  • Web programs and program instances must have clear boundaries on the network and within the web browser.
  • It must be easy to specify which code is authorized to run in a web program, and to impose limitations on this code.
  • Instances of programs must be isolated in the browser, to prevent interference between them.
  • The behavior of program instances must be governed by uniform browser-level policies, independent of content types and browser extensions.
web browser projects
web browser publications
web browser reports
  • [The Security Architecture of the Chromium Browser]
    September, 2008.
    This tech report describes how the Chromium web browser (from which Google Chrome is built) uses a sandbox to try to limit the damage that can be done if a vulnerability in Chromium's rendering engine is exploited. Joint work with Adam Barth and Collin Jackson.

  • [Using Processes to Improve the Reliability of Browser-based Applications]
    December, 2007.
    This tech report shows how an increase in the use of client-side JavaScript code is leading to reliability problems in web browsers, and it evaluates the use of OS processes to isolate web sites from each other within the browser.

  • [Improving the Security and Robustness of Modern Web Browsers]
    General Exam Report, 2007.
    This report is an informal thesis proposal. It describes how the current threats to web browser security can be addressed by improving the isolation between unrelated web pages and interposing on web page behavior.