It seems today that Cross-Site Scripting (XSS) holes in popular web applications are being discovered and disclosed at an ever-increasing rate. Just glancing at the Bugtraq security mailing list archives over the first half of 2002 shows countless postings of XSS holes in widely used websites and applications.

The security community has already developed numerous proof-of-concept demonstrations in which XSS holes in websites such as Hotmail, eBay, and Excite and in software like Apache Tomcat, Microsoft IIS, Lotus Domino, and IBM Websphere facilitate hijacking of web application user accounts. Almost all of these scenarios require the involvement of an “active” attacker, a person who tries to steal a user’s cookie values at the same time that the user is still signed in to his web application session. Generally for this to be successful, the attacker must perform these actions while the user is still signed into the application or else they will receive a “session expired” error page. It is important to note that most types of conventional security measures (i.e. firewalls, intrusion detection systems, virus protection, etc.) currently do very little to detect or protect against these types of attacks.

This iDEFENSE Labs paper predicts that fully and semi-automated techniques will aggressively begin to emerge for targeting and hijacking web applications using XSS, thus eliminating the need for active human exploitation. Some of these techniques are detailed along with solutions and workarounds for web application developers and users.