Earlier quoted context omitted.
Developing the UI without using JS wouldn't be harder , it would make the UI less usable . As a user of online banking software, I don't think it worked at all as well "before the modern trend of trying to make everything act like a desktop app", I think it totally sucked. Maybe that's a worthwhile security trade-off, but let's at least talk about the real trade-off.
Every online banking site I've used had a UI that could be entirely recreated without using JS, with literally no perceivable difference to the user. I have never once said "Man, I sure wish I could get to my balance without a new page loading when I clicked the link."
Pixel-perfect timing attacks with HTML5
41–47 of 47 posts
Re: Pixel-perfect timing attacks with HTML5
#42These attacks are getting more and more creative. I begin to think that there is no such thing as perfect security in a world that constantly demands new features.
Don't think about security that way; that kind of logic is misleading. Security is measured in dollars, in the sense of cost imposed on attackers. You're right that there's a constant tension between features and security.
Re: Pixel-perfect timing attacks with HTML5
#43The paper describes how to prevent the sniffing attack: Website owners can protect themselves from the pixel reading attacks described in this paper by disallowing framing of their sites. This can be done by setting the following HTTP header: X-Frame-Options: Deny This header is primarily intended to prevent clickjacking attacks, but it is effective at mitigating any attack technique that involves a malicious site lo…
if(top!=self) doNotFetchSensitiveInfoFromServer(true);Re: Pixel-perfect timing attacks with HTML5
#44Earlier quoted context omitted.
Would X-Frame-Options:DENY work to mitigate the view-source: attack?
Just threw together a test case. X-Frame-Options does seem to mitigate the view-source attack: http://jsfiddle.net/GEynT/2/embedded/result/
Re: Pixel-perfect timing attacks with HTML5
#45These attacks are getting more and more creative. I begin to think that there is no such thing as perfect security in a world that constantly demands new features.
There is no such thing as perfect security.
Re: Pixel-perfect timing attacks with HTML5
#46I was thinking, of course it doesn't help much in mitigating this attack, but they calculate average rendering times over several repeats of the same operation. When profiling performance timings, it's usually much more accurate to take the minimum execution time. The constant timing that you want to measure is part of the low-bound on the total time, any random OS process/timing glitch is going to add to that total time, but it will not somehow make the timespan you are interested in randomly run faster. There might be some exceptions to this, though (in which case I'd go for a truncated median or percentile range average or something).
Also had some ideas to improve performance on the pixel-stealing, as well as the OCR-style character reading. With the latter one could use Bayesian probabilities instead of a strict decision tree, that way it'll be more resilient to accidental timing errors so you don't need to repeat as often to ensure that every pixel is correct, just keep reading out high-entropy pixels and adjust the probabilities until there is sufficient "belief" in a particular outcome.
But as I understand from the concluding paragraphs of this paper, these vulnerabilities are already patched or very much on the way to being patched, otherwise I'd love to have a play with this :) :)
Re: Pixel-perfect timing attacks with HTML5
#47Earlier quoted context omitted.
Ah! The opinion of someone who cares nothing about the functionality of the web as a whole. JavaScript shouldn't be considered essential to use a website. If it is, the site has failed as it's job.
Not if you want to give the user decent affordances in the UI on non-HTML5 browsers.