Archive for the ‘The Big Picture’ Category

Opening Keynote – Day 3

Anthony Franco of effectiveui spoke in general about the future of RIAs.  A main point that he tried to get across was that Ajax isn’t something that should be used just for the sake of using it.  As developers, we need make sure we figure out exactly what the client’s needs are and build our requirements off of that.  Ajax is supposed to be used to create more engaging user experiences – but sometimes can lead to overkill.

Understanding Top Web 2.0 Security Attacks

One of the most eye-opening sessions of the conference so far has been this one on Web 2.0 security. The speaker, Danny Allan from Watchfire, an IBM company, was a fantastic speaker and one of the most engaging of the week. There are a lot of security risks in just about all rich internet applications on the web today, mostly due to the way the world wide web was built – there are all kinds of ways hackers can attack a web site to gain access to secure information. Why would they want to gain access to this information? Mostly, almost always, for financial gain.

He listed out 3 types of core attacks that may be used:

  1. Browser attacks: such as plugin flaws.
  2. Server side attacks: this is the more traditional attack such as SQL injection attacks.
  3. Client side attacks: Using XSS (cross-site scripting), CSRF, etc hackers can gain control over a users computer. There are 108 ways to exploit XSS attacks.

The main technologies that are attacked are:

  1. Browsers
  2. Ajax
  3. Web Services

It’s also worth noting that mashups are especially difficult to protect. There is the possibility that an attack in one widget could pull sensitive data from other widgets. Also it’s difficult to know when that happens because the DOM doesn’t recognize these sorts of attacks.

Other types of attacks mentioned are JS hijacking, prototype hijacking (hackers are able to basically replace your javascript function with their own), cache poisoning, DNS attacks, DNS Reminding attacks.

He then proceded to show us this demo of a XSS proxy which allowed him to gain control of a users’ bank information (not a real bank site) by pasting some malicious javascript code in the site search box and submitting it. Using the XSS proxy, he basically had a hacker admin panel that allowed him to view all kinds of data he ’stole’ from the user, including every link they clicked, every page viewed, all passwords and data typed in text fields, and basically anything sent through the browser you can think of. Since this was staged and just a demo, there are of course a lot of things that needed to be in place for this to work correctly but the point is, it’s possible. One of the things I thought was really interesting is that he actually leveraged CSS code (href tag styles) in his algorithm to gain access to this fake person’s data. Yikes!

IDE + Framework Roundup 1

A few of the sessions that I’ve decided not to go into detail about were basically sales pitches (I’m using the term loosely – Most of these are open source and free to use) for a development IDE or framework… here’s a few of note:

  • Aptana Studio & “Jaxer” Ajax Server – This IDE has support for HTML, CSS, Javascript, PHP, and Ruby On Rails. It’s interesting because it supports most of the popular javascript libraries (prototype, dojo, etc) and offers some pretty slick code completion. It also seems like a pretty swell IDE for the iPhone SDK (The speaker built a small web app for the iPhone in a matter of minutes). The Ajax server allows for server-side javascript.
  • jMaki -A mashup framework, in beta, created by Sun Microsystems. This seems to have a lot of potential. Basically they created wrappers for several popular js toolkits which allows developers to use PHP, JSP, or whatever to embed the javascript code. It abstracts the event model of whatever particular js library you use into your language of choice. It is supported (with the help of plugins) in Netbeans, Eclipse, and ANT-based tools.
  • Webtop – Also created by Sun, Webtop is based on jMaki and is essentially an open source, extensible iGoogle clone.
  • ICEfaces – Java EE Framework for building asynchronous, real-time social web applications.

Day 2 Keynote: “Good Morning… btw, the WWW sucks.”

Ok, he didn’t really say that in so many words but that was pretty much what was thrown at us during the opening keynote at 7:30am this morning. The main message: The WWW has problems. Serious problems. It’s not secure, and it just wasn’t built for the kinds of Web 2.0 applications that are becoming increasingly popular. But, on the other hand… it works, and for a lot of people that’s ok. However, keynote speaker Douglas Crockford from Yahoo seems to believe that the end of the world wide web may be at hand and other technologies such as AIR, Silverlight, or JavaFX may be there ready to compete for dominance if new standards that fix these issues aren’t put in place within the next decade. Ultimately he said that the DOM and Javascript need to be replaced all together… which is definitely no small task.

Also of note, he mentioned jsLint, a javascript verifier, as well as Google’s Caja and Cajita to help safely allow javascript-enabled third-party widgets in mashups, but this isn’t a viable solution for securing RIAs.

85 Sessions…

There’s a ton of stuff that’s going to be covered this week, so planning some kind of agenda is becoming next to impossible. I’m definitely the kind of person that isn’t happy just staying with one general topic. I like jumping around a bit to try to get a broader idea of what’s going on, although I’m going to try to keep that to a minimum. It’s probably a good thing they’re giving us DVDs of all the sessions, otherwise I’d probably pass out trying to sprint around to every one. There are 85 session, 18 core topics including:

  • Rich Internet Applications
  • Enterprise Mashups
  • Security
  • Toolkits & Frameworks
  • Web 2.0 | Enterprise Web 2.0
  • Enterprise AJAX
  • Social Applications
  • iPhone
  • Reverse AJAX | AJAX Push | Comet
  • ASP.NET AJAX
  • Silverlight
  • Adobe AIR | Flash | Flex
  • Yahoo! User Interface Library
  • SOA
  • Enterprise 2.0
  • PHP
  • Ruby on Rails | Grails
  • JSF | JavaFX | jMaki

View the Complete List of Sessions

I shall return with some sort itinerary… Any requests?