Dark Reading is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them.Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Attacks/Breaches

9/21/2010
03:31 PM
Connect Directly
Google+
Twitter
RSS
E-Mail
50%
50%

Twitter Attack An XSS Wake-Up Call

Attackers targeted once-patched cross-site scripting flaw on Twitter's website that had re-emerged after a site update

The high-profile attack that hit the Twitter website early this morning and affected tens to hundreds of thousands of Twitter users serves as a reminder of just how the pervasive but often-dismissed cross-site scripting (XSS) vulnerability could potentially be exploited to do more serious damage.

Twitter late this morning quickly fixed the XSS flaw hackers used to wage an attack that blended both XSS and cross-site request forgery (CSRF), and the attack appeared to have little to no lasting damage. But security experts say it represents a wake-up call that the XSS bug, which typically litters many websites and is often considered relatively benign by website operators and developers, is a real problem that should be taken more seriously. It's not uncommon to find 100 XSS bugs in just one application, they say.

The XSS bug that plagued Twitter's website today had actually been patched by the social networking firm last month, but reappeared after a recent update to the site (but not the current new Twitter platform rollout), according to a Twitter blog post today.

"From a Web app security industry perspective, it's another kind of barometer showing these kinds of attacks are real and can happen," says Ryan Barnett, a senior security researcher with Trustwave's SpiderLabs. "The outcome of this was minimal. There was no permanent damage. But this is showing a proof-of-concept that the bad guys are tinkering and able do this stuff. If they are choosing to do something more destructive, it's going to be a big deal."

Beth Jones, senior threat researcher for SophosLabs North America, says this is one of the first times a major site has been hit with a big XSS attack. "We see cross-site scripting bugs all the time, but this is a really big one," Jones says. "It's showing how browser attacks have not died in any way, shape, or form."

The initial attack sent pop-ups and, in some cases, a "rainbow Twitter" post, and then redirected users to Japanese pornographic sites. Among the affected accounts was that of White House press secretary Robert Gibbs.

XSS is one of the most common vulnerabilities in websites; according to recent data from IBM X-Force and HP/TippingPoint, it remains the No. 1 flaw discovered in Web applications. Nearly 35 percent of all vulnerabilities reported in the first half of this year were XSS, according to IBM's data. XSS bugs appear when Web applications don't properly validate user input from URLs or form fields, and attackers then can sneak their own code onto a page the user visits.

The initial XSS attack on Twitter this morning began before 6 a.m. Eastern Time with users submitting JavaScript code as plain text into a tweet that then was executed in victims' browsers.

"Early this morning, a user noticed the security hole and took advantage of it on Twitter.com. First, someone created an account that exploited the issue by turning tweets different colors and causing a pop-up box with text to appear when someone hovered over the link in the Tweet. This is why folks are referring to this an 'onMouseOver' flaw -- the exploit occurred when someone moused over a link," according to Twitter's blog post.

"onMouseOver" is a feature in JavaScript that allows script to run when a user moves its mouse cursor over a link. Then the user would inadvertently tweet a message.

Then other users added code that forced victim accounts to retweet the original tweet without their knowledge, according to Twitter. Twitter says only Twitter.com was affected and not its mobile site. User account information wasn't compromised in the attack, which mostly was used for spamming purposes, according to Twitter.

That second step was a CSRF attack, which is often paired with XSS in a deadly one-two punch, security experts say. The pop-ups were basically a localized browser exploit, which was XSS. "But if the intended payload with Twitter forced end users to request to Twitter to update their status, and it uploads their status ... it propagates and becomes a CSRF," SpiderLabs' Barnett says. "Twitter doesn't know rogue malware is doing it."

Aside from fixing the XSS bug, he says, Twitter should also be checking its CSRF defenses. "Because this is made wormable, that means that Twitter needs to go back and look at its CSRF defense," he says. "How can we make sure if [a user is] posting a status updated that this legitimately came from our [Twitter's] site and that the user intended to do this?"

Barnett says Twitter does have some CSRF mitigation features, namely a CSRF "token." "But unless they can stamp out the underlying XSS [vulnerability], the code people can scrape the CSRF token and take it. They need to address both" XSS and CSRF, he says.

Why are XSS bugs so difficult to avoid in code? Aside from a lack of knowledge about it among many developers, XSS is especially a risk to Web 2.0 applications such as Twitter because they often interface with widgets and other third-parties. It's not easy to accurately track user-supplied data and identify where it's being used securely, SpiderLabs' Barnett says.

Barnett says the resurfaced XSS flaw in the Twitter platform might have been a case of the fixes never getting fully ported to the code repositories. "This is probably a scenario where the security/developers implemented hotfixes/patches to mitigate the issue, however they never fully back-ported the fixes into the code repositories," he says. "When new code was developed and pushed into production, it reopened these vulnerabilities."

It's impossible to write completely clean and bulletproof software, SophosLabs' Jones notes. "Everyone is under time constraints; they have to get code in on deadlines," she says. So security isn't always part of the equation, she says.

Meanwhile, the XSS-CSRF attacks hit at a time when Twitter is migrating its user base to a new platform, a.k.a. "New Twitter." SophosLabs' Jones says she doesn't think the attackers' timing was a coincidence. "They did it deliberately to show that they don't think Twitter is ready ... or to give Twitter a black eye," Jones says.

A Twitter user with the handle "kinugawamasato" claims to have found the XSS bug. He tweeted today that he found the XSS bug, although other hacker members were scrambling to see who got to it first.

Twitter last summer suffered a Koobface worm infection, which led to the temporary suspension of user accounts found spreading the worm.

Have a comment on this story? Please click "Discuss" below. If you'd like to contact Dark Reading's editors directly, send us a message.

Kelly Jackson Higgins is the Executive Editor of Dark Reading. She is an award-winning veteran technology and business journalist with more than two decades of experience in reporting and editing for various publications, including Network Computing, Secure Enterprise ... View Full Bio

 

Recommended Reading:

Comment  | 
Print  | 
More Insights
Comments
Newest First  |  Oldest First  |  Threaded View
COVID-19: Latest Security News & Commentary
Dark Reading Staff 8/3/2020
'BootHole' Vulnerability Exposes Secure Boot Devices to Attack
Kelly Sheridan, Staff Editor, Dark Reading,  7/29/2020
Register for Dark Reading Newsletters
White Papers
Video
Cartoon Contest
Current Issue
Special Report: Computing's New Normal, a Dark Reading Perspective
This special report examines how IT security organizations have adapted to the "new normal" of computing and what the long-term effects will be. Read it and get a unique set of perspectives on issues ranging from new threats & vulnerabilities as a result of remote working to how enterprise security strategy will be affected long term.
Flash Poll
The Threat from the Internetand What Your Organization Can Do About It
The Threat from the Internetand What Your Organization Can Do About It
This report describes some of the latest attacks and threats emanating from the Internet, as well as advice and tips on how your organization can mitigate those threats before they affect your business. Download it today!
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2020-4396
PUBLISHED: 2020-08-04
IBM Jazz Foundation and IBM Engineering products are vulnerable to cross-site scripting. This vulnerability allows users to embed arbitrary JavaScript code in the Web UI thus altering the intended functionality potentially leading to credentials disclosure within a trusted session. IBM X-Force ID: 1...
CVE-2020-4410
PUBLISHED: 2020-08-04
IBM Jazz Foundation and IBM Engineering products could allow an authenticated user to send a specially crafted HTTP GET request to read attachments on the server that they should not have access to. IBM X-Force ID: 179539.
CVE-2020-4459
PUBLISHED: 2020-08-04
IBM Security Verify Access 10.7 contains hard-coded credentials, such as a password or cryptographic key, which it uses for its own inbound authentication, outbound communication to external components, or encryption of internal data. IBM X-Force ID: 181395.
CVE-2020-4525
PUBLISHED: 2020-08-04
IBM Jazz Foundation and IBM Engineering products are vulnerable to cross-site scripting. This vulnerability allows users to embed arbitrary JavaScript code in the Web UI thus altering the intended functionality potentially leading to credentials disclosure within a trusted session. IBM X-Force ID: 1...
CVE-2020-4542
PUBLISHED: 2020-08-04
IBM Jazz Foundation and IBM Engineering products are vulnerable to cross-site scripting. This vulnerability allows users to embed arbitrary JavaScript code in the Web UI thus altering the intended functionality potentially leading to credentials disclosure within a trusted session. IBM X-force ID: 1...