This could be used to track entropy of encryption key generation(like trucrypt or, the new MEGA site, any site that employs mouse/key binding for entropy.)
While this seems like something that Microsoft should fix as a matter of urgency, I don't believe the problem is as severe as is being portrayed.
In order to get any meaningful information from this attack, you would need to know what application/website the user is currently using (or send them to it), where it's positioned on the screen and the exact layout of the subject. The interface would also have to be either mouse- or meta-key driven, which isn't a common facet for sensitive inputs (passwords, bank transfers, and private messages off the top of my head).
As they mention in the article, if the user is using an onscreen keyboard, then the trace essentially amounts to a keylog. And since on screen keyboard usage would have very distinctive patterns, if you had a large enough dataset, you should be able to extract those logs relatively easily.
I guess it shouldn't be too hard to create an algorithm that maps the movements to potential numbers on a visual type pad. Once you have the numbers, you just need to match them to patterns which could be cc numbers, phone numbers, bank accounts and so on. You just need to collect enough to find some useful data.
Whether it's common or not isn't the issue, it's whether it's done at _all_ by banks and suchlike.
My bank on their online site asks for my account number, a memorable piece of data and a 6 digit passnumber that they generate (and I can't change). The passnumber is entered using pull-down menus for each digit, always ordered 0-9.
So, no, an attacker wouldn't have access to all the information they need, but they'd certainly have access to more than they should, in this case, if they're able to take advantage of this, that is.
And it's not just for general users, some sites do often additional functionality in this field for users with accessibility requirements (large on-screen number pads, etc).
So, yes, I'm sure the % of affected sites is low, but just 1 bank whose online system is comprised by this is 1 bank too many.
Even if mouse position tracking is permitted, it should clearly be limited to the current tab. Cross-tab, and certainly, cross-application is just clearly wrong.
Ignoring the keypresses (to prevent inadvertent credential sharing), and just doing mouseclick heatmaps while anonymizing the IPs involved and sites visited would be interesting (you'd want to keep screen size/browser.version data, for an understanding of what the heatmaps represent).
Would provide lots of info without compromising much details.
Interesting that this has been around for so long. What are the ramifications of leaking mouse/ctrl/alt/shift if they don't have any context about what you are clicking on?
Off the top of my head I know ingdirect had a virtual pinpad. Combine this with a XSS vulnerability Icould easily send you a link to login to your bank website. The link would then load this type of mouse tracking data.
Looking at the holes and crocks of shit we see every damn day related to HTTP, HTML, JavaScript and the whole programming model that surrounds them, it's about time someone just shot it all and started again putting security and privacy first rather than playing whack-a-mole all the time.
Unfortunately I fear this is not possible based on the sheer momentum that this ball of sticky tape and string has.
I think the sheer number of articles that paper HN all the time over browser and protocol vulnerabilities, leaks and problems back up my assertion.
EDIT: just to add, my frustrations are based on having to spend 5 hours porting some JS code so it works properly on all browsers.
If 20 years ago some clairvoyant genius had foreseen what web applications would become, and decided to create a sane and secure alternative, and by some miracle had managed to pull it off without falling into numerous tarpits owing to an unsinkable combination of intelligence, persistence and vision, it still never would have taken off because it would be too complicated to gain traction compared to the simplicity of HTML.
The key thing you need to wrap your head around is that software ecosystems are not designed; they accrete and evolve organically, and no one has any power to change that.
It's an Internet Explorer vulnerability. Shell level IE exploits are one of the reasons Firefox and Chrome have done so well, because they're more secure. Don't paint every browser with the same brush.
Are you suggesting that there is something uniquely vulnerable about web technologies? Problems occur at every level of the stack from the OS on the client up to the server software. The big advantage of that programming model is how different elements can be loosely coupled. You can fix a problem by swapping individual parts of the stack without changing the experience.
This is a tempting option in so many situations, not just software. But it never works because you can never wipe the slate truly clean. The state of the world is dependent on the previous state of the world.
The problem is not the technology, it's human nature. There are a certain number of scumbags out there, who will lie, cheat, spy, eavesdrop, backstab, whatever it takes to get something for themselves. This has been going on since we've existed as a species and I see no reason to expect it to ever stop.
Anything you replace it with will have tons of vulnerabilities as well. Formal verification might help, but that's entirely orthogonal to the programming model.
Sure, it sucks to develop for. But it's not fundamentally impossible to make it secure and private.
Just to point out how ridiculous this is: you can get mouse position information from any event (fired programatically using fireEvent or otherwise). You can even get it from the "onbounce" event on <marquee> elements, for goodness’ sake.
Kind of ironic considering Windows 8 visual/swipe password feature. Which, in general, is quite novel and interesting, albeit not very secure for various other reasons.
This is so low risk, why even bother posting it?
Zero days come out every month or two with far better attack vectors. Criminals are not going to waste their time with this rubbish.
[+] [-] colkassad|13 years ago|reply
Who are these companies?
[+] [-] mtgx|13 years ago|reply
[+] [-] 3825|13 years ago|reply
[+] [-] lini|13 years ago|reply
[+] [-] chris_wot|13 years ago|reply
[+] [-] happslappy|13 years ago|reply
Damn, this is FUBAR!
[+] [-] alexjeffrey|13 years ago|reply
In order to get any meaningful information from this attack, you would need to know what application/website the user is currently using (or send them to it), where it's positioned on the screen and the exact layout of the subject. The interface would also have to be either mouse- or meta-key driven, which isn't a common facet for sensitive inputs (passwords, bank transfers, and private messages off the top of my head).
[+] [-] njr123|13 years ago|reply
[+] [-] ch0wn|13 years ago|reply
[+] [-] davidjgraph|13 years ago|reply
My bank on their online site asks for my account number, a memorable piece of data and a 6 digit passnumber that they generate (and I can't change). The passnumber is entered using pull-down menus for each digit, always ordered 0-9.
So, no, an attacker wouldn't have access to all the information they need, but they'd certainly have access to more than they should, in this case, if they're able to take advantage of this, that is.
And it's not just for general users, some sites do often additional functionality in this field for users with accessibility requirements (large on-screen number pads, etc).
So, yes, I'm sure the % of affected sites is low, but just 1 bank whose online system is comprised by this is 1 bank too many.
Even if mouse position tracking is permitted, it should clearly be limited to the current tab. Cross-tab, and certainly, cross-application is just clearly wrong.
[+] [-] slashdotdash|13 years ago|reply
[+] [-] scotty79|13 years ago|reply
We might learn a lot about how people use computers and UIs with such data.
[+] [-] algorias|13 years ago|reply
[+] [-] r00fus|13 years ago|reply
Would provide lots of info without compromising much details.
[+] [-] benologist|13 years ago|reply
[+] [-] jtchang|13 years ago|reply
Off the top of my head I know ingdirect had a virtual pinpad. Combine this with a XSS vulnerability Icould easily send you a link to login to your bank website. The link would then load this type of mouse tracking data.
[+] [-] DanBC|13 years ago|reply
The pad can be anywhere on the screen, and it can be in a different place each time, but you'd be able to capture repeated patterns of clicks.
[+] [-] bonjourmr|13 years ago|reply
[+] [-] meaty|13 years ago|reply
Unfortunately I fear this is not possible based on the sheer momentum that this ball of sticky tape and string has.
I think the sheer number of articles that paper HN all the time over browser and protocol vulnerabilities, leaks and problems back up my assertion.
EDIT: just to add, my frustrations are based on having to spend 5 hours porting some JS code so it works properly on all browsers.
[+] [-] dasil003|13 years ago|reply
The key thing you need to wrap your head around is that software ecosystems are not designed; they accrete and evolve organically, and no one has any power to change that.
[+] [-] davedx|13 years ago|reply
[+] [-] mattmanser|13 years ago|reply
It's not momentum, the browser is essentially a universal OS, the holes would still be there if you started again from scratch.
[+] [-] 7952|13 years ago|reply
[+] [-] J_Darnley|13 years ago|reply
[+] [-] jl6|13 years ago|reply
[+] [-] ams6110|13 years ago|reply
[+] [-] delano|13 years ago|reply
[+] [-] lucian1900|13 years ago|reply
Sure, it sucks to develop for. But it's not fundamentally impossible to make it secure and private.
[+] [-] Yaggo|13 years ago|reply
Many "browser vulnerabilities" (esp. non-IE) are actually vulnerabilities of Flash, an entirely different [and dying] platform.
[+] [-] Yaggo|13 years ago|reply
Tells nothing more than someone has written shitty code in the beginning.
[+] [-] egeozcan|13 years ago|reply
[+] [-] derleth|13 years ago|reply
I agree fully. So do the people working on Algol-68, PL/I, Multics, the Canon Cat, Plan 9, and, perhaps most relevant to this, Project Xanadu.
(Esperanto probably deserves a mention here, but it's duking it out somewhere with Volapük, Ido, Interlingua, Loglan, and Lojban.)
[+] [-] drivebyacct2|13 years ago|reply
What are you even doing these days that requires "porting JS code"? I haven't had to do that for ages and it was on poorly written JS to begin with.
[+] [-] alpb|13 years ago|reply
Then of course, it is just like Flash, it can track your mouse.
[+] [-] blahpro|13 years ago|reply
Edit: I am one of the authors of the demo code included in the disclosure.
[+] [-] jey|13 years ago|reply
[+] [-] wlesieutre|13 years ago|reply
[+] [-] blahpro|13 years ago|reply
[+] [-] rossc1|13 years ago|reply
It seems far fetched. And if your using a virtual keyboard for security... you'd be using IE? C'mon now.
[+] [-] wahsd|13 years ago|reply
[+] [-] snarfy|13 years ago|reply
[+] [-] navneetpandey|13 years ago|reply
You know why? because I use Chrome.
[+] [-] abdophoto|13 years ago|reply
[+] [-] goggles99|13 years ago|reply