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.


03:31 PM
Connect Directly

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

Comment  | 
Print  | 
More Insights
Threaded  |  Newest First  |  Oldest First
How SolarWinds Busted Up Our Assumptions About Code Signing
Dr. Jethro Beekman, Technical Director,  3/3/2021
'ObliqueRAT' Now Hides Behind Images on Compromised Websites
Jai Vijayan, Contributing Writer,  3/2/2021
Attackers Turn Struggling Software Projects Into Trojan Horses
Robert Lemos, Contributing Writer,  2/26/2021
Register for Dark Reading Newsletters
White Papers
Cartoon Contest
Current Issue
2021 Top Enterprise IT Trends
We've identified the key trends that are poised to impact the IT landscape in 2021. Find out why they're important and how they will affect you today!
Flash Poll
How Enterprises are Developing Secure Applications
How Enterprises are Developing Secure Applications
Recent breaches of third-party apps are driving many organizations to think harder about the security of their off-the-shelf software as they continue to move left in secure software development practices.
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
PUBLISHED: 2021-03-08
The package github.com/pires/go-proxyproto before 0.5.0 are vulnerable to Denial of Service (DoS) via the parseVersion1() function. The reader in this package is a default bufio.Reader wrapping a net.Conn. It will read from the connection until it finds a newline. Since no limits are implemented in ...
PUBLISHED: 2021-03-07
An issue was discovered in MantisBT before 2.24.5. It associates a unique cookie string with each user. This string is not reset upon logout (i.e., the user session is still considered valid and active), allowing an attacker who somehow gained access to a user's cookie to login as them.
PUBLISHED: 2021-03-07
This affects all versions of package github.com/nats-io/nats-server/server. Untrusted accounts are able to crash the server using configs that represent a service export/import cycles. Disclaimer from the maintainers: Running a NATS service which is exposed to untrusted users presents a heightened r...
PUBLISHED: 2021-03-07
An issue was discovered in the Linux kernel through 5.11.3. drivers/scsi/scsi_transport_iscsi.c is adversely affected by the ability of an unprivileged user to craft Netlink messages.
PUBLISHED: 2021-03-07
An issue was discovered in the Linux kernel through 5.11.3. Certain iSCSI data structures do not have appropriate length constraints or checks, and can exceed the PAGE_SIZE value. An unprivileged user can send a Netlink message that is associated with iSCSI, and has a length up to the maximum length...