IE 'Twitter rolling' attack trivial to launch
Whose bug is it, anyway?
Updated An information disclosure threat in Microsoft's Internet Explorer affects all supported versions of the browser and, among other things, makes it trivial for attackers to force victims to post attacker-dictated messages on Twitter, a security researcher said this week.
The “Twitter-rolling” attack, which was first described last month, is the result of the way the browser parses CSS, or cascading style sheets, security researcher Chris Evans said. In an update posted on Wednesday, he demonstrated just how easy it is to exploit the flaw and said that “Microsoft have not stated when users of IE6, IE7, and IE8 will be afforded protection.”
Indeed, a Microsoft spokeswoman responding to questions from El Reg said only:
Microsoft has completed its investigation into the XSS-related security issue publicly disclosed earlier this month. The company will take appropriate action to resolve the vulnerability and will communicate to customers as necessary. We'll share more information when appropriate.
Evans was categorical that the flaw resides in Microsoft's code, and he also said Microsoft has known of the threat since 2008. He has said forced tweets are just one example of the types of attacks that can result.
But Jeff Williams, CEO of Aspect Security and chair of the Open Web Application Security Project, isn't so sure Microsoft is to blame. He says the XSS, or cross-site scripting, bug that allows the attack to happen is the result of web applications that don't adequately scrutinize input supplied by the browser.
“The primary responsibility has got to fall on the developer who is taking untrusted data and putting it is a CSS context within an HTML page,” he told The Reg. “If you don't escape properly, you're going to have XSS every time. Until developers get that through their head, we're going to have to live with lots of XSS holes.”
The debate is reminiscent of one that percolated three years ago when Microsoft and Mozilla pointed fingers at each other over a vulnerability that caused Internet Explorer to launch Firefox and execute a malicious payload. In that case, Microsoft ultimately blinked and updated IE accordingly.
It probably makes sense for Microsoft to accept responsibility this time around too, because it seems easier to make a single change in the IE code base than to expect an untold number of webmasters to revise their sites. ®
On October 7, Jeff Williams emailed The Reg to say that upon researching the attack further, he no longer believes developers at Twitter or any other website are to blame.
His email reads:
I jumped to a few conclusions based on my own vendetta against XSS and being on the road without researching this properly. But, no excuses - this was my fault and I was uninformed and hasty. Chris' technique here is creative. Parsing an HTML document as a CSS file is a cool idea, and Microsoft's lenient parser allows this attack. Essentially, the browser can't tell the difference between a Twitter page (HTML) and a CSS stylesheet. The result is an attack that can steal data (including a token like in Chris' demo) for some very powerful attacks.... without XSS. Mea culpa.