Practical Privacy for Web Users with COWL

155
Опубликовано 22 июня 2016, 3:18
Modern web applications are conglomerations of JavaScript written by multiple authors: application developers routinely incorporate code from third-party libraries, and mashup applications synthesize data and code hosted at different sites. In current browsers, a web application's developer and user must trust third-party code in libraries not to leak the user's sensitive information from within applications. Even worse, in the status quo, the only way to implement some mashups is for the user to give her login credentials for one site to the operator of another site. Fundamentally, today's browser security model trades privacy for flexibility because it lacks a sufficient mechanism for confining untrusted code. In this talk, I'll present COWL (Confinement with Web Origin Labels), a robust JavaScript confinement system for modern web browsers. COWL introduces label-based mandatory access control to browsing contexts in a way that is fully backward-compatible with legacy web content. I'll use simple case-study applications to motivate COWL's design and demonstrate how COWL allows both the inclusion of untrusted scripts in applications and the building of mashups that combine sensitive information from multiple distinct origins, all while protecting users' privacy. Measurements of two COWL implementations, one in Firefox and one in Chromium, demonstrate a virtually imperceptible increase in page-load latency. (This is joint work with Deian Stefan, Edward Yang, and David Mazieres of Stanford; Petr Marchenko of Google; Alejandro Russo of Chalmers; and Dave Herman of Mozilla.)
автотехномузыкадетское