| By Eric Miraglia | Article Rating: |
|
| March 31, 2008 01:15 PM EDT | Reads: |
7,495 |
Douglas Crockford gave a keynote at the AJAXWorld East 2008 conference in New York City last week. As ever, Douglas was pulling no punches - his title: 'Can We Fix the Web?' The browser, Douglas says, was behind the times when it was introduced, and it hasn't aged well. It wasn't designed to do the kinds of things we're trying to make it do; we've exploited most of its potential and we're hitting a natural wall now that we've extracted from the browser about as much as is possible.The browser has serious problems:
- It’s insecure: Once an attacker gets a foothold on the page, it can read the page, load additional scripts, make additional requests of the server, and send information anywhere in the world. The browser fails to prevent any of these things.
- It suffers from the Turducken problem: Turducken, popularized by NFL analyst and Hall of Fame coach John Madden, is a turkey stuffed with a duck stuffed with a chicken. The Web is like this, with CSS stuffed in JavaScript stuffed in HTML. Text that’s safe in one context may not be safe in another.
- The web standards require that these vulnerabilities be present. Douglas identifies JavaScript, DOM and cookies as being standards that lead to vulnerability. JavaScript’s global object and intrinsic insecurity are a problem; the nature of the DOM node tree, where every node can access every other node and the network, is a problem; and the ambient authority system of cookies presents a problem.

Douglas Crockford Giving His AJAXWorld Keynote in NYC (Photo by Noah Sussner)
Reiterating an argument he’s made elsewhere, Douglas went on to argue that, while mashups are the most interesting development in software in 20 years, they are spectacularly insecure. Any time you have scripts from two sources on the same page, you have an insecure situation, and that is often a baseline assumption in the mashup world. (But, Douglas notes, it’s not limited to “traditional” mashups: advertising as implemented on the web is itself a mashup and is insecure.)
Douglas proposes a three-part approach to “fixing the web”:
- Subsets of JavaScript: It’s possible to create safe subsets of JavaScript by eliminating the parts of the language that are dangerous. There are a few subsetting approaches out there; Douglas’s own ADsafe is one and Caja (from Google) is another.
- Small browser improvements: Implementing solutions for cross-site data access (for mashups) — like JSONRequest — that can replace current techniques like the script tag hack and iframes.
- Massive browser improvements: Douglas suggests replacing JavaScript and the DOM and going from there — effectively building upon the ADsafe JavaScript subset using the tenets of object capability theory to create a secure toolkit for in-browser programming.
You can download Douglas’s slides here.
Published March 31, 2008 Reads 7,495
Copyright © 2008 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
- AJAXWorld Report: Inaugural iPhone Developer Summit in New York City
- AJAXWorld Report: GWT & Java EE – Where Are All of the Alligators?
- AJAXWorld Report: Cold Weather, Arctic Snowcruisers and a Shift in Perception
- AJAXWorld Report: Clearspring at AJAXWorld in New York
- AJAXWorld Report: Flex and Flash Are Starting to be Talked About a Lot More
- AJAXWorld Report: How To Integrate MyFaces Trinidad
More Stories By Eric Miraglia
Eric Miraglia, one of the world's leading experts on "advanced JavaScript utilities and widgets" works for Yahoo!'s Presentation Platform Team. He plays a critical role in helping product teams realize their forward-reaching development goals. He also teaches regular classes for Yahoo web developers. Eric has been involved in the creation of social web applications since 1995, when he began developing interactive writing spaces for universities; his Speakeasy Studio & Café was used by more than 100 universities between 1997 and 2004. Since 2003, he has been a part of Yahoo!'s web development community. When he's not trying to convince pixels to do what they're told, he can sometimes be found at Stanford University, where he teaches writing as a visiting lecturer. He holds a Ph.D. in the strange hybrid discipline of Technology and Rhetoric.
- Zynga’s FarmVille Becomes Largest and Fastest Growing Social Game Ever
- RIM Launches BlackBerry Desktop Manager for Mac Users
- Confessions of a Ulitzer Addict
- Ulitzer Live! New Media Conference & Expo
- Are You Comfortable with Where Your Data Sleeps at Night?
- Analyst Firm Launches "ZapThink on Ulitzer"
- Ulitzer Provides a Powerful Social Journalism Platform
- Unisys Provides Mobile Support
- Apple Introduces New iPod nano With Built-in Video Camera
- Open Source Mobile Cloud Sync and Push Email
- iPhone Developer Summit Extended To June 22-23 By Popular Demand
- iPhone OS 3.0 Hits the Streets Today
- Adobe Flash Media Server on iPhone
- Twitter is the Dumbest Thing I Have Ever Seen in My Life
- Zynga’s FarmVille Becomes Largest and Fastest Growing Social Game Ever
- Oracle + Sun Will Be Like the iPhone: Larry Ellison
- Could Apple Enter the Cloud Computing Market?
- Apple Should Buy Adobe
- What Hardware Changes Will iPhone OS 3.0 Bring?
- New Evernote App For The iPhone OS 3.0
- Where Are RIA Technologies Headed in 2008?
- Sun Blew its "iPhone" Java Opportunity to AJAX
- AJAXWorld Conference Adds "iPhone Developer Track"
- iPhone Will Make Mobile AJAX and Web 2.0 Happen
- Why Build Applications for the iPhone and iPod Touch?
- Designing For the "iPhone" Is a Refreshing Experience
- New Column: A Geek's Bookshelf
- Building an iPhone Application with Adobe AIR
- Apple U-Turns on iPhone: Third-Party Developers To Get SDK in 2008
- Vodaphone To Present iPhone Developer Session at AJAXWorld
































