The vulnerability was discovered by Rosario Valotta, an independent Internet security researcher based in Italy. He publicly detailed the attack last week at the Hack In A Box conference in Amsterdam, and earlier this month at Swiss Cyber Storm. As part of those presentations, he also demonstrated a proof-of-concept Facebook application that uses the attack to steal a person's Facebook session cookie by having them complete a jigsaw puzzle.
All versions of Internet Explorer on all versions of Windows are affected by the zero-day vulnerability, and are thus susceptible to cookiejacking. As the name implies, the attack is similar to clickjacking attacks, which trick users into clicking on innocuous-looking graphics or videos, to trigger arbitrary code execution. Cookiejacking takes that type of attack one step further, adding the zero-day vulnerability and some trickery to steal any cookie from a user's PC.
In an email interview, Valotta said he discovered the vulnerability while exploring HTML5 features, including drag and drop. "I figured out that on any browser you are not allowed to access local file system files from a Web page and this is also (quite) true for IE." Except, it turned out, for cookie files. "So I started wondering about building an exploit to 'steal' those cookies ... the only way is to let users give them to you: So I used drag and drop," he said.
As that suggests, cookiejacking is not completely automated; a user must be fooled into interacting with the user interface. But that's exactly how clickjacking attacks can work, and they're far from rare, especially on Facebook.
The underlying, zero-day vulnerability exploited by cookiejacking involves IE security zones, which are meant to restrict how or if different zones--websites, for example, versus files stored on a PC--can interact, all of which is defined as the cross-zone interaction policy. By default, untrusted websites can't access local files on a PC. But Valotta found that by using an iFrame (inline frame), a website could load a cookie file stored locally on a user's PC. "This breaks the cross-zone interaction policy as an Internet page is accessing a local file," he said.
To be successful, however, the attack must incorporate two details. First, it needs to know the victim's Windows username, to find the correct path to where cookies are stored. Accordingly, Valotta incorporated a routine that forces a person's browser to retrieve a file, which reveals their Windows username. Second, an attacker needs to know which Windows operating system their victim is using, as each one stores cookies in different locations. Browsers, however, typically reveal this information via their navigator.userAgent object.
Microsoft, in an emailed statement, acknowledged the vulnerability, but said it doesn't pose a high degree of risk. "Given the level of required user interaction, this issue is not one we consider high risk in the way a remote code execution would possibly be to users," said Microsoft. "In order to possibly be impacted a user must visit a malicious website, be convinced to click and drag items around the page, and the attacker would need to target a cookie from the website that the user was already logged into."
Microsoft also didn't confirm or deny Valotta's assertion that this vulnerability will be addressed via forthcoming patches scheduled to be released in June and August. But even after patches appear, many PCs will continue to be vulnerable, especially since IE6 still accounts for 11.6% of all browsers in use as of April 2011, according to Net Applications.
Furthermore, something more than a simple patch may be required. "Microsoft tried to put on a 'quick' patch on IE9, but they actually failed in solving the problem, as some weeks ago I found a new attack vector that is able to bypass the protection, said Valotta. "That's why I think that the security zones policy in IE needs a major revision."
In this new Tech Center report, we profile five database breaches--and extract the lessons to be learned from each. Plus: A rundown of six technologies to reduce your risk. Download it here (registration required).