Securing Frame Communication in Browsers

Total Page:16

File Type:pdf, Size:1020Kb

Securing Frame Communication in Browsers Securing Frame Communication in Browsers Adam Barth Collin Jackson John C. Mitchell Stanford University Stanford University Stanford University [email protected] [email protected] [email protected] Abstract isolate frames. In more complex mashups, the integra- tor does intend to communicate with the gadgets and re- Many web sites embed third-party content in frames, re- quires secure inter-frame communication. lying on the browser’s security policy to protect them In this paper, we study the contemporary web ver- from malicious content. Frames, however, are often in- sion of a recurring problem in computer systems: isolat- sufficient isolation primitives because most browsers let ing untrusted, or partially trusted, software components framed content manipulate other frames through naviga- while providing secure inter-component communication. tion. We evaluate existing frame navigation policies and Whenever a site integrates third-party content, such as advocate a stricter policy, which we deploy in the open- an advertisement, a map, or a photo album, the site runs source browsers. In addition to preventing undesirable the risk of incorporating malicious content. Without iso- interactions, the browser’s strict isolation policy also hin- lation, malicious content can compromise the confiden- ders communication between cooperating frames. We tiality and integrity of the user’s session with the inte- analyze two techniques for inter-frame communication. grator. While the browser’s well-known “same-origin The first method, fragment identifier messaging, pro- policy” [34] restricts script running in one frame from vides confidentiality without authentication, which we manipulating content in another frame, the browser uses repair using concepts from a well-known network pro- a different policy to determine whether one frame is al- tocol. The second method, postMessage, provides lowed to navigate (change the location of) another frame. authentication, but we discover an attack that breaches Although restricting navigation is essential to providing confidentiality. We modify the postMessage API to isolation, navigation also enables one form of inter-frame provide confidentiality and see our modifications stan- communication used in mashup frameworks from lead- dardized and adopted in browser implementations. ing companies. Furthermore, we show that an attacker can use frame navigation to attack another inter-frame 1 Introduction communication mechanism, postMessage. Web sites contain content from sources of varying trust- Isolation. We examine the browser frame as an iso- worthiness. For example, many web sites contain third- lation primitive. Because frames can contain untrusted party advertising supplied by advertisement networks or content, the browser’s security policy restricts frame in- their sub-syndicates [6]. Other common aggregations teractions. Many browsers, however, insufficiently re- of third-party content include Flickr albums [12], Face- strict the ability of one frame to navigate another frame book badges [9], and personalized home pages offered to a new location. These overly permissive frame nav- by the three major web portals [15, 40, 28]. More ad- igation policies lead to a variety of attacks, which we vanced uses of third-party components include Yelp’s demonstrate against the Google AdSense login page and use of Google Maps [14] to display restaurant locations the iGoogle gadget aggregator. To prevent these attacks, and the Windows Live Contacts gadget [27]. A web we propose tightening the browser’s frame navigation site combining content from multiple sources is called a policy while maintaining compatibility with existing web mashup, with the party combining the content called the content. We have collaborated with browser vendors to integrator and integrated content called a gadget. In sim- deploy this policy in Firefox 3 and Safari 3.1. As the ple mashups, the integrator does not intend to communi- policy is already implemented in Internet Explorer 7, the cate with the gadgets and requires only that the browser policy is now deployed in the three most-used browsers. USENIX Association 17th USENIX Security Symposium 17 Confidentiality Authentication Network Analogue Fragment identifier channel Public Key Encryption postMessage channel Public Key Signatures postMessage (our proposal) SSL/TLS Table 1: Security properties of frame communication channels Communication. With strong isolation, frames are Organization. The remainder of the paper is organized limited in their interactions, raising the issue of how iso- as follows. Section 2 details the threat model for these at- lated frames can cooperate as part of a mashup. We tacks. Section 3 surveys existing frame navigation poli- analyze two techniques for inter-frame communication: cies and converges browsers on a secure policy. Sec- fragment identifier messaging and postMessage. The tion 4 analyzes two frame communication mechanisms, results of our analysis are summarized in Table 1. demonstrates attacks, and proposes defenses. Section 5 describes related work. Section 6 concludes. Fragment identifier messaging uses characteristics • of frame navigation to send messages between frames. As it was not designed for communica- 2 Threat Model tion, the channel has less-than-desirable security In this paper, we are concerned with securing in-browser properties: messages are confidential but senders interactions from malicious attackers. We assume an are not authenticated. To understand these prop- honest user employs a standard web browser to view con- erties, we draw an analogy between this commu- tent from an honest web site. A malicious “web attacker” nication channel and a network channel in which attempts to disrupt this interaction or steal sensitive infor- senders encrypt their messages to their recipi- mation. Typically, a web attacker places malicious con- ent’s public key. For concreteness, we examine tent (e.g., JavaScript) in the user’s browser and modifies Microsoft.Live.Channels the library [27], the state of the browser, interfering with the honest ses- which uses fragment identifier messaging to let sion. To study the browser’s security policy, which deter- the Windows Live Contacts gadget communicate mines the privileges of the attacker’s content, we define with its integrator. The protocol used by Win- the web attacker threat model below. dows Live is analogous to the Needham-Schroeder public-key protocol [29]. We discover an attack on this protocol, related to Lowe’s anomaly in the Web Attacker. A web attacker is a malicious princi- Needham-Schroeder protocol [23], in which a mali- pal who owns one or more machines on the network. In cious gadget can impersonate the integrator to the order to study the security of browsers when rendering Contacts gadget. We suggested a solution based malicious content, we assume that the browser gets and on Lowe’s improvement to the Needham-Schroeder renders content from the attacker’s web site. protocol [23], and Microsoft implemented and de- Network Abilities. The web attacker has no spe- • ployed our suggestion within days. cial network abilities. In particular, the web attacker can send and receive network messages only from postMessage is a new browser API designed for • machines under his or her control, possibly acting inter-frame communication [19]. postMessage as a client or server in network protocols of the at- is implemented in Opera, Internet Explorer 8, Fire- tacker’s choice. Typically, the web attacker uses at fox 3, and Safari. Although postMessage has least one machine as an HTTP server, which we been deployed since 2005, we demonstrate an attack refer to for simplicity as attacker.com. The on the channel’s confidentiality using frame navi- web attacker can obtain SSL certificates for do- gation. In light of this attack, the postMessage mains he or she owns; certificate authorities such channel provides authentication but lacks confiden- as instantssl.com provide such certificates for tiality, analogous to a channel in which senders free. The web attacker’s network abilities are decid- cryptographically sign their messages. To se- edly weaker than the usual network attacker consid- cure the channel, we propose a change to the ered in studies of network security because the web postMessage API. We implemented our change attacker can neither eavesdrop on messages sent to in patches for Safari and Firefox. Our proposal has other recipients nor forge messages from other net- been adopted by the HTML 5 working group, Inter- work locations. For example, a web attacker cannot net Explorer 8, Firefox 3, and Safari. act as a “man-in-the-middle.” 1 17th USENIX Security Symposium USENIX Association Interaction with Client. We assume the honest Out-of-Scope Threats. Although phishing [11, 7] can • user views attacker.com in at least one browser be described informally as a “web attack,” the web window, thereby rendering the attacker’s content. attacker defined above does not attempt to fool the We make this assumption because we believe that user by choosing a confusing domain name (such as an honest user’s interaction with an honest site bankofthevvest.com) or using other social engi- should be secure even if the user separately vis- neering. In particular, we do not assume that a user its a malicious site in a different browser window. treats attacker.com as if it were a site other than We assume the web attacker is constrained by the attacker.com. The attacks presented in this paper browser’s security policy and does not employ a are “pixel-perfect” in the sense that the browser provides browser exploit to circumvent the policy. The web the user no indication whatsoever that an attack is under- attacker’s host privileges are decidedly weaker than way. The attacks do not display deceptive images over an attacker who can execute a arbitrary code on the the browser security indicators nor do they spoof the lo- user’s machine with the user’s privileges. For exam- cation bar and or the lock icon. In this paper, we do not ple, a web attacker cannot install or run a system- consider cross-site scripting attacks, in which an attacker wide key logger or botnet client.
Recommended publications
  • La Promotion Du Web Ouvert a Bien Changé Mais Mozilla Est Toujours Là
    La promotion du Web Ouvert a bien changé mais Mozilla est toujours là Promouvoir le Web ouvert est l’une des missions de Mozilla. Mission parfaitement assumée et réussie il y a quelques années avec l’avènement de Firefox qui obligea Internet Explorer à quitter son arrogance pour rentrer dans le rang et se montrer plus respectueux des standards et donc des internautes. Sauf qu’aujourd’hui la donne a sensiblement changé. Avec la mobilité, les stores, les apps, les navigateurs intégrés, etc. c’est en effet un Web bien plus complexe qui se présente devant nous. Un Web enthousiasmant[1] mais plein d’embûches pour ceux qui sont attachés à son ouverture et à sa neutralité. C’est tout l’objet de ce très intéressant récent billet du développeur Mozilla Robert O’Callahan. Des changements dans la façon de promouvoir le Web Ouvert Shifts In Promoting The Open Web Robert O’Callahan – 30 septembre 201 – Blog personnel (Traduction Framalang : Antistress et Goofy) Historiquement Mozilla a dépensé pas mal d’énergie pour promouvoir l’usage du « Web ouvert » plutôt que de plateformes propriétaires et de code spécifique à des navigateurs non standards (IE6). Cette évangélisation reste nécessaire mais le paysage s’est modifié et je pense que notre discours doit s’adapter. Les plateformes dont nous devons nous préoccuper ont beaucoup changé. Au lieu de WPF, Slivertlight and Flash, les outils propriétaires pour développeurs avec lesquelles il faut rivaliser dorénavant sont iOS et Android. En conséquence, les fonctionnalités que le Web doit intégrer sont à présent orientées vers la mobilité.
    [Show full text]
  • Webgl™ Optimizations for Mobile
    WebGL™ Optimizations for Mobile Lorenzo Dal Col Senior Software Engineer, ARM 1 Agenda 1. Introduction to WebGL™ on mobile . Rendering Pipeline . Locate the bottleneck 2. Performance analysis and debugging tools for WebGL . Generic optimization tips 3. PlayCanvas experience . WebGL Inspector 4. Use case: PlayCanvas Swooop . ARM® DS-5 Streamline . ARM Mali™ Graphics Debugger 5. Q & A 2 Bring the Power of OpenGL® ES to Mobile Browsers What is WebGL™? Why WebGL? . A cross-platform, royalty free web . It brings plug-in free 3D to the web, standard implemented right into the browser. Low-level 3D graphics API . Major browser vendors are members of . Based on OpenGL® ES 2.0 the WebGL Working Group: . A shader based API using GLSL . Apple (Safari® browser) . Mozilla (Firefox® browser) (OpenGL Shading Language) . Google (Chrome™ browser) . Opera (Opera™ browser) . Some concessions made to JavaScript™ (memory management) 3 Introduction to WebGL™ . How does it fit in a web browser? . You use JavaScript™ to control it. Your JavaScript is embedded in HTML5 and uses its Canvas element to draw on. What do you need to start creating graphics? . Obtain WebGLrenderingContext object for a given HTMLCanvasElement. It creates a drawing buffer into which the API calls are rendered. For example: var canvas = document.getElementById('canvas1'); var gl = canvas.getContext('webgl'); canvas.width = newWidth; canvas.height = newHeight; gl.viewport(0, 0, canvas.width, canvas.height); 4 WebGL™ Stack What is happening when a WebGL page is loaded . User enters URL . HTTP stack requests the HTML page Browser . Additional requests will be necessary to get Space User JavaScript™ code and other resources WebKit JavaScript Engine .
    [Show full text]
  • Chapter 10 Document Object Model and Dynamic HTML
    Chapter 10 Document Object Model and Dynamic HTML The term Dynamic HTML, often abbreviated as DHTML, refers to the technique of making Web pages dynamic by client-side scripting to manipulate the document content and presen- tation. Web pages can be made more lively, dynamic, or interactive by DHTML techniques. With DHTML you can prescribe actions triggered by browser events to make the page more lively and responsive. Such actions may alter the content and appearance of any parts of the page. The changes are fast and e±cient because they are made by the browser without having to network with any servers. Typically the client-side scripting is written in Javascript which is being standardized. Chapter 9 already introduced Javascript and basic techniques for making Web pages dynamic. Contrary to what the name may suggest, DHTML is not a markup language or a software tool. It is a technique to make dynamic Web pages via client-side programming. In the past, DHTML relies on browser/vendor speci¯c features to work. Making such pages work for all browsers requires much e®ort, testing, and unnecessarily long programs. Standardization e®orts at W3C and elsewhere are making it possible to write standard- based DHTML that work for all compliant browsers. Standard-based DHTML involves three aspects: 447 448 CHAPTER 10. DOCUMENT OBJECT MODEL AND DYNAMIC HTML Figure 10.1: DOM Compliant Browser Browser Javascript DOM API XHTML Document 1. Javascript|for cross-browser scripting (Chapter 9) 2. Cascading Style Sheets (CSS)|for style and presentation control (Chapter 6) 3. Document Object Model (DOM)|for a uniform programming interface to access and manipulate the Web page as a document When these three aspects are combined, you get the ability to program changes in Web pages in reaction to user or browser generated events, and therefore to make HTML pages more dynamic.
    [Show full text]
  • Communications Cacm.Acm.Org of Theacm 06/2009 Vol.52 No.06
    COMMUNICATIONS CACM.ACM.ORG OF THEACM 06/2009 VOL.52 NO.06 One Laptop Per Child: Vision vs. Reality Hard-Disk Drives: The Good, The Bad, and the Ugly How CS Serves The Developing World Network Front-End Processors The Claremont Report On Database Research Autonomous Helicopters Association for Computing Machinery Think Parallel..... It’s not just what we make. It’s what we make possible. Advancing Technology Curriculum Driving Software Evolution Fostering Tomorrow’s Innovators Learn more at: www.intel.com/thinkparallel ACM Ad.indd 1 4/17/2009 11:20:03 AM ABCD springer.com Noteworthy Computer Science Journals Autonomous Biological Personal and Robots Cybernetics Ubiquitous G. Sukhatme, University W. Senn, Universität Bern, Computing of Southern California, Physiologisches Institut; ACM Viterbi School of Engi- J. Rinzel, National neering, Dept. Computer Institutes of Health (NIH), P. Thomas, Univ. Coll. Science Dept. Health Education & London Interaction Centre Autonomous Robots Welfare; J. L. van Hemmen, reports on the theory and TU München, Abt. Physik Personal and Ubiquitous applications of robotic systems capable of Biological Cybernetics is an interdisciplinary Computing publishes peer-reviewed some degree of self-sufficiency. It features medium for experimental, theoretical and international research on handheld, wearable papers that include performance data on actual application-oriented aspects of information and mobile information devices and the robots in the real world. The focus is on the processing in organisms, including sensory, pervasive communications infrastructure that ability to move and be self-sufficient, not on motor, cognitive, and ecological phenomena. supports them to enable the seamless whether the system is an imitation of biology.
    [Show full text]
  • Introducing HTML5.Pdf
    ptg HTMLINTRODUCING 5 ptg BRUCE LAWSON REMY SHARP Introducing HTML5 Bruce Lawson and Remy Sharp New Riders 1249 Eighth Street Berkeley, CA 94710 510/524-2178 510/524-2221 (fax) Find us on the Web at: www.newriders.com To report errors, please send a note to [email protected] New Riders is an imprint of Peachpit, a division of Pearson Education Copyright © 2011 by Remy Sharp and Bruce Lawson Project Editor: Michael J. Nolan Development Editor: Jeff Riley/Box Twelve Communications Technical Editors: Patrick H. Lauke (www.splintered.co.uk), Robert Nyman (www.robertnyman.com) Production Editor: Cory Borman Copyeditor: Doug Adrianson Proofreader: Darren Meiss Compositor: Danielle Foster Indexer: Joy Dean Lee Back cover author photo: Patrick H. Lauke Notice of Rights ptg All rights reserved. No part of this book may be reproduced or transmitted in any form by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior written permission of the publisher. For informa- tion on getting permission for reprints and excerpts, contact permissions@ peachpit.com. Notice of Liability The information in this book is distributed on an “As Is” basis without war- ranty. While every precaution has been taken in the preparation of the book, neither the authors nor Peachpit shall have any liability to any person or entity with respect to any loss or damage caused or alleged to be caused directly or indirectly by the instructions contained in this book or by the com- puter software and hardware products described in it. Trademarks Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks.
    [Show full text]
  • 0321687299.Pdf
    Introducing HTML5 Bruce Lawson and Remy Sharp New Riders 1249 Eighth Street Berkeley, CA 94710 510/524-2178 510/524-2221 (fax) Find us on the Web at: www.newriders.com To report errors, please send a note to [email protected] New Riders is an imprint of Peachpit, a division of Pearson Education Copyright © 2011 by Remy Sharp and Bruce Lawson Project Editor: Michael J. Nolan Development Editor: Jeff Riley/Box Twelve Communications Technical Editors: Patrick H. Lauke (www.splintered.co.uk), Robert Nyman (www.robertnyman.com) Production Editor: Cory Borman Copyeditor: Doug Adrianson Proofreader: Darren Meiss Compositor: Danielle Foster Indexer: Joy Dean Lee Back cover author photo: Patrick H. Lauke Notice of Rights All rights reserved. No part of this book may be reproduced or transmitted in any form by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior written permission of the publisher. For informa- tion on getting permission for reprints and excerpts, contact permissions@ peachpit.com. Notice of Liability The information in this book is distributed on an “As Is” basis without war- ranty. While every precaution has been taken in the preparation of the book, neither the authors nor Peachpit shall have any liability to any person or entity with respect to any loss or damage caused or alleged to be caused directly or indirectly by the instructions contained in this book or by the com- puter software and hardware products described in it. Trademarks Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this book, and Peachpit was aware of a trademark claim, the designa- tions appear as requested by the owner of the trademark.
    [Show full text]
  • Webgl: the Standard, the Practice and the Opportunity Web3d Conference August 2012
    WebGL: The Standard, the Practice and the Opportunity Web3D Conference August 2012 © Copyright Khronos Group 2012 | Page 1 Agenda and Speakers • 3D on the Web and the Khronos Ecosystem - Neil Trevett, NVIDIA and Khronos Group President • Hands On With WebGL - Ken Russell, Google and WebGL Working Group Chair © Copyright Khronos Group 2012 | Page 2 Khronos Connects Software to Silicon • Khronos APIs define processor acceleration capabilities - Graphics, video, audio, compute, vision and sensor processing APIs developed today define the functionality of platforms and devices tomorrow © Copyright Khronos Group 2012 | Page 3 APIs BY the Industry FOR the Industry • Khronos standards have strong industry momentum - 100s of man years invested by industry leading experts - Shipping on billions of devices and multiple operating systems • Khronos is OPEN for any company to join and participate - Standards are truly open – one company, one vote - Solid legal and Intellectual Property framework for industry cooperation - Khronos membership fees to cover expenses • Khronos APIs define core device acceleration functionality - Low-level “Foundation” functionality needed on every platform - Rigorous conformance tests for cross-vendor consistency • They are FREE - Members agree to not request royalties Silicon Software © Copyright Khronos Group 2012 | Page 4 Apple Over 100 members – any company worldwide is welcome to join Board of Promoters © Copyright Khronos Group 2012 | Page 5 API Standards Evolution WEB INTEROP, VISION MOBILE AND SENSORS DESKTOP OpenVL New API technology first evolves on high- Mobile is the new platform for Apps embrace mobility’s end platforms apps innovation. Mobile unique strengths and need Diverse platforms – mobile, TV, APIs unlock hardware and complex, interoperating APIs embedded – mean HTML5 will conserve battery life with rich sensory inputs become increasingly important e.g.
    [Show full text]
  • Khronos Open API Standards for Mobile Graphics, Compute And
    Open API Standards for Mobile Graphics, Compute and Vision Processing GTC, March 2014 Neil Trevett Vice President Mobile Ecosystem, NVIDIA President Khronos © Copyright Khronos Group 2014 - Page 1 Khronos Connects Software to Silicon Open Consortium creating ROYALTY-FREE, OPEN STANDARD APIs for hardware acceleration Defining the roadmap for low-level silicon interfaces needed on every platform Graphics, compute, rich media, vision, sensor and camera processing Rigorous specifications AND conformance tests for cross- vendor portability Acceleration APIs BY the Industry FOR the Industry Well over a BILLION people use Khronos APIs Every Day… © Copyright Khronos Group 2014 - Page 2 Khronos Standards 3D Asset Handling - 3D authoring asset interchange - 3D asset transmission format with compression Visual Computing - 3D Graphics - Heterogeneous Parallel Computing Over 100 companies defining royalty-free APIs to connect software to silicon Camera Control API Acceleration in HTML5 - 3D in browser – no Plug-in - Heterogeneous computing for JavaScript Sensor Processing - Vision Acceleration - Camera Control - Sensor Fusion © Copyright Khronos Group 2014 - Page 3 The OpenGL Family OpenGL 4.4 is the industry’s most advanced 3D API Cross platform – Windows, Linux, Mac, Android Foundation for productivity apps Target for AAA engines and games The most pervasively available 3D API – 1.6 Billion devices and counting Almost every mobile and embedded device – inc. Android, iOS Bringing proven desktop functionality to mobile JavaScript binding to OpenGL
    [Show full text]
  • 01 Creation of HTML Pages with Frames, Links, Tables and Other Tags Date
    www.vidyarthiplus.com Ex. No. : 01 Creation of HTML pages with frames, links, tables and other tags Date : AIM: To create a simple webpage using HTML that includes all tags. ALGORITHM: 1. Write a HTML program in the notepad with the tags such as A. FRAMES With frames, you can display more than one HTML document in the same browser window. Each HTML document is called a frame, and each frame is independent of the others. The Frameset Tag The <frameset> tag defines how to divide the window into frames. The Frame Tag The <frame> tag defines what HTML document to put into each frame. Example: <frameset cols="25%, 75 %"> <frame src="frame_a.htm"> <frame src="frame_b.htm"> </frameset> Tags and their Description: <frameset> Defines a set of frames <frame> Defines a sub window (a frame) www.vidyarthiplus.com www.vidyarthiplus.com B. LINKS A hyperlink is a reference (an address) to a resource on the web. Example: <a href="http://www.w3schools.com/">Visit W3Schools!</a> The href Attribute The href attribute defines the link "address". The target Attribute The target attribute defines where the linked document will be opened. Tag and its Description: <a> Defines an anchor C. TABLES Tables are defined with the <table> tag. A table is divided into rows (with the <tr> tag), and each row is divided into data cells (with the <td> tag). The letters td stands for "table data," which is the content of a data cell. Example: <table border="1"> <tr> <td>Row 1, cell 1</td> <td>Row 1, cell 2</td> </tr> </table> Tags and their Description: <Table> Defines a table <th> Defines a table header <tr> Defines a table row <td> Defines a table cell 2.
    [Show full text]
  • 23-Introduction-To-CSS.Pdf
    Introduction to CSS Jerry Cain CS 106AX November 13, 2019 Introducing CSS • Recall that there are three technologies that are typically employed when implementing interactive web pages. – HTML: which dictates the structure and content of a web page – JavaScript: which implements animations and user interactivity and otherwise control the behavior of the elements – CSS: short for Cascading Style Sheets, controls layout, formatting, and presentation • Any nontrivial web application will require a large amount of HTML, CSS, and JavaScript. – As web applications grow in complexity, it’s important to decouple the HTML, CSS, and JavaScript as much as possible that that changes to an HTML document never break a CSS rule or compromise the execution of JavaScript event handler. – Web applications that successfully separate content, presentation, and interactivity are easier to modify and maintain. CSS Declarations • Web designers control the presentation of a page using one or more CSS declarations, each of which is structured like this: property-name: property-value; • The property name is one of several CSS keywords (567 according to https://www.w3.org) that identify some detail related to presentation. • The set of possible property values depends on the name. – background-color can take on any legal JavaScript or CSS color, e.g. green, rgb(85, 172, 238), or #E98725. – text-align governs the horizontal alignment of text and can be set to left, right, center, or justify. – display controls how an element is displayed and can be bound to inline,
    [Show full text]
  • Document Object Model †DOM‡ Level 1 Specification
    Document Object Model (DOM) Level 1 Specification REC-DOM-Level-1-19981001 Document Object Model (DOM) Level 1 Specification Version 1.0 W3C Recommendation 1 October, 1998 This version http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001 http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/DOM.ps http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/DOM.pdf http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/DOM.tgz http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/DOM.zip http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/DOM.txt Latest version http://www.w3.org/TR/REC-DOM-Level-1 Previous versions http://www.w3.org/TR/1998/PR-DOM-Level-1-19980818 http://www.w3.org/TR/1998/WD-DOM-19980720 http://www.w3.org/TR/1998/WD-DOM-19980416 http://www.w3.org/TR/WD-DOM-19980318 http://www.w3.org/TR/WD-DOM-971209 http://www.w3.org/TR/WD-DOM-971009 WG Chair Lauren Wood, SoftQuad, Inc. Editors Vidur Apparao, Netscape Steve Byrne, Sun Mike Champion, ArborText Scott Isaacs, Microsoft Ian Jacobs, W3C Arnaud Le Hors, W3C Gavin Nicol, Inso EPS Jonathan Robie, Texcel Research Robert Sutor, IBM Chris Wilson, Microsoft Lauren Wood, SoftQuad, Inc. Principal Contributors Vidur Apparao, Netscape Steve Byrne, Sun (until November 1997) Mike Champion, ArborText, Inc. 1 Status of this document Scott Isaacs, Microsoft (until January, 1998) Arnaud Le Hors, W3C Gavin Nicol, Inso EPS Jonathan Robie, Texcel Research Peter Sharpe, SoftQuad, Inc. Bill Smith, Sun (after November 1997) Jared Sorensen, Novell Robert Sutor, IBM Ray Whitmer, iMall Chris Wilson, Microsoft (after January, 1998) Status of this document This document has been reviewed by W3C Members and other interested parties and has been endorsed by the Director as a W3C Recommendation.
    [Show full text]
  • Securing Frame Communication in Browsers by Adam Barth, Collin Jackson, and John C
    DOI:10.1145/1516046.1516066 Securing Frame Communication in Browsers By Adam Barth, Collin Jackson, and John C. Mitchell Abstract map, or a photo album, the site runs the risk of incorporat- Many Web sites embed third-party content in frames, ing malicious content. Without isolation, malicious content relying on the browser’s security policy to protect against can compromise the confidentiality and integrity of the malicious content. However, frames provide insufficient user’s session with the integrator. Although the browser’s isolation in browsers that let framed content navigate well-known “same-origin policy”19 restricts script running other frames. We evaluate existing frame navigation poli- in one frame from manipulating content in another frame, cies and advocate a stricter policy, which we deploy in the browsers use a different policy to determine whether one open-source browsers. In addition to preventing undesir- frame is allowed to navigate (change the location of) another. able interactions, the browser’s strict isolation policy also Although browsers must restrict navigation to provide isola- affects communication between cooperating frames. We tion, navigation is the basis of one form of interframe com- therefore analyze two techniques for interframe communi- munication used by leading companies and navigation cation between isolated frames. The first method, fragment can be used to attack a second interframe communication identifier messaging, initially provides confidentiality with- mechanism. out authentication, which we repair using concepts from a Many recent browsers have overly permissive frame well-known network protocol. The second method, post- navigation policies that lead to a variety of attacks. To pre- Message, initially provides authentication, but we dis- vent attacks, we demonstrate against the Google AdSense cover an attack that breaches confidentiality.
    [Show full text]