MySpace, YouTube successes open door to Web 2.0 dangers
Web 2.0, and Ajax in particular, are introducing new threats to life on the Web. Many people are rushing to add interactive features to their Web applications using Ajax, but as columnist Mike Cobb explains, security has often been overlooked.
Web 2.0 is a catch-all term covering second generation Web services and has captured the imagination of the Web developer community.
|
![]() |
||||||||||||||||
![]() |
Everyone is now rushing to add interactive features to their own Web applications to try to recreate the successes of sites like MySpace and YouTube. A key element of this new class of Web service is Asynchronous JavaScript and XML (Ajax), a set of technologies used together to extend browser functionality.
Ajax applications are mainly executed on the user's machine and can connect to Web servers independently of the user, exchanging data behind the scenes so that the entire Web page does not have to be reloaded. This makes the application feel more responsive, such as Gmail's real-time spell checking. This relatively seamless exchange of data between an application server and a browser allows users to access, share, and edit online content in similar fashion to traditional desktop applications.
But in the rush to add interactive features, security has often been overlooked. Several high profile attacks have exploited weaknesses in sites using Web 2.0 technologies. The Yamanner worm hit Yahoo mail users, exploiting JavaScript and Ajax code to collect email addresses, while the Samy and Spaceflash worms spread among MySpace users changing buddy lists and profile information. Such attacks have heightened concerns that Web 2.0, and Ajax in particular, are introducing new threats to life on the Web.
Ajax is not that new and it hasn't introduced new vulnerabilities, just variations of old ones. The problem is that Ajax applications tend to be very complex. There are many more interactions between the browser and server, and pages can even pull in content from other sites. This makes it difficult to test the many possible permutations of user and service interaction, allowing old vulnerabilities such as cross-site scripting (XSS) flaws to be unwittingly introduced in to the application.
![]() |
||||
|
![]() |
|||
![]() |
All the big sites such as Microsoft, Google, eBay, and Yahoo have experienced cross-site scripting flaws in the past but where Ajax does change the threat landscape is that it allows an attacker to exploit XSS vulnerabilities in a more covert manner. Malicious code can make multiple requests in the background while the user will be unaware of anything untoward happening. XSS attacks can be used to steal data, take control of a user's session, run malicious code, or launch phishing scams.
Securing Ajax applications is a new challenge for anyone involved in developing or managing Web-based services. As yet there aren't really any comprehensive automated Ajax application security assessment tools. So until developers become more security aware, particularly about the unanticipated malicious use of their application's features, we're not likely to see a reduction in the number of successful attacks against Web 2.0 sites.
However, one of the benefits of Web-based applications is that deploying fixes is typically fast and easy, requiring no action from the user. This does mean that vulnerabilities, once discovered, can be removed quickly without the need for users to download and install patches themselves.
Michael Cobb, CISSP-ISSAP, is the founder and managing director of Cobweb Applications Ltd., a consultancy that offers IT training and support in data security and analysis. He co-authored the book IIS Security and has written numerous technical articles for leading IT publications. Mike is the guest instructor for SearchSecurity.com's Messaging Security School and, as a SearchSecurity.com site expert, answers user questions on application security and platform security.