BrowserShield: Vulnerability-Driven Filtering of Dynamic HTML

Slides:



Advertisements
Similar presentations
Presented by Vaibhav Rastogi. Current browsers try to separate host system from Web Websites evolved into web applications Lot of private data on the.
Advertisements

ASP.NET Intro An introduction to the languages and communication of an ASP.NET system.
JavaScript FaaDoOEngineers.com FaaDoOEngineers.com.
Building web applications on top of encrypted data using Mylar Presented by Tenglu Liang Tai Liu.
BrowserShield: Vulnerability- Driven Filtering of Dynamic HTML  CHARLES REIS University of Washington  JOHN DUNAGAN, HELEN J. WANG, and OPHER DUBROVSKY.
Mobile Code Security Aviel D. Rubin, Daniel E. Geer, Jr. MOBILE CODE SECURITY, IEEE Internet Computing, 1998 Minkyu Lee
An Evaluation of the Google Chrome Extension Security Architecture
Session 13 Active Server Pages (ASP) Matakuliah: M0114/Web Based Programming Tahun: 2005 Versi: 5.
Languages for Dynamic Web Documents
1 Chapter 12 Working With Access 2000 on the Internet.
JSP: JavaServer Pages Juan Cruz Kevin Hessels Ian Moon.
Multiple Tiers in Action
Java Server Team 8. Overview What is a Java Server? History Architecture Advantages Disadvantages Current Technologies Conclusion.
Computer Security and Penetration Testing
ITM352 Javascript and Dynamic Web Pages: Client Side Processing.
Christopher M. Pascucci Basic Structural Concepts of.NET Browser – Server Interaction.
Team - CA CSCI 5234 Web Security.  Collect and document information of ecommerce security mechanisms.  Using: wiki engine for collaboration.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 13 Slide 1 Application architectures.
DHTML. What is DHTML?  DHTML is the combination of several built-in browser features in fourth generation browsers that enable a web page to be more.
INTRODUCTION TO DHTML. TOPICS TO BE DISCUSSED……….  Introduction Introduction  UsesUses  ComponentsComponents  Difference between HTML and DHTMLDifference.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
CSCI 6962: Server-side Design and Programming Course Introduction and Overview.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Copyright © cs-tutorial.com. Introduction to Web Development In 1990 and 1991,Tim Berners-Lee created the World Wide Web at the European Laboratory for.
HTML Forms and Scripts. Session overview What are forms? Static vs dynamic Client-side scripts –JavaScript.
CSE3310: Web training A JumpStart for Project.
Analysis of SQL injection prevention using a proxy server By: David Rowe Supervisor: Barry Irwin.
CSS/417 Introduction to Database Management Systems Workshop 5.
© 2005 by IBM; made available under the EPL v1.0 | March 1, 2005 Tim deBoer Gorkem Ercan Extend WTP Server Tools for your.
BLUEPRINT: Robust Prevention of Cross-site Scripting Attacks for Existing Browsers Mike Ter Louw, V.N. Venkatakrishnan University of Illinois at Chicago.
DEV-5: Introduction to WebSpeed ® Stephen Ferguson Sr. Training Program Manager.
INTRODUCTION TO JAVASCRIPT AND DOM Internet Engineering Spring 2012.
Top Five Web Application Vulnerabilities Vebjørn Moen Selmersenteret/NoWires.org Norsk Kryptoseminar Trondheim
G53SEC 1 Reference Monitors Enforcement of Access Control.
ASP (Active Server Pages) by Bülent & Resul. Presentation Outline Introduction What is an ASP file? How does ASP work? What can ASP do? Differences Between.
M. Alexander Helen J. Wang Yunxin Liu Microsoft Research 1 Presented by Zhaoliang Duan.
Security Issues with PHP  PHP installation  PHP programming Willa Zhu & Eugene Burger.
JavaScript Overview Developer Essentials How to Code Language Constructs The DOM concept- API, (use W3C model) Objects –properties Methods Events Applications;
Java Programming: Advanced Topics 1 Building Web Applications Chapter 13.
JavaScript Introduction inf385t Semantic Web 2/20/2006.
1 CSC160 Chapter 1: Introduction to JavaScript Chapter 2: Placing JavaScript in an HTML File.
Lect5.ppt - 02/23/06 CIS 4100 Systems Performance and Evaluation Lecture 6 by Zornitza Genova Prodanoff.
CSE3310: Web training A JumpStart for Project. Outline Introduction to Website development Web Development Languages How to build simple Pages in PHP.
A Presentation Presentation On JSP On JSP & Online Shopping Cart Online Shopping Cart.
A S P. Outline  The introduction of ASP  Why we choose ASP  How ASP works  Basic syntax rule of ASP  ASP’S object model  Limitations of ASP  Summary.
Active Server Pages v.s. Java Server Pages Presenters: Lan Guo Qunying Fan Pei-Xun Wu Date:
Introduction The concept of a web framework originates from the basic idea that every web application obtains its foundations from a similar set of guidelines.
Chapter 1 Getting Started with ASP.NET Objectives Why ASP? To get familiar with our IDE (Integrated Development Environment ), Visual Studio. Understand.
X3DOM : Integrating 3D content seamlessly into webpage
DHTML.
Web Mashups -Nirav Shah.
Introduction to Dynamic Web Programming
Ad-blocker circumvention System
Scripted Page Web App Development (Java Server Pages)
Section 17.1 Section 17.2 Add an audio file using HTML
A Security Review Process for Existing Software Applications
Processes The most important processes used in Web-based systems and their internal organization.
JavaScript an introduction.
Chapter 27 WWW and HTTP.
Introduction of FrontPage
Lecture 1: Multi-tier Architecture Overview
Authors: Helen J. Wang, Chuanxiong Guo, Daniel R
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
An Introduction to JavaScript
Client-Server Model: Requesting a Web Page
Web Servers (IIS and Apache)
Introduction to JavaScript
Exploring DOM-Based Cross Site Attacks
Course Review HTML5 Level I Course Review
Mike Ter Louw, V.N. Venkatakrishnan University of Illinois at Chicago
Presentation transcript:

BrowserShield: Vulnerability-Driven Filtering of Dynamic HTML Charles Reis, John Dunagan Helen J. Wang, Opher Dubrovsky and Saher Esmeir Presented by Hongyu Gao Feb. 26, 2009

Outline Introduction Overview of BrowserShield Implementation Evaluation Conclusions

WEB BASED ATTACKS Web Based Attacks Web browser exploits are common examples: Buffer overflows, ActiveX flaws, etc. - -- 19 critical vulnerabilities, 8 patches in 2005 - --16 critical vulnerabilities, 7 updates in 2005

Challenges & Solution It cannot be statically determined whether an embedded script will exploit the browser at runtime. This work addresses the problem by rewriting web pages and any embedded scripts into safe equivalents, inserting checks The filtering is done at runtime.

BrowserShield Overview Policies HTML + JavaScript BrowserShield Logic Injector Shielded HTML and JavaScript Web server Client Browser © 2007 Microsoft Corporation 5

© 2007 Microsoft Corporation Deploy BrowserShield Can be deployed anywhere Firewall Browser extension Web publisher © 2007 Microsoft Corporation 6

Working of Browser shield Two steps of re-writing to translate webpage into safe equivalents They are i. T-HTML ii. T-SCRIPT

T-HTML 1. Modify page according to policies 2. Wrap the script elements

T-SCRIPT

T-script example

Characteristics of Browser shield Complete interposition Tamper-proof Transparency Flexible policies

Complete Interposition Rewrite and apply policy to: Function and method calls Object property reads/writes Object creations

Tamper proof & Transparency Hide BrowserShield code Rename variables, handle reflection Shadow copies of untranslated code Preserve context for “this”

Flexibility Separating mechanism from policy For example, if an undocumented API is discovered that can manipulate the document tree, we simply add a new policy to interpose on this API.

Evaluation Firewall-based prototype Protect IE’s vulnerabilities: IE’s handling of (i) HTML, script,or ActiveX components, (ii) HTTP, and (iii) images or other files

Evaluation Table II shows how many vulnerabilities there were in each area, and whether BrowserShield or another technology could provide patch-equivalent protection

Evaluation On Average, 94% increase (216% worst case)

Conclusion Script rewriting can protect web clients - Vulnerability-driven filtering - Transforms content, not browsers General framework BrowserShield can also serve as a platform for other new functionality on the Web,

QUESTIONS ? THANK YOU